配置增强的自定义托管控件的诊断日志记录

 

Unified Service Desk 让您可以配置诊断日志记录来将客户端应用程序中的操作事件和错误记录到日志文件中,这以后可以用来发现和解决性能问题或错误。 有关诊断日志记录的详细信息,请参阅 TechNet:在 Unified Service Desk 中配置客户端诊断日志记录

利用 Unified Service Desk 2.2.1 版,预定义托管控件类型的诊断日志记录已增强,可以提供丰富的异常或错误信息,如错误发生的来源(托管控件名称、托管控件类型,会话和 ID)和有关错误以及堆栈跟踪的详细信息。 丰富的诊断信息可以明显改进在 Unified Service Desk 中快速发现和解决问题的过程。

您可以通过在自定义控件代码中使用 LogException Method 来为您的自定义控件利用预定义托管控件中提供的相同的增强诊断日志记录功能,来提供丰富的异常(如果发生)信息,以便可以更轻松地发现问题是否由自定义代码还是 Unified Service Desk 中的某些其他控件导致的。

LogException Method 已过载,其内部使用 DynamicsLogger 为您的自定义控件提供丰富的异常诊断信息。 使用以下两个签名之一来使用此方法:

  • 传递导致跟踪的异常对象和事件类型(可选)。 如果不指定事件类型,默认情况下,Error 跟踪事件类型将被传递:

    LogException(Exception ex, TraceEventType eventType = TraceEventType.Error);
    
  • 传递自定义错误消息、导致跟踪的事件类型和异常对象的字符串值:

    LogException(string errorMessage, TraceEventType eventType, Exception ex);
    

以下是使用 LogException Method生成的诊断信息的示例,其中记录了有关来源(会话 ID、托管控件名称和类型)和异常详细信息的详细信息:

Exception raised in :  Session ID : d14893b0-6859-4827-9ddc-949d3fd36854 - Application : DemoControl - USD Component Type : USDHostedControl - Hosting Type : USD Hosted Control - Display Group : MainPanel - 
Exception details: 
Source: DemoControl
Target: Void ThrowAndLogException_Click(System.Object, System.Windows.RoutedEventArgs)
Exception: SampleLogException
StackTrace:   at DemoControl.USDControl.ThrowAndLogException_Click(Object sender, RoutedEventArgs e

另请参阅

TechNet:在 Unified Service Desk 中配置客户端诊断日志记录
统一服务台托管控件
演练:创建 Unified Service Desk 的自定义托管控件

Unified Service Desk 2.0

© 2017 Microsoft。 保留所有权利。 版权