log4perl在一个conf文件中的多个配置

时间:2013-12-10 04:53:45

标签: perl log4perl

我可以在一个conf文件中指定多个配置吗?

我已经指定了类似的东西

log4perl.category.xml_script                = DEBUG, LOGFILE_XML_SCRIPT
log4perl.category.xml_script.XML_script_lib = DEBUG, LOGFILE_SCRIPT_LIB
log4perl.category.addrdec2xml               = DEBUG, LOGFILE_ADDRDEC2XML
log4perl.oneMessagePerAppender              = 1

xml_script addrdec2xml 是2个独立的脚本。

log4perl.appender.LOGFILE_XML_SCRIPT                           = Log::Log4perl::Appender::File
log4perl.appender.LOGFILE_XML_SCRIPT.filename                  = xml_script.log
log4perl.appender.LOGFILE_XML_SCRIPT.mode                      = overwrite
log4perl.appender.LOGFILE_XML_SCRIPT.layout                    = Log::Log4perl::Layout::PatternLayout
log4perl.appender.LOGFILE_XML_SCRIPT.layout.ConversionPattern  = %p %F(%L): [%c] %m%n

log4perl.appender.LOGFILE_SCRIPT_LIB                           = Log::Log4perl::Appender::File
log4perl.appender.LOGFILE_SCRIPT_LIB.filename                  = xml_script_lib.log
log4perl.appender.LOGFILE_SCRIPT_LIB.mode                      = overwrite
log4perl.appender.LOGFILE_SCRIPT_LIB.layout                    = Log::Log4perl::Layout::PatternLayout
log4perl.appender.LOGFILE_SCRIPT_LIB.layout.ConversionPattern  = %p %F(%L): [%c] %m%n

log4perl.appender.LOGFILE_ADDRDEC2XML                          = Log::Log4perl::Appender::File
log4perl.appender.LOGFILE_ADDRDEC2XML.filename                 = addrdec2xml.log
log4perl.appender.LOGFILE_ADDRDEC2XML.mode                     = overwrite
log4perl.appender.LOGFILE_ADDRDEC2XML.layout                   = Log::Log4perl::Layout::PatternLayout
log4perl.appender.LOGFILE_ADDRDEC2XML.layout.ConversionPattern = %p %F(%L): [%c]%n%m%n

当我独立运行脚本时,其他日志文件将被清除。 :( 任何建议赞赏。我不想要多个conf,所以请使用单个conf文件建议解决方案。

1 个答案:

答案 0 :(得分:0)

更改模式以追加并确保您将调用此记录器:

my $logger = get_logger('xml_script');

my $logger = get_logger('addrdec2xml');