// Cakephp Objectクラス継承したクラスでは
$this->log('ログに出力するメッセージ', ログタイプ);
// その他
CakeLog::write(ログタイプ, 'ログに出力するメッセージ');
log関数では、CakeLog::writeを呼び出すだけのため
どちらを使っても処理としては同じ
パフォーマンスを気にするならば
後者(関数呼び出しがひとつ不要)
将来処理が変わるかもしれないことを気にするならば
前者
くらいに思っていればいいのかな
ログタイプはあくまでタイプであり
bootstrap.phpに定義されているファイルの出力方法に従ったりする
ここからはしたは、CakePHP 2.3の場合として読んでください
LOG_DEBUGに設定したとしても
core.phpの
Configure::write('debug', 0);
にしても
ファイルは出力される。
App::uses('CakeLog', 'Log');
if (Configure::read('debug') != 0) {
CakeLog::config('debug', array(
'engine' => 'FileLog',
'types' => array('notice', 'info', 'debug'),
'file' => 'debug',
));
}
CakeLog::config('error', array(
'engine' => 'FileLog',
'types' => array('warning', 'error', 'critical', 'alert', 'emergency'),
'file' => 'error',
));
debugの設定を見て
CakeLog設定を行うか切り替えることで
対応しました。
検索すると
debugを0にするとログ(デバッグ、エラー)が出来ないやデバッグログは出力されない
という情報もありますがあくまでCakePHP 2.3の場合
または、うちの環境の場合という事しか言えないですが