【问题标题】:Which configuration file(s) is Logback using?Logback 使用哪个配置文件?
【发布时间】:2016-11-25 13:38:12
【问题描述】:

是否有一个系统属性可以让 Slf4J 和 Logback 告诉它找到了哪些 logback.xmllogback-test.xml 文件以及它正在使用哪个文件?我希望在日志本身或System.out 中看到这一点。

例如,我有一个 Java 项目,它显然没有 src/main/resources/logback.xml 也没有 src/test/resources/logback-test.xml 文件,但当我运行单元测试时,Logback 似乎确实找到了一个。我确实有多达 100 个依赖项(理论上不应该包括 logback.xml),并且一一检查它们是不切实际的。

请注意,我不能在我的配置文件中使用<configuration debug="true">,因为我不知道我的配置文件从哪里开始。不过我想要同样的效果。

【问题讨论】:

标签: logback slf4j


【解决方案1】:

使用 -Dlogback.debug=true,正如 Tony 在 cmets 中所说的那样。 然后就出现了:

15:14:22,155 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback.groovy]
15:14:22,156 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Found resource [logback-test.xml] at [file:/.../target/test-classes/logback-test.xml]
15:14:22,333 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - About to instantiate appender of type [ch.qos.logback.core.ConsoleAppender]
15:14:22,338 |-INFO in ch.qos.logback.core.joran.action.AppenderAction - Naming appender as [consoleAppender]
15:14:22,354 |-INFO in ch.qos.logback.core.joran.action.NestedComplexPropertyIA - Assuming default type [ch.qos.logback.classic.encoder.PatternLayoutEncoder] for [encoder] property
15:14:22,378 |-INFO in ch.qos.logback.classic.joran.action.LoggerAction - Setting level of logger [org.optaplanner] to INFO
15:14:22,379 |-INFO in ch.qos.logback.classic.joran.action.RootLoggerAction - Setting level of ROOT logger to WARN
15:14:22,379 |-INFO in ch.qos.logback.core.joran.action.AppenderRefAction - Attaching appender named [consoleAppender] to Logger[ROOT]
15:14:22,379 |-INFO in ch.qos.logback.classic.joran.action.ConfigurationAction - End of configuration.
15:14:22,380 |-INFO in ch.qos.logback.classic.joran.JoranConfigurator@1e965684 - Registering current configuration as safe fallback point

这一行的具体意义在于:

... - Found resource [logback-test.xml] at [file:/.../target/test-classes/logback-test.xml]

如果什么也没显示,它要么使用默认的日志记录配置(一切调试),要么没有识别系统属性。祝你好运找出它是哪种情况 (vote for this jira)。

【讨论】:

  • Slf4j 不支持 -Dslf4j.debug 尚未确定使用哪种日志记录实现。 Vote for this jira.
猜你喜欢
  • 2016-06-09
  • 1970-01-01
  • 2023-03-30
  • 1970-01-01
  • 2018-02-09
  • 1970-01-01
  • 2014-06-26
  • 2021-05-19
相关资源
最近更新 更多