我在NLog 4.3.5上。
我有一个长而复杂的布局字符串,我希望将其保存在<variable />
中,以便在四个layout
属性中使用。不幸的是,如果我使用
layout="${layout_full}"
然后NLog抱怨它找不到布局格式化程序(即使它不是布局格式化程序,它是一个变量);如果我使用
引用变量layout="${var:layout_full}"
然后布局评估为空白字符串。
换句话说,这个:
<variable name="layout-full" value="
${longdate} [${level}] ${logger} ${all-event-properties}${newline}
${message}
${when:when='${exception}'!='':inner=
${newline}${exception}
${newline}${stacktrace}}
" />
<target name="stdout" xsi:type="Console" error="false" layout="a${var:layout-full}b" />
将所有日志条目显示为“ab”。
我还尝试将所有四个目标放入SplitGroup
并将布局应用于群组,但这显然不受支持。
答案 0 :(得分:1)
不确定此处是否属于这种情况,但<variable>
应位于<target>
和 <targets>