我正在阅读Log4perl并想尝试使用它来对我在 Linux 机器上运行的 Perl 脚本进行简单的日志管理。我也阅读过newsyslog
,logrotate
但如果可能的话,我想使用 Log4perl。
我正在尝试配置/etc/log4perl.conf
文件,以便它:
- 定义将所有输出写入的
widget
记录器(级别) ,其中是日期/时间格式的字符串,例如INFO
/opt/myapp/logs/myapp-<datetime>.log
<datetime>
2012-12-20
- 该
myapp-<datetime>.log
文件需要每天轮换(最好在午夜),删除旧文件,并使用<datetime> + 1
. 例如,myapp-2012-12-20.log
将替换为myapp-2012-12-21.log
等。
这是我认为已经接近的最佳尝试,但仍然缺少一些配置:
#####/etc/log4perl.conf############################################################
log4perl.logger.widget = INFO, MyAppLogAppender
log4perl.appender.MyAppLogAppender = Log::Log4perl::Appender::File
log4perl.appender.MyAppLogAppender.filename = /opt/myapp/logs/myapp-???.log
log4perl.appender.MyAppLogAppender.layout = Log::Log4perl::Layout::SimpleLayout
###################################################################################
如何配置log4perl.appender.MyAppLogAppender
为每天轮换一次、删除旧文件并创建一个具有正确时间戳的新文件?提前致谢。