gpt4 book ai didi

log4net - Log4net追加器阈值不起作用

转载 作者:行者123 更新时间:2023-12-04 00:29:45 26 4
gpt4 key购买 nike

我在我的应用程序的log4net配置中设置了logfileAppenderconsoleAppender。我希望日志文件附加程序只写ERROR消息及以上,而控制台附加程序写DEBUG及以上。

我的配置是:

<log4net debug="false">

<appender name="LogFileAppender" type="log4net.Appender.FileAppender,log4net" >
<param name="File" value="log.txt" />
<param name="AppendToFile" value="true" />
<layout type="log4net.Layout.PatternLayout,log4net">
<param name="ConversionPattern" value="%d %M - %m%n" />
</layout>
<threshold value="ERROR"/>
</appender>

<appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender" >
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%d %m%n" />
</layout>
</appender>


<root>
<priority value="DEBUG" />
<appender-ref ref="ConsoleAppender" />
<appender-ref ref="LogFileAppender" />
</root>

</log4net>


我发现ERROR和DEBUG都输出到我的日志文件追加器中。如何将其限制为仅ERROR?

最佳答案

还要注意,记录器中的level标记与thresholdLevelMatchFilter的工作方式不同。

Level指示将实际生成的日志语句。您可以在代码中进行测试。

另一方面,Threshold过滤掉所有低于阈值的日志消息。

这意味着具有高于最高记录器级别的阈值是没有意义的。我已经多次看到如何设置INFO级别(因为这是大多数追加程序将使用的级别),然后创建一个具有DEBUG阈值的追加程序。然后,当在附加程序上实际上没有出现DEBUG消息时,您会感到惊讶。

关于log4net - Log4net追加器阈值不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1171258/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com