2010-08-20 17 views
8

Estoy usando C# System.Diagnostics.TextWriterTraceListener para imprimir trazas. Pero el archivo de rastreo se vuelve demasiado grande (cientos de MB). Quiero cambiar el comportamiento de TextWriterTraceListener, que si el archivo de rastreo se vuelve grande, escribe salida en otro archivo. Por ejemplo, el archivo de rastreo original es 'output1.txt', si es mayor que 100MB, entonces TextWriterTraceListener debe escribir en 'output2.txt'.TextWriterTraceListener archivo de rastreo demasiado grande

¿Ha encontrado problemas similares? ¿Hay alguna solución elegante?

Respuesta

5

dos opciones que se me ocurren:

  1. Escriba su propia TextWriter aplicación que hace esto, y establezca la propiedad TextWriterTraceListener.Writer a una instancia del mismo. Aquí hay una implementación de sample que hace esto, aunque se transfiere en una base de tiempo (por día) en lugar de por tamaño de archivo.
  2. Cambie a log4net y utilice RollingFileAppender.
+0

1 - log4net va a resolver este problema y tiene otras características para ofrecer como condicional página de ejemplos de la tala – Tahbaza

+0

ligado en respuesta ya no existe, enlace archivados se https://web.archive.org/web/20040628122447/ http://weblogs.asp.net/DaveBost/archive/2004/04/30/124224.aspx – tjleigh

Cuestiones relacionadas