Multiple output files for single appender
by Marek Mizier
REPLY TO AUTHOR
REPLY TO GROUP
affiliate marketing
Is it possible to assign one appender to multiple output files? I need to
set many log files with similar settings. The only difference is output
file.
As the number of log files is rather large, I'd like to avoid defining
appender for each log file. It's hard to manage a large config file and the
flexibility is poor.
Example script:
$_ENV['log4php.logdir'] = "/foo/logs";
require_once(LOG4PHP_DIR.'/LoggerManager.php');
function logger($message, $logfile)
{
$_ENV['log4php.logfile'] = $logfile;
LoggerManagerDefaultInit();
$logger =& LoggerManager::getLogger('myLog');
$logger->info($message);
}
logger('foo msg', 'foolog');
logger('bar msg', 'barlog');
[...]
Config file:
log4php.rootLogger=WARN, ROOT
log4php.appender.ROOT=LoggerAppenderRollingFile
log4php.appender.ROOT.layout=LoggerPatternLayout
log4php.appender.ROOT.layout.ConversionPattern="[%d][%p]: %m%n"
log4php.appender.CHANGE=LoggerAppenderRollingFile
log4php.appender.CHANGE.layout=LoggerPatternLayout
log4php.appender.CHANGE.layout.ConversionPattern="[%d][%p][%x]: %m%n"
log4php.appender.CHANGE.MaxFileSize=10000KB
log4php.appender.CHANGE.filename="${log4php.logdir}/${log4php.logfile}x.log"
log4php.logger.myLog= DEBUG, CHANGE
The code above works only for the first time. Every subsequent logger calls
doesn't create log files nor write contents.
Does anyone have a clue how to solve this problem?
Marek Mizier
Bookmark with:
Delicious
Digg
reddit
Facebook
StumbleUpon
Related Messages
opensubscriber is not affiliated with the authors of this message nor responsible for its content.