log4j.properties 到 log4j2 log2.xml

log4j.properties to log4j2 log2.xml

log4j2.xml 中与此文件等效的 log4j.properties 文件是什么:

log4j.rootLogger=INFO, DEF
log4j.appender.DEF=org.apache.log4j.DailyRollingFileAppender 
log4j.appender.DEF.File=${catalina.home}/webapps/myApp/logs/hasan.log 
log4j.appender.DEF.DatePattern='.'dd-MM-yyyy

# layout-config fro root-logger
log4j.appender.DEF.layout=org.apache.log4j.PatternLayout 
log4j.appender.DEF.layout.ConversionPattern=%d{ISO8601} UTC [%25.25t] %-5p %25.25c %x - %m%n

你可以试试这个log4j2.xml文件配置

<Configuration status="warn">
<Properties>
    <Property name="basePath">logs/</Property>
</Properties>

<Appenders>
    <RollingFile name="fileLogger" fileName="${basePath}/hasan.log"
        filePattern="${basePath}/reporting-%d{yyyy-MM-dd}.log">
        <PatternLayout>
            <pattern>%d{yyyy-MM-dd HH:mm:ss} [%t] [%-5level] %c{1}:%L - %msg%n
            </pattern>
        </PatternLayout>
        <Policies>
            <TimeBasedTriggeringPolicy interval="1"
                modulate="true" />
        </Policies>
    </RollingFile>

    <Console name="console" target="SYSTEM_OUT">
        <PatternLayout
            pattern="%d{yyyy-MM-dd HH:mm:ss} [%t] [%-5level] %c{1}:%L - %msg%n" />
    </Console>
</Appenders>
<Loggers>
    <Root level="info" additivity="false">
        <appender-ref ref="console" />
    </Root>
</Loggers>

这是你的等价物log4j2.xml

<?xml version="1.0" encoding="UTF-8"?>
<Configuration>
    <Appenders>
        <RollingFile name="DEF" 
                     fileName   ="${sys:catalina.home}/webapps/myApp/logs/hasan.log" 
                     filePattern="${sys:catalina.home}/webapps/myApp/logs/hasan.log.%d{dd-MM-yyyy HH-mm-ss}">
            <PatternLayout pattern="%d{ISO8601} UTC [%25.25t] %-5p %25.25c %x - %m%n"/>
            <TimeBasedTriggeringPolicy modulate="true" />
        </RollingFile>
    </Appenders>
    <Loggers>
        <Root level="INFO" >
            <AppenderRef ref="DEF" />
        </Root>
    </Loggers>
</Configuration>