【发布时间】:2019-08-07 05:28:48
【问题描述】:
Nlog 为不同的日志级别成功写入日志,但不会在同一文件中为不同的日志级别创建 Root 元素。由于这个 Invalid Xml Format 问题,遇到了。我想我在 Nlog.Config 或某处遗漏了一些东西。请帮我解决这个问题。
这是我在没有根元素的情况下获得的不同日志级别的输出:
<logevent time="2019-08-07 10:44:08.7467" level="DEBUG">
<Message>System.Exception: test debug</Message><Exception>test
debug</Exception>
</logevent>
<logevent time="2019-08-07 10:44:08.8426" level="WARN">
<Message>Serious
error</Message><Exception>Object reference not set to an instance
of an object.</Exception>
</logevent>
<logevent time="2019-08-07 10:45:19.6269" level="WARN">
<Message>Serious error</Message><Exception>Object reference not
set to an instance of an object.</Exception>
</logevent>
<target name="xmlFile" xsi:type="File"
fileName="${basedir}\log\Xmartlog.${shortdate}.xml"
archiveFileName="${basedir}\log\log.${shortdate}.xml"
maxArchiveFiles="4"
archiveAboveSize="10240"
archiveEvery="Day"
encoding="utf-8" >
<layout xsi:type="XmlLayout" includeAllProperties="false">
<attribute name="time" layout="${longdate}" />
<attribute name="level" layout="${level:upperCase=true}"/>
<element name="Message"
value="${message:exceptionSeparator=String}"/>
<element name="Exception" value="${exception:format=message}" />
</layout>
</target>
There should be output like this:
<Log>
----logs should be here----
</Log>
【问题讨论】:
标签: c# xml asp.net-mvc-5 nlog