🐙

[CakePHP]ロギング

2021/12/21に公開

ログの書き込み

① Controller, Component, View等で書き込みたい場合
LogTraitのlog()関数を使う。

② ①以外の場合Log::write()を使う、もしくはLogTraitを呼び出してlog()関数を使う。

ロギングの設定 Log::setConfig()

Log::setConfig('debug', [
    'className' => 'File',
    'path' => LOGS,
    'levels' => ['notice', 'info', 'debug'],
    'file' => 'debug',
]);
  • 第1引数debugは設定の名前
    Log::getConfig('debug')で上記の設定が取得できる
  • classNameのFileFileLog.phpを使いログを記録するということ。
    • FileLogの場合はsize, rotate, maskなどのオプションが使える。
  • pathはログの保存場所
  • levelsはどのレベルの場合保存するか。log()関数の第2引数と対応
pulic function log($message, $level, $context): bool
  • fileは保存時のファイル名。上記の場合debug.logという名前でファイルが保存される。

確認時の環境CakePHP:4.3

Discussion