2013-12-10 2 views
2

Могу ли я иметь несколько конфигураций, указанных в одном файле conf?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 

Когда я запускаю сценарии самостоятельно, другой файл журнала очищается. . :( Любые предложения оценили Я не хочу иметь несколько конф, поэтому, пожалуйста, предложить решение с одним файлом конф

+0

Вы можете использовать ['JSON'] (http://p3rl.org/JSON) или [' YAML'] (https://metacpan.org/pod/YAML) для конфигураций –

+0

Речь идет не о получении вывода , но регистрируя уровни отладки.Я не получил ваш ответ.Некоторые из вас могут ответить. – justrajdeep

ответ

0

Измените режим для добавления и убедитесь, что вы собираетесь вызвать регистратор так:.

my $logger = get_logger('xml_script'); 

my $logger = get_logger('addrdec2xml'); 
+0

Не работает. Пробовал это уже. – justrajdeep

+0

Вы изменили режим добавления? – user1126070

+0

Я не хочу добавлять, это бьет цель. должен регистрироваться только в том случае, когда соответствующие журналы регистрируются независимо от того, что определено в конфигурации. и когда они регистрируются, они не должны добавлять, но перезаписывать – justrajdeep

Смежные вопросы