记录云托管的 WCF 服务中捕获的异常的最佳方法是什么?
您可以利用 System.Diagnostics 并记录异常Trace.traceError()
。然后,您可以安排这些跟踪语句定期上传到表存储(也许一分钟一次?),然后您可以使用本地应用程序或在辅助角色中运行的应用程序来检索和分析跟踪语句。
例如:在辅助角色的 OnStart() 中,自定义诊断管理器以将跟踪数据上传到表存储。在此示例中,它每分钟上传到 DiagnosticsConnectionString 中指定的存储帐户(默认情况下,设置为指向开发存储):
var diag = DiagnosticMonitor.GetDefaultInitialConfiguration();
diag.Logs.ScheduledTransferLogLevelFilter = LogLevel.Information;
diag.Logs.ScheduledTransferPeriod = TimeSpan.FromMinutes(1.0);
DiagnosticMonitor.Start("DiagnosticsConnectionString", diag);
然后,每当您在 WCF 服务中遇到异常时,都将其记录下来:
System.Diagnostics.Trace.TraceError("WCF Error caught: ...");
最后,要么编写一些代码来查询诊断数据,要么使用新的内置 Visual Studio 存储资源管理器之类的东西来查看错误并采取措施。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)