有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java log4j:ConsolePender的转换模式不工作

我有一个log4j属性(log4jv1.2.16)文件,我在其中使用了RollingFileAppenderConsoleAppender
RollingFileAppender的配置如下:

log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=${log.dir}\\mpnlog.log
log4j.appender.R.MaxFileSize=400KB
log4j.appender.R.MaxBackupIndex=10
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%d %-6r[%20.20t] %-5p %45.45c %x - %m%n

ConsoleAppender的配置如下:

log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.target=System.out
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %45.45c %x - %m%n  

我在RollingFileAppender中得到了带有日期时间戳的正确输出,即在mpnlog中。但要登录catalina。我没有得到System.out.println()的日期时间戳。。我不知道我到底在哪里犯错。我需要为catalina的Sysout语句设置正确的日期时间戳。把文件归档

任何人。。。知道如何使用上述方法或任何其他方法为catalina添加日期时间戳。出去


共 (1) 个答案

  1. # 1 楼答案

    你忘了设置日志级别

    例如:

    log4j.rootLogger=INFO, stdout
    

    最好换成log4j。xml

    <?xml version="1.0" encoding="UTF-8"?><!DOCTYPE log4j:configuration SYSTEM "log4j.dtd" >
    <log4j:configuration>
        <appender name="stdout" class="org.apache.log4j.ConsoleAppender">   
            <layout class="org.apache.log4j.PatternLayout">
                <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss} %-5p %45.45c %x - %m%n/>
            </layout>
        </appender>
    
    <root>
            <priority value="info"></priority>
            <appender-ref ref="stdout"/>
        </root>
    </log4j:configuration>