子持ちプログラマーの日記

子持ちのプログラマーがWeb関連の技術、育児、ガンプラのことを書くブログ

PEAR::Log 使い方

PEAR::Logの使い方をまとめます。

インストール

pear install Log

使い方

読み込み

require_once 'Log.php'; 
オプション設定
$conf = array('mode'=>0777,'lineFormat' => '%1$s %3$s %2$s [%6$s]%5$s - %4$s','timeFormat'=>'%Y/%m/%d %H:%M:%S');

補足

mode ログファイルの権限
lineFormat ログ出力のフォーマット(詳細は以下に)
timeFormat ログの時間のフォーマット

※ほかにもあるけど、デフォルトでいいかと思います。
lineFormatの詳細

%1$s 時間
%2$s 識別文字列
%3$s ログレベル
%4$s メッセージ
%5$s ファイルパス
%6$s 行数
%7$s 関数名
%8$s クラス名
インスタンス生成
$log = Log::singleton('file', './test.log', TEST, $conf, PEAR_LOG_DEBUG);

引数はそれぞれ、ハンドラ、ログファイル名、ログID、オプション、出力する最低ログレベルとなっています。

ログ出力

引数にレベルを渡すのと、ショートカットメソッドを使う2パターンがあります。
※ショートカットメソッドとログレベルの詳細は、下記参照
パターン1

$log->log('メッセージ', [ログレベル]);

パターン2

$log->[メソッド]('メッセージ');

ログレベルとショートカットメソッド

ログのレベル ショートカットメソッド
PEAR_LOG_EMERG emerg()
PEAR_LOG_ALERT alert()
PEAR_LOG_CRIT crit()
PEAR_LOG_ERR err()
PEAR_LOG_WARNING warning()
PEAR_LOG_NOTICE notice()
PEAR_LOG_INFO info()
PEAR_LOG_DEBUG debug()