Перейти к содержанию

Подключение NLog

ℹ️ Рекомендуется включать полное логирование только по необходимости, а после работы выключать его и очищать папку logs

Для включения полного логирования в файле NLog.config (как для MS SQL, так и для PG) необходимо раскомментировать строку:

<logger name="*" minlevel="Trace" writeTo="bufferedFile" />

Если требуется логирование SQL-запросов, раскомментируйте строку:

<logger name="TCDataAccess.Kernel.Domain.ValhallaDataConnection" minlevel="Trace" writeTo="bufferedFile" />

Запись будет осуществляться в папку logs.

Максимальное количество — 10 файлов по 10 Мб. Для увеличения этих значений внесите изменение в секцию:

<target name="bufferedFile" xsi:type="BufferingWrapper" flushTimeout="3000" slidingTimeout="false">
  <target xsi:type="File"
          fileName="${basedir}/logs/${shortdate}/trace.log"
          archiveAboveSize="10000000"
          concurrentWrites="false"
          maxArchiveFiles="10"
          archiveNumbering="Sequence"
          layout="${fileLayout}">
  </target>
</target>

В параметре archiveAboveSize указывается размер файла в байтах, в параметре maxArchiveFiles — количество файлов.

Для площадки на MS SQL

Для площадки на MS SQL используется секция:

<logger name="*" minlevel="Error" writeTo="bufferedDatabase">
  <filters defaultAction="Neutral">
    <when condition="'${gdc:item=useSqlServer}'=='False'" action="Ignore" />
    <when condition="disable-dblog()" action="Ignore" />
    <when condition="is-smart-cancel('${exception:format=Type}')" action="IgnoreFinal" />
    <when condition="is-logic-cancel('${exception:format=Type}')" action="IgnoreFinal" />
  </filters>
</logger>

Для площадки на PG

Для площадки на PG используется секция:

<logger name="*" minlevel="Error" writeTo="bufferedDatabasePG">
  <filters defaultAction="Neutral">
    <when condition="'${gdc:item=usePostgre}'=='False'" action="Ignore" />
    <when condition="disable-dblog()" action="Ignore" />
    <when condition="is-smart-cancel('${exception:format=Type}')" action="IgnoreFinal" />
    <when condition="is-logic-cancel('${exception:format=Type}')" action="IgnoreFinal" />
  </filters>
</logger>

Внутренний лог

В случае возникновения проблем и ошибок в ходе работы с NLog сообщения логируются в файле nlog-internal.log — собственном журнале Nlog, рекомендуется обращаться к нему в первую очередь.

Путь к нему должен быть прописан в атрибуте internalLogFile внутри секции

internalLogFile="c:\temp\nlog-internal.log"