2017-04-26 10 views
1

DocumentDBトレースを既存のリスナーで登録しようとしています。以下のコードスニペットは、期待どおりのリスナーへの単一メッセージを正しくトレースしますが、DocumentDB C#クライアントによって生成された実際のトレースはトレースされません。何か不足していますか?クライアント側の場合DocumentDBトレースリスナー

enter image description here

:Global.asaxのから

スニペット:次のように

private static TraceSource DocDBSource; 
private static TraceListener ExistingListener = new .....; 

public void RegisterDocDBListener() { 
    DocDBSource = new TraceSource("DocDBTrace"); 
    DocDBSource.Switch.Level = SourceLevels.Information; 
    DocDBSource.Listeners.Add(ExistingListener); 
    DocDBSource.TraceInformation("DocDB tracing initialized"); 
} 
+0

私はどのような種類のリスナーが新しいのかを知る必要があります。また、App.ConfigやWeb.Configでも同じことをしている場合は、混在している場合があります。これはConsoleTraceListener(例:system.diagnostics)を示します – MatthewMartin

+0

申し訳ありませんが、リンクは貼り付けられませんでした。https://msdn.microsoft.com/en-us/library/system.diagnostics.consoletracelistener(v=vs.110).aspx – MatthewMartin

+0

あなたはこの問題を解決しました。さらなるサポートが必要ですか? –

答えて

0

はあなたの説明によると、私は.NET用DocumentDBクライアントライブラリからDefaultTraceをチェックしています.NET DocumentDBクライアントライブラリを使用してログを記録する場合は、次のようにsystem.diagnosticsの設定を構成して、documentdbログメッセージを収集してテキストファイルに保存することができます。

<system.diagnostics> 
    <sources> 
    <source name="DocDBTrace"> 
     <listeners> 
     <!--ConsoleTraceListener--> 
     <add name="configConsoleListener" type="System.Diagnostics.ConsoleTraceListener"/> 
     <!--TextWriterTraceListener--> 
     <add name="myListener" 
     type="System.Diagnostics.TextWriterTraceListener" 
     initializeData="TextWriterOutput.log" /> 
     </listeners> 
    </source> 
    </sources> 
    <switches> 
    <add name="ClientSwitch" value="Warning"/> 
    </switches> 
</system.diagnostics> 

注:デフォルトログレベルが情報である、あなたはあなたの期待されるログレベル(オフ、エラー、情報、冗長)にClientSwitchを変更することができます。

結果

  • コンソールアプリケーション

enter image description here

  • Webアプリケーション

enter image description here