DocumentDB跟踪监听器
问题描述:
我正在尝试使用现有的监听器注册DocumentDB跟踪。下面的代码片段正确地将一条消息跟踪到了我期望的侦听器,但不是由DocumentDB C#客户端生成的实际跟踪。我错过了什么吗?DocumentDB跟踪监听器
段从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");
}
答
根据你的描述,我已经检查从DocumentDB客户端库DefaultTrace
为.NET如下:
对于客户端使用.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
改变你的预期日志级别(关,错误信息,详细)。
结果
- 控制台应用程序
- Web应用程序
我需要看看什么样的监听器是新的....或者如果你有东西混合,如果你也在App.Config或Web.Config中做同样的事情。这显示ConsoleTraceListener例如system.diagnostics – MatthewMartin
对不起,链接没有粘贴 - https://msdn.microsoft.com/en-us/library/system.diagnostics.consoletracelistener(v=vs.110).aspx – MatthewMartin
有你解决了这个问题,你需要进一步的支持吗? –