使用跟踪时,在发布模式下不删除生产ASP.NET 应用程序System.Diagnostics
上的“默认”跟踪侦听器是否有显着(可测量的)性能影响,常量在编译时定义但在运行时没有附加调试器?TRACE
澄清一下,问题是关于“默认”跟踪侦听器对使用其他跟踪侦听器的应用程序的额外影响,而不是 System.Diagnostics 跟踪的替代方案。
当没有附加调试器时,是否有任何衡量默认跟踪侦听器影响的措施?是否已经对从代码中省略“删除”元素的生产影响进行了任何基准测试,例如:
<configuration>
<system.diagnostics>
<trace autoflush="false" indentsize="4">
<listeners>
<remove name="Default" />
<add name="myListener" type="System.Diagnostics.TextWriterTraceListener" initializeData="c:\myListener.log" />
</listeners>
</trace>
</system.diagnostics>
</configuration>
这个问题与.NET Tracing 不同:什么是“默认”侦听器?从某种意义上说,其他问题的重点是在 Visual Studio 下运行和更新调试 UI 时默认侦听器的影响,而这个问题的重点是生产环境中的发布代码。