Laravel5.6のロギングについて
先日公開されたLaravel5.6より、ロギングの仕組みが大幅に改善されました。
Laravelは、バージョンが変わるごとにそれなりにインパクトのある修正がガンガンはいりますが、ドキュメントがきちんと更新され、過去のドキュメントも保持されるため、基本的には利用するバージョンの公式ドキュメントを確認すれば問題ないことがほとんどです。
Laravelは、バージョンが変わるごとにそれなりにインパクトのある修正がガンガンはいりますが、ドキュメントがきちんと更新され、過去のドキュメントも保持されるため、基本的には利用するバージョンの公式ドキュメントを確認すれば問題ないことがほとんどです。
ログ出力について
ログの設定ファイルは以下のパスにあります
syslogとSlackにログ出力(公式から引用)
config/logging.php従来は、ファイル・DBなど、どのログ機構を利用するか一意に指定する必要がありましたが、5.6からはstackという指定でき、複数ログ出力できるようになりました。
syslogとSlackにログ出力(公式から引用)
'channels' => [ 'stack' => [ 'driver' => 'stack', 'channels' => ['syslog', 'slack'], ], 'syslog' => [ 'driver' => 'syslog', 'level' => 'debug', ], 'slack' => [ 'driver' => 'slack', 'url' => env('LOG_SLACK_WEBHOOK_URL'), 'username' => 'Laravel Log', 'emoji' => ':boom:', 'level' => 'critical', ], ],
また、tap, pathという指定ができるようになりました。PSR-3のロギングインタフェースで実装されている独自ログクラスを簡単に指定することができ、出力ファイル名も柔軟に変更できるようになりました。
再び公式より引用
再び公式より引用
'single' => [ 'driver' => 'single', 'tap' => [App\Logging\CustomizeFormatter::class], 'path' => storage_path('logs/laravel.log'), 'level' => 'debug', ],
ありがとうLaravel, ありがとうPSR.