如何在Spring MVC中为root logger设置优先级?

时间:2013-08-21 14:34:47

标签: java spring-mvc log4j

我对log4j完全不熟悉。我已经看到有两个标签和标签,它们指的是各种appender。 如其中一个链接所示  why do we need root and logger in log4j.xml “唯一的例外是根记录器,它记录了应用程序中所有类的消息。”我正在使用它(根记录器)。

就我而言,我必须将所有具有级别错误的异常记录到我的外部文件中。所以我用过

<!-- Root Logger -->
<root>
    <priority value="error" />
    <appender-ref ref="console" />
    <appender-ref ref="FILE" />
</root>

但在我的日志文件中,我仍然可以看到信息记录器消息。 我只需要记录错误消息,所以请告诉我解决方案可能是什么, 如果我错了,我可以纠正它。

1 个答案:

答案 0 :(得分:1)

这是来自log4j手册:

  

如果给定的记录器没有分配级别,那么它将继承一个级别   它最近的祖先与指定的水平。更正式地说:

     

级别继承给定记录器C的继承级别相等   到记录器层次结构中的第一个非空级别,从C和开始   在层次结构中朝向根记录器向上进行。

基本上,这意味着根记录器级别仅用于没有其他指定记录器级别的情况。

例如,您的xml文件中可能有其他记录器,例如Application Loggers和第三方记录器。这些将覆盖使用它们的任何类的根记录器级别(例如您的应用程序和spring框架)。如果您将所有记录器设置为错误,那么您应该看到错误。