如何让我的 Log::Log4perl 记录器工作?
这是我的代码:
use strict;
use warnings;
use Log::Log4perl qw(:easy);
Log::Log4perl->init({
level => $DEBUG
});
my $logger = Log::Log4perl->get_logger("my.logger");
my $appender = Log::Log4perl::Appender->new("Log::Log4perl::Appender::File",filename => "my.file");
$appender->layout(Log::Log4perl::Layout::SimpleLayout->new);
$logger->add_appender($appender);
$logger->info("this is an info");
我想做的就是将消息记录到文件中,并显示级别。我明白这就是 SimpleLayout
的用途。我想在没有配置文件的情况下执行此操作。 运行上面的代码会显示以下消息:
Log::Log4perl 配置看起来很可疑:没有定义记录器
Here's the code I have:
use strict;
use warnings;
use Log::Log4perl qw(:easy);
Log::Log4perl->init({
level => $DEBUG
});
my $logger = Log::Log4perl->get_logger("my.logger");
my $appender = Log::Log4perl::Appender->new("Log::Log4perl::Appender::File",filename => "my.file");
$appender->layout(Log::Log4perl::Layout::SimpleLayout->new);
$logger->add_appender($appender);
$logger->info("this is an info");
all I want to do is log a message to a file, and have the level show up. I understood that is what the SimpleLayout
is for . I'd like to do this without a configuration file.
Running the code above shows the following message:
Log::Log4perl configuration looks suspicious: No loggers defined
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
来自 http://log4perl.sourceforge .net/releases/Log-Log4perl/docs/html/Log/Log4perl/FAQ.html#f625e ,尝试以下方法:
From http://log4perl.sourceforge.net/releases/Log-Log4perl/docs/html/Log/Log4perl/FAQ.html#f625e , try this approach: