技術の変遷は秋の空、ワイの興味は飽きの空。時々OSSとテスト。
ダイの大冒険という漫画が大好きなbun913です。
みなさんログの効果的な運用できていますか?
WebアプリケーションFWにログの仕組みがついていたりして、ログレベルやログの形式だけオプションで指定するみたいなことも多いですよね。
ただ、ログレベルについて体系的に書かれた書籍とかって少なくないですか?
私はあまりみたことがありません。
今回は私がよく聞かせていただいているfukabori.fmの101. A Philosophy of Software Design (2/3) w/ twada | fukabori.fm回でログレベルについて、あのt_wadaさんがお話してくれていましたので、その内容について自身の感想なども交えつつまとめてみたいと思います!
t_wadaさんは各レベルにおいて、以下のように使い分けをされてきたとのことでした。
console.log("ここは通るはず")
みたいな感じStep1 Sart
Step1 End
のように各ステップが正常に進んでいることを出力したりとかFileNotFoundError
のような例外を握りつぶしたという事実を出力したり大変申し訳ないことに「全面的に同意」という感想で、私もこれまでの現場でこのように運用してきたことが多いと思います。
長いバッチ処理でinfo
レベルのログを見ながら「あ。今Step3まで終わったのか」と確認していたのを思い出します。
ただ「t_wadaさんが言語化して話してくれている」という事実が非常に重要で、ログレベルの運用ガイドラインについて困ることがあれば一つの思想として「このポッドキャストでt_wadaさんは〜」と案内することができます。
今回のようにfukabori.fmのt_wadaさん回はとても学びのあることが非常に多いので、ぜひみなさん他の回も聞いてみてください!
【参考】
Qiitaの以下の記事でもログレベルについて触れられていて、非常に勉強になります。大体の考え方は共通しているように思えますね。