【发布时间】:2012-12-05 22:59:16
【问题描述】:
我正在阅读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 配置为每天轮换一次、删除旧文件并创建一个具有正确时间戳的新文件?提前致谢。
【问题讨论】:
标签: linux perl logging log4perl