TextWriterTraceListener trace file too large
I am using C# System.Diagnostics.TextWriterTraceListener
to print trace. But the trace file becomes too large (hundreds of MBs).
I want to change the behavior of TextWriterTraceListener
, that if the trace file becomes large, it writes output to another file.
For example, the original trace file is 'output1.txt', if it becomes larger than 100MB, then TextWriterTraceListener should write to 'output2.txt'.
Have you encountereds similar problems? Are there any elegant solutions?
Two options I can think of:
- Write your own
TextWriter
implementation that does this, and set theTextWriterTraceListener.Writer
property to an instance of it. Here's a sample implementation that does this, although it rolls over on a time (daily) basis rather than on a file-size basis. - Switch to log4net and use a
RollingFileAppender
.
精彩评论