我的NLog.config中有7个不同的规则:
<logger name="*" minlevel="Info" writeTo="logfile" />
<logger name="Access" minlevel="Info" writeTo="AccessLog" />
<logger name="Authentication" minlevel="Info" writeTo="AuthenticationLog" />
<logger name="Foundation" minlevel="Info" writeTo="FoundationLog" />
<logger name="Server" minlevel="Info" writeTo="ServerLog" />
<logger name="WorkflowEngine" minlevel="Info" writeTo="WorkflowEngineLog" />
<logger name="Plugins" minlevel="Info" writeTo="PluginsLog" />
我希望写入logfile的日志条目具有包含loggername的前缀,但我不希望其他日志文件包含前缀,因为它们只包含来自一个特定记录器的日志条目。可以吗?
答案 0 :(得分:1)
您可以使用${logger}
renderer在logfile
布局中输出当前记录器名称。
所以你需要这样的东西:
<targets>
<target xsi:type="File" name="logfile" fileName="logfile.log"
layout="${longdate} ${logger} ${level} ${message}" />
</targets>
<rules>
<logger name="*" minlevel="Info" writeTo="logfile" />
</rules>