java - 如何配置 log4j 以使用 JULAppender 将日志事件发送到 java.util.logging?

标签 java logging log4j java.util.logging

我熟悉 java.util.logging (JUL) 框架,我广泛使用它。最近,我开始使用一个通过 log4j 进行日志记录的库。当我启动应用程序时,我现在会在控制台上打印以下内容:

log4j:WARN No appenders could be found for logger (com.example.thirdparty.Library).
log4j:WARN Please initialize the log4j system properly.

看来 log4j 有一个解决方案:JULAppender这会将使用 log4j 记录的所有内容发送到我使用的日志框架。

我找不到任何示例来说明如何配置 log4j 以使用此附加程序。

最佳答案

配置 log4j 的标准方法是在类路径的根目录中创建 log4j.xml。以下是为 JULAppender 配置的该文件的内容:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
    <appender name="jul" class="org.apache.log4j.JulAppender"> 
        <layout class="org.apache.log4j.PatternLayout"> 
            <param name="ConversionPattern" value="%d %-5p %c - %m%n "/> 
        </layout> 
    </appender> 
    <root> 
        <priority value="all" /> 
        <appender-ref ref="jul" /> 
    </root>  
</log4j:configuration>

关于java - 如何配置 log4j 以使用 JULAppender 将日志事件发送到 java.util.logging?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23839530/

相关文章:

java - 为什么我可以给一个太大的int赋值?Java如何处理它?

java - 行家: (use -source 5 or higher to enable static import declarations)

java - org.slf4j.helpers.SubstituteLogger 无法转换为 ch.qos.logback.classic.Logger

ant - log4j.properties 应该如何使用 ANT 构建工具放入 war 文件中?

java - FFmpeg Javacv - 延迟问题

java - 按需记录数据库 CUD 操作和回滚语句

java - ehcache 和日志记录问题

java - 针对 log4j1 编写的组件在 log4j2 升级后未记录

java - Log4J 转换说明符 "%l"不打印整个堆栈跟踪

java - 从 RecyclerView 中消失的数据