我工作的应用程序将创建为 jar 文件并通过命令行运行它。不涉及应用程序服务器。当我运行 jar 文件时,来自 logback 的信息会打印在控制台上。如何抑制 logback 包中的所有日志记录
13:46:30,534 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback.groovy]
13:46:30,534 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.xml]
13:46:30,534 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Found resource [logback.xml] at [file:/Users/util/target/classes/logback.xml]
13:46:30,588 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - debug attribute not set
13:46:35,598 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.ConsoleAppender]
13:46:35,605 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [stdout]
13:46:35,621 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
13:46:35,629 |-WARN in ch.qos.logback.classic.encoder.PatternLayoutEncoder@326de728 - [outputPatternAsPresentationHeader] property is deprecated. Please use [outputPatternAsHeader] option instead.
13:46:35,661 |-INFO in ch.qos.logback.classic.joran.action.LoggerAction - Setting additivity of logger [org.springframework] to false
13:46:35,661 |-INFO in ch.qos.logback.classic.joran.action.LevelAction - org.springframework level set to ERROR
13:46:35,661 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [stdout] to Logger[org.springframework]
13:46:35,661 |-INFO in ch.qos.logback.classic.joran.action.LoggerAction - Setting level of logger [ch.qos.logback] to OFF
13:46:35,661 |-INFO in ch.qos.logback.classic.joran.action.LoggerAction - Setting additivity of logger [ch.qos.logback] to false
13:46:35,665 |-ERROR in ch.qos.logback.core.joran.spi.Interpreter@24:27 - no applicable action for [priority], current ElementPath is [[configuration][root][priority]]
13:46:35,666 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [stdout] to Logger[ROOT]
13:46:35,666 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - End of configuration.
13:46:35,666 |-INFO in ch.qos.logback.classic.joran.JoranConfigurator@25618e91 - Registering current configuration as safe fallback point
Run Code Online (Sandbox Code Playgroud)
日志记录文件
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<appender name="stdout" class="ch.qos.logback.core.ConsoleAppender" >
<encoder>
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
<logger name="org.springframework" additivity="false">
<level value="error"/>
<appender-ref ref="stdout"/>
</logger>
<logger name="ch.qos.logback" level="OFF" additivity="false" />
<root>
<priority value="warn"/>
<appender-ref ref="stdout"/>
</root>
</configuration>
Run Code Online (Sandbox Code Playgroud)
尝试了所有选项以及线程中的讨论抑制所有 Logback 输出到控制台?。
没有任何帮助我,任何指示都会有帮助。我使用的是 logback 版本 1.0.13 和 slf4j 1.7.5
首先,方法正确。
WARN/ERROR问题。这是相关的logback 文档。如果init 期间出现任何问题ERROR或级别问题,则 logback 初始化期间收集的状态消息将打印到控制台。WARN因此,摆脱控制台输出的一个好方法是修复您收到的ERROR和消息。WARN
您可以查看StaticLoggerBinder的源代码。
if(!StatusUtil.contextHasStatusListener(defaultLoggerContext)) {
StatusPrinter.printInCaseOfErrorsOrWarnings(defaultLoggerContext);
}
Run Code Online (Sandbox Code Playgroud)
它不会通过您注册的记录器,因为这些是在 logback 初始化之前生成的状态消息。这是第 22 条军规,您需要正确配置的 logback 上下文来记录有关启动失败的错误消息。
您可以更改对这些控制台消息的处理方式,但这可能是您了解日志记录不起作用的唯一原因。
配置中需要解决的一件事是将根更改为
<root level="WARN">
<appender-ref ref="stdout"/>
</root>
Run Code Online (Sandbox Code Playgroud)
有一条错误消息告诉您优先级不是有效元素
13:46:35,665 |-ERROR in ch.qos.logback.core.joran.spi.Interpreter@24:27 - no applicable action for [priority], current ElementPath is [[configuration][root][priority]]
Run Code Online (Sandbox Code Playgroud)
statusListener在 logback.xml 中设置
<configuration>
<statusListener class="ch.qos.logback.core.status.OnConsoleStatusListener" />
</configuration>
Run Code Online (Sandbox Code Playgroud)
logback提供的选项有:
| 归档时间: |
|
| 查看次数: |
3932 次 |
| 最近记录: |