On Wed, 28 May 2003, Andrew Hammond wrote:
> Here's what I've currently got. The root logger is working perfectly,
> but the SQL logger isn't getting _any_ messages. I must be doing
> something wrong...
>
> log4perl.logger = DEBUG, LOGFILE, STDERR
>
> log4perl.appender.LOGFILE = Log::Dispatch::File
> log4perl.appender.LOGFILE.Threshold = WARN
> log4perl.appender.LOGFILE.filename = error_log.txt
> log4perl.appender.LOGFILE.mode = append
> log4perl.appender.LOGFILE.layout = PatternLayout
> log4perl.appender.LOGFILE.layout.ConversionPattern = \
> %d [%r] %c %F:%L (%M) - %m%n
>
> log4perl.appender.STDERR = Log::Dispatch::Screen
> log4perl.appender.STDERR.Threshold = INFO
> log4perl.appender.STDERR.layout =
> Log::Log4perl::Layout::PatternLayout
> log4perl.appender.STDERR.layout.ConversionPattern = %d - %m%n
>
> log4perl.logger.SQL = DEBUG, SQL
> log4perl.appender.SQL = Log::Dispatch::File
> log4perl.appender.SQL.Threshold = DEBUG
> log4perl.appender.SQL.filename = sqllog.sql
> log4perl.appender.SQL.mode = write
> log4perl.appender.SQL.layout = PatternLayout
> log4perl.appender.SQL.layout.ConversionPattern = %m%n
>
>
> code:
>
> Log::Log4perl->init('webpanel_log.conf');
> our $log = get_logger();
> our $sqllog = get_logger('sql');
Aha! Log::Log4perl logger names are case sensitive, if you're using 'SQL'
in the conf file, you need to obtain the logger correctly:
our $sqllog = get_logger('SQL');
That should fix your problem.
-- Mike
Mike Schilli
log...@pe...
http://perlmeister.com
http://log4perl.sourceforge.net
|