HerokuにデプロイしたLaravelアプリケーションのログメッセージをHerokuのログシステムに出力して、Papertrailに連携する手順と説明をまとめました。
Laravelのバージョンは、2019年9月時点での最新6.0で確認しています。
LaravelのログをHerokuのログに統合する
「PHP Application Logging | Heroku Dev Center」によると、Herokuのログ管理システム(Logplexという)はstdoutおよびstderrに出力されるメッセージをログストリームとして集めます。
heroku logs
コマンドで確認できるログメッセージは各Dynoからここに集められたログを見ているわけです。
そこで、Laravelの場合もstrerr
にログが出力されるように設定します。
Herokuのドキュメントの「Laravel」に記載されている通り、環境変数LOG_CHANNEL
にerrorlog
をセットするだけでOKです。
環境変数LOG_CHANNEL
にerrorlog
をセットするコマンドは以下のとおり
$ heroku config:set LOG_CHANNEL=errorlog