カスタムのホストされたコントロールの拡張診断ログを構成する

Unified Service Desk では、クライアント アプリケーションの操作上のイベントとエラーをログファイルに記録するように診断ログを構成できます。このログファイルは、後でパフォーマンスの問題やエラーの識別とトラブルシューティングに使用できます。 診断レコードに関する詳細については、「TechNet: Configure client diagnostic logging in Unified Service Desk」を参照してください。

エラーが発生したソース (ホストされたコントロール名、ホストされたコントロールの種類、セッション ID) やスタックトレースに関するエラーの詳細情報など、定義済みのホストされたコントロールの種類に関する診断ログが強化されました。 豊富な診断情報により、Unified Service Desk の問題の迅速な特定とトラブルシューティングが大幅に改善されます。

カスタム コントロール コードの LogException 方法を使用して、カスタム コントロールの定義済みのホストされたコントロールで使用可能な同じ拡張診断ログ機能を活用し、問題が Unified Service Desk のカスタム コードまたは他のコントロールによって引き起こされた場合、例外 (発生した場合) に関する豊富な情報を提供して、識別しやすくすることが可能です。

LogException メソッドはオーバーロードされ、内部で DynamicsLogger を使用して、カスタムコントロールの例外に関する豊富な診断情報を提供します。 このメソッドを使用するには、次の 2 つの署名のいずれかを使用します:

  • 例外オブジェクトとトレースの原因となったイベントの種類を渡します (オプション)。 イベントの種類を指定しない場合、既定では Error トレースイベントの種類が渡されます:

    LogException(Exception ex, TraceEventType eventType = TraceEventType.Error);  
    
  • カスタム エラーメッセージ、トレースの原因となったイベントの種類、および例外オブジェクトの文字列値を渡します。

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

    LogException メソッドの使用による診断情報の例を示します。ここでは、ソースに関する詳細情報 (セッション 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  

関連項目

Unified Service Desk でのクライアント診断ログの構成
Unified Service Desk のホストされたコントロール
ユーザー定義による Unified Service Desk のホストされたコントロールの作成