NLog LogException, кажется, игнорирует исключение
LogException
или любой из производных функций, таких как ErrorException
и т. д., кажется, полностью игнорирует переданный параметр исключения.
Я пропустил атрибут формата в моем nlog.config
файл? Я использую шаблон из шаблона, который Nlog устанавливает в VS.
Я ожидаю, что информация из объекта исключения И внутренних исключений будет добавлена в файл журнала. И все же единственная информация, добавляемая в файл журнала, - это строковый параметр, передаваемый функции.
Получается что ErrorException()
на самом деле менее полезен, чем Error()
Как я могу получить более подробную отчетность. Особенно полный рекурсивный дамп Message
свойство всего внутреннего Exceptions
?
2 ответа
Добавить или заменить ${exception}
тег в конфигурации макета для ${exception:format=tostring}
<targets>
<target name="errorLogFile" xsi:type="File" fileName="errors.txt"
layout="${message} ${exception:format=tostring}"/>
</targets>
Основываясь на ответе @ Ники, это даст вам довольно близко к тому, что будет делать log4net
fileName="${basedir}/logs/${shortdate}.log" layout="${longdate}|${level:uppercase=true}|${logger}|${message}${onexception:inner=${newline}${exception:format=tostring}}"