这是我对nlog的配置。我想要实现的是将Quartz日志放在单独的文件中。但是检查日志文件夹我只找到调度程序日志文件。
<targets>
<target xsi:type="File" name="f" fileName="${basedir}/logs/log-${shortdate}.log.json" layout="${json}" />
<target xsi:type="File" name="scheduler" fileName="${basedir}/logs/log-${shortdate}.scheduler.log" layout="${message}" />
<target xsi:type="Console" name="console" layout="${longdate} ${uppercase:${level}} ${message}" />
</targets>
<rules>
<logger name="Quartz*" minlevel="Trace" writeTo="scheduler" final="true"/>
<logger name="*" minlevel="Info" writeTo="console" />
<logger name="*" minlevel="Trace" writeTo="f" />
</rules>
</nlog>
注意:我还尝试了Quartz.*
并更改了订单。但这对我没有帮助。
我是否需要任何其他配置才能使其正常工作?
更新1:对不起误解。使用Common.Logging记录自身正常工作。创建的Quartz的andlogging文件也显示正确的日志。问题是要同时使用它们,因为某些原因石英规则阻止了主要的创建。
<common>
<logging>
<factoryAdapter type="Common.Logging.NLog.NLogLoggerFactoryAdapter, Common.Logging.NLog31">
<arg key="configType" value="FILE" />
<arg key="configFile" value="~/NLog.config" />
</factoryAdapter>
</logging>
这是从开始配置的。当我添加Quartz时,问题就出现了。
答案 0 :(得分:0)
记录本身可以与Common.Logging一起正常工作。的Andlogging文件 创建的石英也显示正确的日志。问题是 他们两个,因为我的原因,因为某种原因,石英法则阻止了 创建主要的。
从您的第一个记录器规则中取出“ final = true”,以便它继续处理其他规则。我知道这很旧,但是可以解决您的问题: