在Grails中更改appender的阈值

时间:2014-11-15 20:55:57

标签: grails logging configuration

在Grails中,日志记录在Config.groovy文件中设置。可以通过外部属性文件(由grails.config.locations定义)覆盖这些属性。

我的问题是:如何通过属性文件更改特定appender的阈值?这是什么属性名称?

我尝试过各种变体:

log4j.appenders.rollingApplicationAppender.threshold=org.apache.log4j.Level.DEBUG

但这并没有成功。

1 个答案:

答案 0 :(得分:1)

您似乎对log4j和日志记录存在根本性的误解。你不能做什么,我会解释原因。

记录基于两个概念。 LoggersAppenders。记录器,接收消息,检查这些消息并根据其配置确定是否应将消息发送到appender。 Thresholdlogger的属性。因此,当消息到达时,它首先由logger评估,然后发送到appenderappender反过来了解如何将消息写入适当的输出,并且不了解threshold

希望这有助于您进一步了解日志记录的工作原理,并引导您完成日常工作。

<强>更新

正如评论appenders中所指出的那样,在threshold标识为有效的消息后,还可以应用自己的logger。这使他们能够丢弃消息(常见的用途是在生产中丢弃TRACE用于控制台输出)。考虑到这一点,你在问题中的例子就是这样做。设置threshold的{​​{1}},但您没有看到appender的任何输出,因为您的appender首先过滤了这些消息。