繁体   English   中英

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

[英]Log4perl weird errors using file appender

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

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”已创建,但为空。 生成的警告是:

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”也被打印到命令行。 谁能看到我在犯什么错误?

您确定要添加程序吗? 如果是这样,则您不应该直接创建新的Log::Log4perl::Appender::File对象-您创建Log::Log4perl::Appender对象,并将要添加的类型的类作为第一个参数传递到构造函数。 像这样:

my $app = Log::Log4perl::Appender->new(
    'Log::Log4perl::Appender::File',
    filename  => 'C:/users/my name/Desktop/someFile.txt',
    mode      => 'clobber',
    utf8      => 1,
);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM