前提
papertrailは、herokuの無料でも使えるアドオンで、エラーログの監視をすることができます。
使い方は以下のようなサイトを見ていただければわかると思います
https://hub.appirio.jp/tech-blog/heroku-tips-3
http://vdeep.net/heroku-papertrail
状況
herokuをホスティングサーバーとして利用し、Rails製のアプリを運用しています。
そこで、エラーログを監視してもしどこかでエラーがあればSlackなどに通知したくて、papertrailを採用しました。
そこで、採用したは良いものの、無料枠だと、2021年8月17日現在では、ログデータが10MBまでしか収集できませんでした。
そこで、今回不要なログ、つまり正常にアプリが動いている時のログはフィルターをかけたいと思いました。
この記事ではどのキーワードでフィルターをかければいい感じにログを取れるかについて記述します。
とりあえず以下のようにすれば、無料枠だけで毎日エラーログを収集できます🎉
フィルターをかけるキーワード
INFO
一般的な情報
DEBUG
低レベルの情報
at=info
一般的な情報
抽出したいキーワード
papertrailでは、ログの中から自分たちが見つけたいログのキーワードを指定して、該当のログをSlackなどに送信できます。
例:
"error code=H" OR "Error R" OR "Error L" OR "FATAL" OR "at=error" OR "at=warning"
ではどのようなキーワードを見つければ良いかについて記述します。
(追加の必要があるものはぜひコメントお願いします🙇♂️)
error code=H
heroku エラーコード
Error R
heroku エラーコード
Error L
heroku エラーコード
FATAL
プログラムをクラッシュさせるようなエラー
at=error
制御可能なエラー
at=warning
警告
文献
Heroku のエラーコード
Ruby 3.0.0 リファレンスマニュアル
修正や追記すべきものがあればどしどし教えてください😓
Github