このエントリーが役に立ったらシェアをお願いします!

[CakePHP]独自のログファイルを出力する

このエントリーが役に立ったらシェアをお願いします!

今回はCakePHPで独自のログを出力する方法をご紹介します。
CakePHPにはlog関数があり、デバッグログやエラーログを出力することができます。

$this->log("デバッグログ",LOG_DEBUG);  //tmp/log/debug.logに出力
$this->log("エラーログ");   //tmp/log/error.logに出力

※2014-04-06 修正
LOG_DEBUGの部分がDEBUG_LOGになってました。申し訳ありません。

これはこれで便利だけど、実際に使用すると参照したいログが埋もれてしまったりする可能性がある。また、プログラムのエラーとデータベースエラーのログを分けたいという時もあると思う。

そんなときはこの方法でログ出力するとファイル名を指定できる。

$this->log("データベースエラー",'DB_ERROR');

こうすることで
ログ出力
こんな感じに出力してくれる。

データベースエラーなんかの場合は

try {
    //ここでDBの例外が投げられたとする。
} catch(Exception $e) {
    //DB_ERROR.logに例外メッセージを出力!
    $this->log($e->getMessage(),'DB_ERROR');
}

catchした先でこのログを構えておけばDBエラーを個別にログ出力できる。

スポンサーリンク

このエントリーが役に立ったらシェアをお願いします!

1この記事を書いた人
ShoheiTai
フロントエンド志向のWebエンジニア。
HTML5やWeb高速化、SEO等のフロントエンド開発が大好物。
バックエンドではCakePHP,Wordpress開発を主戦場としています。
Web開発のスパイスファクトリー株式会社創業メンバー。

イケてないコード - Webエンジニアのブログの
最新情報をいいねしてチェックしよう!
スポンサーリンク