NLog logException parece ignorar la excepción
LogException
o cualquiera de las funciones derivadas como ErrorException
etc. parece ignorar totalmente el parámetro de excepción pasado.
¿Me falta un atributo de formato en mi archivo nlog.config
?
Estoy usando el boilerplate de la plantilla que instala Nlog en VS.
Esperaría que la información del objeto exception Y las excepciones internas se agregaran al archivo de registro. Sin embargo, la única información añadida al archivo de registro es el parámetro string pasado a la función.
Resulta que ErrorException()
es en realidad menos útil que Error()
¿Cómo puedo obtener informes más detallados? ¿Particularmente un volcado recursivo completo de la propiedad Message
de todo Exceptions
interior?
2 answers
Agregue o reemplace la etiqueta ${exception}
en la configuración de diseño a ${exception:format=tostring}
<targets>
<target name="errorLogFile" xsi:type="File" fileName="errors.txt"
layout="${message} ${exception:format=tostring}"/>
</targets>
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-09-28 07:51:48
Basándose en la respuesta de @Niki, esto le dará bastante cerca de lo que log4net hará
fileName="${basedir}/logs/${shortdate}.log" layout="${longdate}|${level:uppercase=true}|${logger}|${message}${onexception:inner=${newline}${exception:format=tostring}}"
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-11-11 01:04:09