最近ひょんなことでperlからログを出すことになり、log4perlを使いました。なかなかいいですね。log4jを知っている人には使いやすいのではないでしょうか。
インストールはCPANから探してきて(http://search.cpan.org/~mschilli/Log-Log4perl-0.51/)、makeするだけです。
$ tar zxf Log-Log4perl-0.51.tar.gz $ cd Log-Log4perl-0.51/ $ perl Makefile.PL $ make $ make test $ make install
以下のような感じで使えるようです。使い方はREADMEと、perl.comの文章(Retire your debugger, log smartly with Log::Log4perl!)を参考にしました。
use Log::Log4perl; Log::Log4perl::init('/etc/log4perl.conf'); $logger = Log::Log4perl->get_logger('foo.bar'); $logger->info("This is info message"); $logger->debug("ARGV: " . join " ", @ARGV);
設定ファイルはlog4jにそっくりですね。
log4perl.logger.nomail = DEBUG, FileAppndr1 log4perl.appender.FileAppndr1 = Log::Log4perl::Appender::File log4perl.appender.FileAppndr1.filename = /var/log/log4perl.log log4perl.appender.FileAppndr1.layout=Log::Log4perl::Layout::PatternLayout log4perl.appender.FileAppndr1.layout.ConversionPattern=%d %p> %F{1}:%L %M - %m%n
ハマリどころも特に無く、いまのところ便利に使えています。