D190 ログ

例外処理とは、プログラムに異常が発生した場合に現在の処理を中断し、別の処理を行わせる処理のことをいいます。

ログについて

ログの設定

Laravelのログの設定に関しては、config/logging.phpに書いています。

デフォルトで使用される設定は、下記のようになっており、.envファイルのLOG_CHANNELの設定を取得して、設定するようになっています。

PHP
'default' => env('LOG_CHANNEL', 'stack'),

設定がない場合は同ファイル内のchannels配列内のstackにて設定されます。

PHP
'channels' => [
        'stack' => [
            'driver' => 'stack',
            'channels' => ['single'],
            'ignore_exceptions' => false,
        ],
        
        'single' => [
            'driver' => 'single',
            'path' => storage_path('logs/laravel.log'),
            'level' => env('LOG_LEVEL', 'debug'),
        ],
        ...//一部のみ抜粋

ログの出力

pathとlevelを変更することで、出力内容を変更したり絞ることができます。下記のように変更することで、example.logにログが出力されるようになります。

PHP
'path' => storage_path('logs/example.log'),
'level' => env('LOG_LEVEL', 'debug'),

また、.envファイルの下記のように修正することでエラーレベルにより出力を絞ることができます。alert以上のエラーレベルの際にのみ出力をします。

エラーレベルについての詳細はこちら

PHP
LOG_LEVEL=alert

エンジニアからのアドバイス

ログをどこまで表示させるかや表示の優先順位については、どのくらいのレベルでログを出力させるかなどを考慮してチーム内で共通認識をとってから実装を行いましょう。

---