|
From: David C. <dpc...@ho...> - 2011-09-19 19:56:02
|
log4perl-devel:
I'm working on a web application and would like to log TRACE priority
messages related to hits from my development machine (IP address
192.168.0.34). This is the relevant portion of my configuration file:
2011-09-19 12:31:51 dpchrist@p43400e ~
$ grep TraceApp perl-src/50-Dpchrist-CMS/demo/conf/log4perl.conf
log4perl.logger = TRACE, InfoApp, TraceApp
log4perl.appender.TraceApp = Log::Log4perl::Appender::File
log4perl.appender.TraceApp.filename = sub { $ENV{REMOTE_ADDR} eq
'192.168.0.34' ? $Mysite::CONF{-log_dir} . '/trace.log' : '/dev/null' }
log4perl.appender.TraceApp.mode = append
log4perl.appender.TraceApp.layout = PatternLayout
log4perl.appender.TraceApp.layout.ConversionPattern =
%d{yyyyMMdd-HHmmss.SSS} %p %M (%F{1} %L) %m{chomp}%n
log4perl.appender.TraceApp.Threshold = TRACE
I would prefer to enable/ disable TraceApp based on $ENV{REMOTE_ADDR}
rather than doing all the work and throwing non-192.168.0.34 hits down
/dev/null, but I couldn't figure out how to implement this idea.
Is there a better way?
TIA,
David
|