如何在System.Diagnostics跟踪日志中设置翻转策略

时间:2011-09-25 11:10:13

标签: c# .net logging diagnostics

我有一个项目,使用System.Diagnostics进行日志记录,

它创建了许多新的日志文件,每个文件都以GUID开头,

即使最后一个日志文件很小

我想设置一个控制新日志文件创建的角色

我可以在哪里配置它?

第二个问题: 我在哪里可以设置日志写入非utc时间?

由于

2 个答案:

答案 0 :(得分:5)

有关翻转跟踪侦听器的讨论,请参阅以下链接:

What the best rollover log file tracelistener for .NET

接受的答案建议使用FileLogTraceListener:

http://msdn.microsoft.com/en-us/library/microsoft.visualbasic.logging.filelogtracelistener.aspx

我建议您同时查看Ukadc.Diagnostics,以便为System.Diagnostics跟踪/日志记录添加灵活性(和格式化):

http://ukadcdiagnostics.codeplex.com/

要回答关于登录UTC以外的其他问题的最后一个问题,我认为唯一的答案是编写自己的TraceListener(或使用别人的,例如Ukadc.Diagnostics)。

毋庸置疑,NLog和log4net等日志框架非常受欢迎:它们提供了极其强大和灵活的日志记录解决方案,使您可以专注于应用程序的功能,而不是解决日志记录问题。

答案 1 :(得分:1)

我也遇到过TraceListener标准实现的两个问题(filesize -rollover和非UTC事件的时间戳),我不想要第三方工具。

我发现这个解决方案耗费最少:

http://www.geekzilla.co.uk/View2C5161FE-783B-4AB7-90EF-C249CB291746.htm