Zend_Logの続き。
1でやろうと思ってたプライオリティ毎のメソッド。もちろん、既存のlogメソッドもOK。
あっさり考えるえだけならちょろいか。
Zend_Loader::loadClass('Zend_Log');
class BaseLog extends Zend_Log{
public function log($message, $priority){
//独自の実装
parent::log($message, $priority);
}
public function debug($message){
//独自の実装
$this->log($message,Zend_Log::DEBUG);
}
public function info($message){
//独自の実装
$this->log($message,Zend_Log::INFO);
}
・
・
・
public function emergency($message){
//独自の実装
$this->log($message,Zend_Log::EMERG);
}
}
使う場合はZend_Logのlogの代わりに以下を実行で。
$logger = new BaseLog();
・
・
・
$logger->debug('debug message');
$logger->info('Informational message');
$logger->notice('notice message');
$logger->warn('warning message');
$logger->error('error message');
$logger->emergency('emergency message');
あとログを取る時にファイル名、行が欲しいと思ったりしたら以下を追記
$tmpDbBckTrc = debug_backtrace();
$preFileInfo = $tmpDbBckTrc[0];
$this->setEventItem('file',basename($preFileInfo['file']));
$this->setEventItem('line',$preFileInfo['line']);
もちろんformatに%file%、%line%が入っているの前提。重くなりそうなので、デバッグあたりに突っ込むか。いや、
使わないほうが良いのかな。。。
今日の日付は2008/5/20
プライオリティ毎のメソッドを用意しようと思ったら。
実はすでにZend_Logはフォローしてあったのね(^^;
最近になって気付いた、、、恥ずかしいorz
素の状態で$logger->debug()とかできちゃいました。
