java - 记录器内部和根交互内部的严重性

标签 java logging configuration logback

我有以下记录器配置:

<configuration>

    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>%-4relative [%thread] %-5level %logger{35} - %msg %n</pattern>
        </encoder>
    </appender>


    <!-- third party loggers-->
    <logger name="org.springframework.web">
        <level value="INFO"/>
    </logger>

    <root>
        <priority value="debug"/>
        <appender-ref ref="STDOUT"/>
    </root>

</configuration>

请给我解释一下为什么要写<priority value="debug"/>标签内和 <level value="INFO"/>里面logger标签

这些值如何相互作用?

最佳答案

root 中的值是默认显示的级别。其他 logger 的值中的值是该包中类的覆盖,在本例中为 org.springframework.web。 (此外,这将是 org.springframework.web 中的任何内容,因此您可以将其视为 org.springframework.web.* 如果有帮助的话。)

(Some documentation on logging levels.)

不同的日志级别是

  • 关闭
  • 致命
  • 错误
  • 警告
  • 信息
  • 调试
  • 跟踪
  • ALL(仅当您具有自定义日志记录级别时,才会出现此与跟踪之间的差异。)

OFFALL 不是消息可以达到的级别,它们是记录器可以设置的级别。无论记录器设置为哪个级别,它都会显示每个级别及更低级别的消息。

例如,在您的情况下,您将 root 设置为 DEBUG 并将 org.springframework.web 设置为 INFO.除了 org.springframework.web 包及其子包中的类之外的所有类都将显示除 TRACE 之外的所有内容,但其中的类将显示除 TRACE< 之外的所有内容DEBUG

关于java - 记录器内部和根交互内部的严重性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30216881/

相关文章:

java - 保存上传图像的最佳实践

mysql - 存储和分析日志数据库选择

java - 如何关闭(禁用)jdk.event.security 日志?

logging - ffmpeg 设置报告日志文件名

java - Tomcat 不排除在 tomcat.util.scan.StandardJarScanFilter.jarsToSkip 中指定的 JAR

java - 在 JSF 中,拥有 ui :repeater inside a h:dataTable 是否有效

java - Eclipse Java 自动完成当前类方法

java - Apache 弗林克 : Standalone Cluster tries to connect with username "flink"

configuration - Nginx 中 $host 和 $http_host 有什么区别

c# - ConfigurationManager.AppSettings 性能问题