PyCon JP 2024

ログって何に使うんですか?

ログを出力しましょう、とはよく言われますが、何を、どこまで、出したら良いのかはログを出す目的がないとイメージしづらいものです。とりあえず色々実装してからログを出すことを後で考えるという人も多いのではないでしょうか。とりあえずそれっぽいログ実装をして、テストや運用が始まってから情報が足りずに困った、という人も多いのが実情です。このトークでは、ログ出力が何に使われるのか、どうやって実装するとよいのか、の全体像をPython+Webの文脈で紹介します。


ロギング(Logging)の話題は多くの切り口があります。それぞれの切り口、レイヤーについてログ出力関連の技術を紹介します。

・ログを出そう。まずはloggingモジュールの基本設定から
・処理状況を伝えるINFOログ。なにを出したら良い?
・INFO、WARNING、ERROR、状況に合ったログレベルを設定しよう
・エラーが起きたらログを見る?エラーログは一番分かりやすい用途
・エラーじゃないけど、これどういう状況?エラーがないときに効果を発揮するINFOログ
・運用中の問い合わせに答えるためのトレース情報
・運用開始前にも効果を発揮、想定外の操作を行うテストのログ
・フロント操作、サーバー処理、DB問合せ。trace_idによるログ情報の関連付け
・構造化ログによるデータ処理


Why did you choose this topic?

ログ出力は、実装後に困った経験がないとイメージしづらいものです。また、その経験があれば適切なログ出力ができるかというとそうでもありません。Python界隈でもログ出力に関連するツールが充実しつつあります。ログ出力の用途を知り、現在のツールを知り、その効果を把握したうえで実装前の設計時点で考慮できるようにする、そんなプログラマーが増えるとよいと思い、このトークを提案します。

Knowledges and know-how the audience can get from your talk

ログ出力の用途、現在のログ関連ツールの状況、ログ出力の効果

Prior knowledges speakers assume the audience to have

・ログ出力なんも分からん、という方
・ログ出力とか要らんでしょ、という方
・ログ出力実装してみたけど役に立ってる感じがしない方
・ログはあるけど追うのが大変だと思ってる方

Audience experiment

Beginner

Language of presentation

日本語

Language of presentation material

日本語