EC-CUBE3でログ出力したいならMonologを使うと良い


2016/8/12現在最新のEC-CUBE3.0.10にはMonologがデフォルトで使える。
デバッグなどの際、dumpを使うことで画面上に出力することもできるのだけど、ログ出力したい場合にはMonologを使うと良い。

簡単な使用例

use Monolog\Logger;
use Monolog\Handler\StreamHandler;

$log = new Logger('LogName');
$log->pushHandler(new StreamHandler('../app/log/foobar.log', Logger::DEBUG));

$log->debug('Foo');    // --- (1)
$log->info('Bar');     // --- (2)
$log->warning('Hoge'); // --- (3)
$log->error('Huga');   // --- (4)

ざっくりと解説

StreamHandlerコンストラクタの第一引数にはログファイルのパス、第二引数には出力するログレベルを与える。
上記の使用例では、app/log/foobar.logというログファイルを出力する形になり、ログレベルがDEBUGなので(1)〜(4)すべてのメッセージが出力される。

仮に、ログレベルにWARNINGを指定すると、(1)および(2)は出力されず、(3)と(4)のみが出力されるようになる。