Журналы NLog Ошибка дважды в том же файле

Я пытаюсь понять, почему NLog дважды регистрирует мою ошибку.

вот мой файл конфигурации:

<nlog xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <targets>
    <target name="debug" xsi:type="File" FileName="DebugTestFile.log" layout="${message} ${exception:format=tostring}" />
  </targets>
  <rules>
    <logger name="*" level="Debug" writeTo="debug" />
  </rules>
</nlog>

Теперь, когда я вызываю NLog.Debug(myException); вывод - мое исключение, которое печатается дважды.

Если я вызываю NLog.Debug(myException, "My Test Message String"); то ошибка будет распечатана один раз вместе с моим тестовым сообщением.

Что я делаю неправильно? Согласно https://github.com/NLog/NLog/wiki/How-to-Log-Exceptions, моя конфигурация верна.

Я попытался изменить свой макет на следующее: layout="${message} и когда я запустил NLog.Debug(myException); он только распечатывал ошибку один раз.

Однако теперь, когда я запускал NLog.Debug(myException, "My Test Message String"); он печатал мое сообщение без ошибки, которая исходит из исключения.

Может ли это быть ошибкой с NLog?

2
09 нояб. '15 в 19:44
источник поделиться
2 ответов

Если вы используете NLog в AspNetCore, проблема может быть вызвана вызовом UseNLog вместе с AddNLog или ConfigureNLog.

Вы должны использовать UseNLog вместе с NLog.Web.LogBuilder.ConfigureNLog (Прекратить использование AddNLog):

https://github.com/NLog/NLog.Web/wiki/Getting-started-with-ASP.NET-Core-2#4-update-programcs

3
11 марта '18 в 21:02
источник

Кажется, это из-за правила в файле конфигурации, просто измените writeTo для каждого регистратора, в моем случае я смог решить эту проблему, выполнив следующие шаги:

Пример:

Ранее был создан файл конфигурации:

<rules>
  <logger name="*" minlevel="Info" writeTo="console" />
  <logger name="*" minlevel="Error" writeTo="console" />
</rules>

Исправленный файл конфигурации:

<rules>
  <logger name="*" minlevel="Info" writeTo="console" />
  <logger name="*" minlevel="Error" writeTo="console1" />
</rules>
0
09 апр. '17 в 16:45
источник

Посмотрите другие вопросы по метке или Задайте вопрос