1.
<targets>
<target name="console" xsi:type="ColoredConsole"
layout="${date:format=HH\:mm\:ss}|${level}|${stacktrace}|${message}"/>
<target name="file" xsi:type="File" fileName="${basedir}/file.txt"
layout="${stacktrace} ${message}"/>
</targets>
<rules>
<logger name="*" minlevel="Debug" writeTo="console"></logger>
</rules>
<target name="console" xsi:type="ColoredConsole"
layout="${date:format=HH\:mm\:ss}|${level}|${stacktrace}|${message}"/>
<target name="file" xsi:type="File" fileName="${basedir}/file.txt"
layout="${stacktrace} ${message}"/>
</targets>
<rules>
<logger name="*" minlevel="Debug" writeTo="console"></logger>
</rules>
Dflying 说Rules是一个路由表,name 就是要生成日志信息的类名,minlevel就是这个类的对象中可以匹配的级别,writeTo就是可输出的目标位置,与targets中的name对应xsi:type为输出目标类型,在后面就是一些格式化的参数了。这样可以通过配制达到多种输出效果,也许也是MVC思想呀,数据与格式分离,太好的思想了。学习了。谢谢Dflying 的介绍