繁体   English   中英

实时环境中的System.Diagnostics.Trace

[英]System.Diagnostics.Trace on a live environment

已经向我报告了有关实时站点性能的问题。 我似乎无法在任何开发人员或暂存环境上复制任何这些问题,而且我针对开发人员运行的探查器并未发现任何异常。

这导致我转向诊断跟踪以获取简单的时序跟踪,因此我至少可以尝试找出原因并尝试缩小范围。

我很高兴添加

System.Diagnostics.Trace.WriteLine("....");

在需要的地方添加一个侦听器(通过web.config条目)以写出到日志文件,但这是否会对实时环境本身的性能产生重大影响?

我还有什么需要考虑的因素,可能在什么时候让它在周末运行? 即最好在关闭和打开一个新文件之前指定日志文件要多大?

这取决于您要记录多少数据,因此请打开记录器并检查您的应用程序是否正常运行。 另外,如果登录到日志文件会使您的应用程序变慢,请考虑使用速度更快的TraceListener(例如EventLogTraceListener)(您可以为此目的创建专用的事件日志,并以最大的大小滚动日志)。 如果记录到文件不是问题,请获取EssentialDiagnostics RollingFileTraceListener 它具有许多选项,包括设置最大文件大小和卷动文件数。

使用类似log4NET的日志记录框架,并使记录如下:

LogManager.GetCurrentClassLogger().Debug("...");

以后在配置中禁用日志记录时,框架不会执行这些功能。

如果需要对消息进行字符串格式化:使用“ DebugFormat()”,如果所需的日志记录级别不需要格式化,则将不进行格式化。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM