Рассмотрим следующий файл конфигурации в NLog.config
:
<?xml version="1.0" encoding="utf-8"?>
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" autoReload="true">
<!--
See https://github.com/nlog/nlog/wiki/Configuration-file
for information on customizing logging rules and outputs.
-->
<targets async="true">
<target xsi:type="Trace" name="DebugView"
rawWrite="true"
layout="NEX|${pad:padding=-5:inner=${uppercase:${level}}}|${pad:padding=-16:inner=${callsite:className=true:fileName=false:includeSourcePath=false:methodName=false:includeNamespace=false}}|${message}" />
<target xsi:type="File" name="LogFile"
filename="${environment:variable=UserProfile}/logs/TA.Nexdome.Server-${filesystem-normalize:fSNormalize=true:inner=${shortdate}-${windows-identity}-${machinename}.log}"
layout="${time}|${pad:padding=-5:inner=${uppercase:${level}}}|${pad:padding=-16:inner=${callsite:className=true:fileName=false:includeSourcePath=false:methodName=false:includeNamespace=false}}|${message}" />
</targets>
<rules>
<logger name="*" minlevel="Trace" writeTo="DebugView" />
<logger name="*" minlevel="Trace" writeTo="LogFile" />
</rules>
</nlog>
Для цели name="DebugView"
, если я изменю определение макета, чтобы удалить буквальный текст NEX|
с самого начала, тогда я вообще ничего не получу.
Если я поставлю что-нибудь перед ${pad
, даже хотя бы один |
, тогда я получу вывод.
Может ли это быть ошибкой в логике макета?