java 在 log4j 中使用 RollingFileAppender 滚动日志文件

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/3544903/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-10-30 02:19:59  来源:igfitidea点击:

Using RollingFileAppender in log4j for rolling log files

javalogginglog4j

提问by Sameek Mishra

I want to use log4j in my web application. I would like to configure log4j in such a way that when the file reaches a certain size, we start writing a new log files, making it easier to open and read.

我想在我的 Web 应用程序中使用 log4j。我想以这样的方式配置log4j,当文件达到一定大小时,我们开始写入新的日志文件,使其更容易打开和阅读。

Can you please explain the set up of RollingFileAppender?

你能解释一下设置RollingFileAppender吗?

回答by skaffman

Lots of exampleson the internet, e.g. this creates a daily rolling log file that rolls over to log4jtest.log.2010-08-25etc

互联网上有很多示例,例如这会创建一个每日滚动日志文件,该文件会滚动到log4jtest.log.2010-08-25etc

# configure the root logger
log4j.rootLogger=INFO, DAILY

# configure the daily rolling file appender
log4j.appender.DAILY=org.apache.log4j.DailyRollingFileAppender
log4j.appender.DAILY.File=/tmp/log4j/log4jtest.log
log4j.appender.DAILY.DatePattern='.'yyyy-MM-dd
log4j.appender.DAILY.layout=org.apache.log4j.PatternLayout
log4j.appender.DAILY.layout.conversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS} [%p] %c:%L - %m%n

回答by Drew Noakes

If you're using XML configuration, you can use the following:

如果您使用 XML 配置,则可以使用以下内容:

<appender name="MyFileAppender" class="org.apache.log4j.DailyRollingFileAppender">
    <param name="File" value="my.log" />
    <param name="Threshold" value="INFO" />
    <param name="DatePattern" value="'.'yyyy-MM-dd" />
    <layout class="org.apache.log4j.PatternLayout">
        <param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss.SSS} %-5p %-10t [%-40.40c] %x - %m%n"/>
    </layout>
</appender>

This rolls the log file over each day.

这将每天滚动日志文件。

If you wish to roll the log file over when it reaches a certain size, use RollingFileAppender. From the docs:

如果您希望在达到特定大小时滚动日志文件,请使用RollingFileAppender. 从文档:

RollingFileAppender extends FileAppender to backup the log files when they reach a certain size. The default maximum file size is 10MB.

RollingFileAppender 扩展 FileAppender 以在日志文件达到一定大小时对其进行备份。默认的最大文件大小为 10MB。