Стандартные и настраиваемые цели NLog выдают недопустимое сообщение типа xsi

#nlog

#nlog

Вопрос:

В файле NLog.config мне пришлось добавить новое правило для регистрации ошибок в журнале событий.

Уже была строка, указывающая цель ошибки:

 <logger name="*" minlevel="Error" writeTo="AzureTableStorage" />
  

Поэтому я просто добавил eventlog в параметр writeTo.

 <logger name="*" minlevel="Error" writeTo="AzureTableStorage,eventlog" />
  

И вот журнал событий

 <target xsi:type="EventLog"
    name="eventlog"
    source="MyApp"
    layout="${message}${newline}${exception:format=ToString}"/>
  

Однако некоторые другие цели (AzureTableStorage, trace, loggly) имеют синее подчеркивание, а во всплывающей подсказке указано

 This is an invalid xsi:type http://www.nlog-project.org/schemas/NLog.trace
  

В другом проекте у тех же целей нет этой ошибки.

Что мне нужно сделать, чтобы устранить эту ошибку?

Ответ №1:

Это ошибка из XSD, которую следует рассматривать как предупреждение. XSD генерируется со всеми возможными целями (в основном пакете NLog) и, следовательно, не имеет пользовательских целей.

Такого рода ошибки могут быть проигнорированы, и NLog не перестанет работать, если конфигурация XML содержит такого рода «ошибки».