Hi there,
What I'm trying to do here is:
1. log WARN to mainLogFile
2. log DEBUG to runMonitorLogFile
3. output to screen at level INFO
4. email at level WARN
and here is the log4per.properties file:
#predefined variables
layout_class = Log::Log4perl::Layout::PatternLayout
layout_pattern = %d %5p %F{1} %L> %m %n
layout_email_pattern = %d{yyyy-MM-dd HH:mm:ss} [%F{1}:%c{1}:%L] %5p> %m%n
log_file_appender = Log::Dispatch::FileRotate
log4perl.logger.main = WARN, MainLogfile, Email
log4perl.logger.main.runMonitorStage = DEBUG, RunMonitorLogFile, Screen
log4perl.appender.MainLogfile = Log::Dispatch::FileRotate
log4perl.appender.MainLogfile.filename = main.log
log4perl.appender.MainLogfile.mode = append
log4perl.appender.MainLogfile.max = 5
log4perl.appender.MainLogfile.DatePattern = yyyy-MM-dd
log4perl.appender.MainLogfile.TZ = PST
log4perl.appender.MainLogfile.layout = ${layout_class}
log4perl.appender.MainLogfile.layout.ConversionPattern = ${layout_pattern}
#Run Monitor Stage Log
log4perl.appender.RunMonitorLogFile = ${log_file_appender}
log4perl.appender.RunMonitorLogFile.filename = logs/runmonitor.log
log4perl.appender.RunMonitorLogFile.mode = append
log4perl.appender.RunMonitorLogFile.max = 5
log4perl.appender.RunMonitorLogFile.DatePattern = yyyy-MM-dd
log4perl.appender.RunMonitorLogFile.TZ = PST
log4perl.appender.RunMonitorLogFile.layout = ${layout_class}
log4perl.appender.RunMonitorLogFile.layout.ConversionPattern =
${layout_pattern}
#log4perl general screen output configuration
log4perl.appender.Screen = Log::Log4perl::Appender::Screen
log4perl.appender.Screen.stderr = 0
log4perl.appender.Screen.layout = ${layout_class}
log4perl.appender.Screen.layout.ConversionPattern = ${layout_pattern}
log4perl.appender.Screen.Threshold = INFO
#SPP event EMAIL output configuration
log4perl.appender.Email = Log::Dispatch::Email::MailSender
log4perl.appender.Email.subject = sub { return getEmailSubject(); }
#log4perl.appender.Email.subject = %F{1}
log4perl.appender.Email.name = SPP event
log4perl.appender.Email.to = dav...@mail.com
log4perl.appender.Email.from = davidz@ mail.com
log4perl.appender.Email.smtp = mail.com
log4perl.appender.Email.min_level = warning
log4perl.appender.Email.buffered = 0
log4perl.appender.Email.layout = ${layout_class}
log4perl.appender.Email.layout.ConversionPattern = ${layout_email_pattern}
With this setup, I can achieve all of above intended, except for the DEBUG
logging is directed to mail.log instead of runmonitor.log.
With
log4perl.appender.MainLogfile.Threshold = WARN
specified, no DEBUG level log to either logs.
Where do I set up wrong here? Thanks in advance!
David
------------------------------------------------------------------------------
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
_______________________________________________
log4perl-devel mailing list
log4perl-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/log4perl-devel