当前位置: 首页 > 面试题库 >

如何确定实际使用的日志配置源Logback?

寇靖
2023-03-14
问题内容

log4j具有属性,log4j.debug可以帮助用户指示实际使用哪个配置文件来配置日志记录系统。

我还没有找到与(否则更高级的)Logback日志记录框架等效的东西。有什么方法可以在运行时打印(用于诊断目的)Logback用来引导自身的配置文件?

[编辑]澄清一下,理想情况下,我想要一个不需要我修改配置文件本身的解决方案(例如,由于组装错误的第三方JAR可能会被错误地提取,并且在我的注销配置之前)
XML)。


问题答案:

您可以设置Java系统属性以输出Logback调试信息:

java -Dlogback.statusListenerClass=ch.qos.logback.core.status.OnConsoleStatusListener

用于自动状态打印的Logback文档(最下面提到强制输出状态)和logback.statusListenerClass属性进一步解释了这一点:

在没有状态消息的情况下,很难追踪到流氓logback.xml配置文件,尤其是在生产中,其中应用程序源不容易被修改。为了帮助识别恶意配置文件的位置,可以通过“
logback.statusListenerClass”系统属性(定义如下)来设置StatusListener,以强制输出状态消息。系统属性“
logback.statusListenerClass”也可以用于使出现错误时自动生成的输出静音。



 类似资料:
  • 在像这样的典型Spring Boot应用程序中,我们如何配置它来使用“自定义”日志配置? 例如,在我的应用程序运行的当前环境中,日志正在导致错误,我如何使用其他日志例如:

  • 我们正在使用PDFBox从Java桌面应用程序打印一些PDF,并且PDF包含太多空格(不幸的是,修复PDF生成器不是一个选项)。 我的问题是确定页面上的实际内容在哪里,因为裁剪/媒体/修剪/艺术/出血框是无用的。有没有比将页面呈现为图像并检查哪些像素保持白色更好/更快的简单有效的方法?

  • (无论我的手机日历如何,应用程序都应该显示该国东部时间的确切日期。) 你不明白吗?然后留下你的问题作为评论,请帮助。

  • 我最近切换到ApacheLog4J2,仍然找不到使用log4j2配置hibernate日志的方法。xml。 因为我找不到解决这个问题的方法,我仍然使用log4j.properties文件显式Hibernate。这不是最好的解决方案,因为我的log4j2.xml使用JPA appender(将日志写入数据库)。我不想为Hibernate编写单独的逻辑。 有没有办法使用log4j2配置Hibernat

  • 使用java.util.Logging时,可以在logging.properties文件中配置特定类的日志级别(即具有类名称的子记录器),如下所示: 我使用类名在MyClass中创建子记录器,如下所示: 在Google Web Toolkit gwt.xml文件中有类似的配置方法吗?

  • 是否有可能在Logback中确定将日志消息发送到附加器的实际日志记录程序?示例: 但是不会返回不同的实例。背景:我有一个appender将日志消息发送到WebSocket。这个appender应该能够“订阅”不同的记录器(基本上像XML中的记录器)。该网页将在不同的选项卡(“通道”)中显示日志消息。