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

Reply via email to