log4php構成ドキュメントには、ルートロガーからの継承を停止する「加法性」と呼ばれる構成オプションがあります。
ただし、PHP 形式の構成ファイルに追加したところ、ルート ロガーは、ロガー内にqueryLogger
のみ表示されるはずのエントリをまだログに記録しています。
<?php
return array(
'rootLogger' => array(
'level' => 'DEBUG',
'appenders' => array('fileAppender'),
),
'loggers' => array(
'queryLogger' => array(
'level' => 'INFO',
'appenders' => array('queryFileAppender')
)
),
'appenders' => array(
'fileAppender' => array(
'class' => 'LoggerAppenderDailyFile',
'layout' => array(
'class' => 'LoggerLayoutPattern',
'params' => array(
'conversionPattern' => '%d{Y-m-d H:i:s.u} [%-5p] %-100m ---------- [%F:%L]%n'
)
),
'params' => array(
'datePattern' => 'Y-m-d',
'file' => LOG_PATH . 'system-%s.log',
),
),
'queryFileAppender' => array(
'class' => 'LoggerAppenderDailyFile',
'layout' => array(
'class' => 'LoggerLayoutPattern',
'params' => array(
'conversionPattern' => '%d{Y-m-d H:i:s.u} %m%n'
)
),
'params' => array(
'datePattern' => 'Y-m-d',
'file' => LOG_PATH . 'query-%s.log',
),
),
),
'additivity' => array(
'fileAppender' => false,
),
);
?>
私の目標は、ログインするだけでqueryLogger
、ログインしないことですrootLogger
。私は何を取りこぼしたか?