2011-04-06 20 views
31

LogException o cualquiera de las funciones derivadas como ErrorException etc. parecen ignorar totalmente el parámetro excepción aprobada en.Nlog LogException parece ignorar la excepción

Am Me falta un atributo de formato de archivo en mi nlog.config? Estoy usando la plantilla de la plantilla que Nlog instala en VS.

Espero que la información del objeto de excepción Y las excepciones internas se agreguen al archivo de registro. Sin embargo, la única información añadida al archivo de registro es el parámetro de cadena que se pasa a la función.

Resulta que ErrorException() en realidad es menos útil que Error()

¿Cómo puedo obtener más informes en profundidad. ¿Particularmente un volcado recursivo completo de la propiedad Message de todos los internos Exceptions?

Respuesta

40

añadir o sustituir la etiqueta ${exception} en la configuración de diseño para ${exception:format=tostring}

<targets> 
    <target name="errorLogFile" xsi:type="File" fileName="errors.txt" 
      layout="${message} ${exception:format=tostring}"/> 
</targets> 
28

Sobre la base de la respuesta de @ Niki, esto le dará bastante cerca de lo log4net hará

fileName="${basedir}/logs/${shortdate}.log" layout="${longdate}|${level:uppercase=true}|${logger}|${message}${onexception:inner=${newline}${exception:format=tostring}}" 
Cuestiones relacionadas