我正在使用log4j1.2.17和apache-extras-log4j - 1.2.17.jar进行记录。
我的目的是根据size滚动和归档文件.Below是log4j.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
<appender name="R" class="org.apache.log4j.rolling.RollingFileAppender">
<param name="File" value="logger.log"/>
<param name="append" value="true"/>
<param name="encoding" value="UTF-8"/>
<rollingPolicy class="org.apache.log4j.rolling.FixedWindowRollingPolicy">
<param name="FileNamePattern" value="logger.log%i.gz" />
</rollingPolicy>
<triggeringPolicy class="org.apache.log4j.rolling.SizeBasedTriggeringPolicy">
<param name="MaxFileSize" value="${LOG_FILESIZE_LIMIT}"/>
</triggeringPolicy>
<layout class="org.apache.log4j.TTCCLayout">
<param name="ContextPrinting" value="true"/>
<param name="ThreadPrinting" value="true"/>
<param name="DateFormat" value="MM/dd/yyyy HH:mm:ss"/>
</layout>
</appender>
<root>
<priority value ="DEBUG"/>
<appender-ref ref="R"/>
</root>
</log4j:configuration>
$ {LOG_FILESIZE_LIMIT}是100MB。
但它没有将MaxFileSize设置为100MB并给出以下信息。
log4j:WARN无法将属性[maxFileSize]设置为值&#34; 100MB&#34;
默认maxfilesize为10MB,一旦达到10MB就归档文件。
谢谢, 安贾尼
答案 0 :(得分:5)
尝试将$ {LOG_FILESIZE_LIMIT}占位符设置为值 104857600 (相当于100MB,以字节为单位),因为MaxFileSize参数接受长值。
答案 1 :(得分:0)
检查类路径上是否没有其他版本的log4j,我遇到此问题之前,其他第三方jar集也有旧版本的log4j - 删除它修复了问题。