2011-11-11 8 views
5

Tengo dificultades para generar los mensajes escritos a través de Trace.WriteLine en Global.asax, no aparecen en Trace.axd.Uso de Trace dentro de Global.asax

¡Tengo una WebPageTraceListener y una TextWriterTraceListener como se documenta here pero todo lo que veo son los eventos de página normales que se podrían ver en una traza que se espera.

¿Se está perdiendo un paso para que los mensajes de rastreo escritos en Global.asax estén en el archivo/registro de seguimiento? Estoy haciendo algo de registro en el evento Application_AuthenticateRequest.

Respuesta

5

¿Ha compilado utilizando el modificador TRACE o ha actualizado su web.config para hacerlo automáticamente?

Desde la página de MSDN se ha vinculado a (el énfasis es mío):

Aunque ASP.NET muestra los mensajes de seguimiento cada vez que el rastreo está habilitado para una página, System.Diagnostics los mensajes de seguimiento se escriben sólo cuando el el código en el que residen los mensajes de seguimiento se compila utilizando un interruptor de compilador explícito: el interruptor TRACE. En otras palabras, si lo hace no compila explícitamente el AuthorClass utilizando el interruptor TRACE, no verá los mensajes de seguimiento, incluso con el WebPageTraceListener agregado.

Puede configurar su aplicación para que se compile automáticamente con el interruptor TRACE , agregando una nueva sección a su archivo Web.config.

Esta es la entrada Web.config que debe ser colocado después de la sección <system.diagnostics>:

<system.codedom> 
    <compilers> 
    <compiler language="c#;cs;csharp" 
       extension=".cs" 
       compilerOptions="/d:TRACE" 
       type="Microsoft.CSharp.CSharpCodeProvider, System, Version=2.0.3500.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" warningLevel="1" /> 
    <compiler language="VB" 
       extension=".vb" 
       compilerOptions="/d:Trace=true" 
       type="Microsoft.VisualBasic.VBCodeProvider, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> 
    </compilers> 
</system.codedom> 
+0

Hice los cambios mencionados anteriormente a mi archivo web.config. Sin embargo, trace.axd aún no muestra la información de rastreo que agregué en mi evento global.asax.cs => Application_Start. –