每日文件夹附加器






4.54/5 (7投票s)
一个 Log4j 附加器类,用于创建每日文件夹
引言
我感谢 Code Project 的成员允许我们在该网站上分享我们的代码。本文旨在提供关于流行的 Log4j 包的追加器类的在线帮助,包括如何使用它、它的源代码和注释。
背景
Log4j 是一个非常流行的包,用于从 Java 应用程序中记录各种消息。它是一个功能丰富的日志记录工具,并带有各种内置追加器,允许将日志输出重定向到各种目标,例如文件、消息队列、数据库等。
在为一家客户工作时,我遇到了一个需求,要求日志文件必须每天准备好,并保存在按日期划分的文件夹结构中。虽然第一个需求可以使用内置的 DailyRollingFileAppender
类轻松满足,但第二个部分的实现并没有现成的方案。因此,我决定编写自己的追加器来满足这个需求。
Using the Code
下载文件包含代码和示例 log4j 配置文件。只需将 bin 文件夹下的 DailyFolderAppender.class 复制到您的项目类文件夹中。请记住保留 com.freeware.log4j 目录结构。将以下行从 log4j.properties 文件复制到您项目的 log4j.properties 文件中,然后开始使用此追加器。文件将在午夜时分轮换。
## direct messages to a file date-wise ###
log4j.appender.Daily=com.freeware.log4j.DailyFolderAppender
log4j.appender.Daily.RootFolder=logs
log4j.appender.Daily.FileName=MyApp.log
log4j.appender.Daily.DatePattern=yyyy-MM-dd
log4j.appender.Daily.layout=org.apache.log4j.PatternLayout
log4j.appender.Daily.layout.ConversionPattern=%d{ABSOLUTE} %5p - %m%n
要使用此配置的追加器,请参考以下代码片段
### set log levels - for more verbose logging change 'info' to 'debug' ##
### possible levels ALL < DEBUG < INFO < WARN < ERROR < FATAL < OFF
log4j.rootLogger=INFO, stdout, Daily
历史
- 2004 年 6 月 18 日 - 初始发布