Добавление EventLog в качестве цели в NLog для приложения .NET Core приводит к ошибке разбора конфигурации - PullRequest
0 голосов
/ 03 октября 2018

У меня есть приложение .NET Core Console, где я использую NLog.Когда я пытаюсь добавить EventLog в качестве цели в nlog.config, загрузка конфигурации завершается следующим образом:

System.ArgumentException: Цель не может быть найдена: 'EventLog'.

Я нашел похожий вопрос в stackoverflow: NLog не пишет в журнал событий .NET Core 2.1 .И предлагаемое решение заключается в добавлении Nuget-пакета NLog.WindowsEventLog, который у меня есть.И версия, которую я скачал, 4.5.10, поэтому в ней не должно быть ошибки в версии 4.5.7, упомянутой в другом посте stackoverflow.И это все еще не работает.

Вот некоторая информация:

  • BCL: .NETCore.App (2.1.2)
  • Зависимости от NLog:
    • NLog (4.5.10)
    • NLog.Extensions.Logging (1.3.0)
    • NLog.WindowsEventLog (4.5.10)

А вот файл nlog.config:

<?xml version="1.0" encoding="utf-8" ?>
<!-- XSD manual extracted from package NLog.Schema: 
https://www.nuget.org/packages/NLog.Schema-->
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      autoReload="true"
      internalLogFile="logs\internal-log.log"
      internalLogLevel="Trace" >

     <!-- the targets to write to -->
      <targets>
          <target xsi:type="EventLog" name="eventlog" source="testlogging" 
log="Application" layout="${message}" />
      </targets>

  <!-- rules to map from logger name to target -->
  <rules>
    <logger name="*" minlevel="Trace" writeTo="eventlog" />
  </rules>
</nlog>

Я что-то пропустил?

1 Ответ

0 голосов
/ 03 октября 2018

добавить в вашу конфигурацию, после <nlog ...>

<extensions>
   <add assembly="NLog.WindowsEventLog"/>
</extensions>

, если это не сработает, проверьте внутренний журнал: https://github.com/NLog/NLog/wiki/Internal-logging

...