我log4perl
用来记录来自perl
脚本的消息。如下所示,然后我收到mwe.pl
以下(所需)输出test.log
INFO: some information
more information
我当前的实现使用:
my $logmessage = "some information\n";
$logmessage .= "more information";
$logger->info($logmessage);
请特别注意,我已经使用 手动指定了换行符\n
,这是我想避免的。
有没有一种方法可以实现我想要的输出(test.log
),而无需搭建我的日志输入?
mwe.pl
#!/usr/bin/env perl
use strict;
use warnings;
use Log::Log4perl qw(get_logger :levels);
my $logger = get_logger();
$logger->level($INFO);
my $layout = Log::Log4perl::Layout::PatternLayout->new("%p: %m{indent}%n");
my $appender = Log::Log4perl::Appender->new(
"Log::Dispatch::File",
filename => "test.log",
mode => "write",
);
$appender->layout($layout);
$logger->add_appender($appender);
my $logmessage = "some information\n";
$logmessage .= "more information";
$logger->info($logmessage);
exit(0);