java - log4j 属性 DailyRollingFileAppender 不起作用

标签 java logging netbeans log4j rollingfileappender

我想要每日日志,日志文件附加了 yyyy-dd-mm 格式的日期。当我使用 DailyRollingFileAppender 时,不会创建新的日志文件。日志被写入同一个日志文件。此外,不考虑提供的日期模式。创建的日志文件是 LoggerFile.log。并且每个内容(即使是第二天)都写入此文件。

我正在使用 log4j-1.2.17 jar。我正在使用 Java 开发 Netbeans 7.3.1。

有没有人在使用这个JAR遇到这样的问题。请帮忙!

这是我使用的属性文件的内容:

# Root logger option
log4j.rootLogger=ERROR,FILE,stdout

# Define the file appender
log4j.appender.FILE=org.apache.log4j.DailyRollingFileAppender

log4j.appender.FILE.File=.//..//logs//LoggerFile.log

# Define the layout for file appender
log4j.appender.FILE.DatePattern='.'yyyy-MM-dd
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.conversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS zzz} %5p     %c{1}:%L - %m%n

log4j.appender.FILE.MaxFileSize=10MB


# Direct log messages to stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L -  %m%n`

最佳答案

我对每日日志文件轮换有类似的要求..(虽然问题比较老,但认为答案会对其他人有所帮助)..

要点:

  1. 首先,我们可以避免使用 DailyRollingFileAppender。为什么?已观察到 DailyRollingFileAppender 会出现同步问题和数据丢失。 log4j extras 伴侣包括新部署应考虑的备选方案,并在 org.apache.log4j.rolling.RollingFileAppender 的文档中进行了讨论。引用:Documentation of Daily Rolling File Appender

  2. Apache extras log4j,建议使用 org.apache.log4j.rolling.RollingFileAppenderTime based rolling policy

  3. 可能会找到一个sample基于时间的日志轮换配置。

希望这对您有所帮助。

关于java - log4j 属性 DailyRollingFileAppender 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21928972/

相关文章:

netbeans - 离线构建cordova应用程序

java - Netbeans GUI 设计器和固定大小的应用程序面板

java - IntelliJ 和 SVN : "no changes detected" upon commit

java - 如何从空引用访问静态变量?

java xml 文字构造函数

android - 手动从 Android 设备获取 LogCat

java - log4j2如何记录包?

c++ - C++ 中是否有类似于 ruby​​ 的 set_trace_function 的工具?

java - 如何从 Intellij 中的另一个模块导入类

java - 是否可以有一个 Eclipse 项目,其中一个包作为 Android 应用程序执行,第二个包作为 Java SE 应用程序执行?