首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用文件附加器的Log4perl奇怪错误

使用文件附加器的Log4perl奇怪错误
EN

Stack Overflow用户
提问于 2013-01-11 04:07:58
回答 1查看 533关注 0票数 0

我正在尝试向Log4perl记录器添加和删除一个简单的文件附加器,但系统会生成警告,并且不会打印任何内容。下面是我的代码:

代码语言:javascript
复制
use strict;
use warnings;
use Log::Log4perl qw(:easy);
Log::Log4perl->easy_init($DEBUG);
use Log::Log4perl::Appender::File;

my $app = Log::Log4perl::Appender::File->new(
    filename  => "C:/users/my name/Desktop/someFile.txt",
    mode      => 'clobber',
    utf8      => 1,
);
# print "appender name is " . $app->name();
my $logger = get_logger();
$logger->add_appender($app);
INFO('info');
$logger->remove_appender($app->name);

文件"someFile.txt“已创建,但为空。生成的警告包括:

代码语言:javascript
复制
Odd number of elements in hash assignment at C:/strawberry/perl/site/lib/Log/Log4perl/Appender/File.pm line 223.
Use of uninitialized value in print at C:/strawberry/perl/site/lib/Log/Log4perl/Appender/File.pm line 245.

带有时间戳的"info“也被打印到命令行。有人能看到我犯了什么错误吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-01-11 04:30:33

您确定附加器是您想要的吗?如果是这样的话,您就不应该直接创建一个新的Log::Log4perl::Appender::File对象--您需要创建一个Log::Log4perl::Appender对象,并将您想要的附加器类型的类作为第一个参数传递给构造函数。如下所示:

代码语言:javascript
复制
my $app = Log::Log4perl::Appender->new(
    'Log::Log4perl::Appender::File',
    filename  => 'C:/users/my name/Desktop/someFile.txt',
    mode      => 'clobber',
    utf8      => 1,
);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14266370

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档