"Loggingモジュールではじめるログ出力入門" で PyCon JP 2021 に登壇した
この度、PyCon JP 2021 で発表をするという機会に恵まれました。
発表内容やプロポーザルを出した動機、感想と振り返り、そして多方面への謝辞を述べます。
発表資料
ソースコード
発表内容
- ゴールとスコープ
- Logging モジュール探訪
2.1 Logging モジュールの概要
2.2 Logging モジュールの構成要素
2.3 Logger の性質
2.4 Logger の設定と出力(アプリケーション編)
2.5 Logger の設定と出力(ライブラリ編) - パブリッククラウドサービスでのログ出力
3.1 実行環境とその背景
3.2 Amazon Web Services
3.3 Google Cloud Platform - まとめ
プロポーザルを出した動機
私自身、公式ドキュメントと多くの技術ブログのおかげでなんとか Logging モジュールに入門できたのですが(大変感謝しております)、ちょっと大変だったかな〜という感想でしたので、両者の間を埋める何かを作りたかった、というのが動機です。プロポーザルで書いた文章をそのまま載せます。
私がこのトーク内容を考えたのは、初学者であったときの私が求めていた、"Logging モジュールを知るための第一歩"となる情報をまとめて、Python 初学者の方へ共有できればと思ったためです。 ログ出力を学ぶにあたり、私は公式ドキュメントと、Python を題材にした技術ブログを行き来していました。公式ドキュメントは、モジュールの仕様について詳細に記載されていて大変参考になるものの、初学者にとっては分量が多く、コーディング例の記述は限られています。もう一方の技術ブログは、具体的なコーディング例が参考となる反面、その背景にある体系的な知識を得にくい、という印象を持ちました。このトークが、公式ドキュメントと技術ブログを行き来する際の見取り図になればと考えています。また、Logging モジュールの内側を紹介することで、Python ってやっぱりおもしろい!と思ってもらえたら嬉しく思います。
感想と振り返り
Discord があったので、観に来てくださった方々とのやりとりをスムーズに行うことができました。 想像以上に多くの方が興味をもってくださったので、とても嬉しかったです。ありがとうございました。
チャットの反応を見るかぎりでは、上記の動機の部分や掲げたゴールは達成できたのではないかな?と思っています。
Ask the speaker のボイスチャンネルでお声がけくださった方もいて、時間の都合で省いた内容をフォローすることができました。 一番力を入れた概要図を褒めてもらえたので、それはそれは良い気分になりました。
反省点としては、テーマを Python 標準モジュールにしたので、カバー範囲が広くなってしまったなぁというのが引っかかっています(事後ですが)。テーマを決めるのって難しいですね。
また、最後に話したような心構え的なところから一歩進んだ、具体的な手法こそが大事なところなので、そうした内容も自分の中で整理していきたいと思っています。たとえば、以下のような内容です。
- どんなところでログを仕込めばいいのか
- 適切な流量ってどのくらいなのか
- 構造化ログはどう考えればよいのか
- よくあるパターンはどんなのがあるか
発表時のチャットで参考になる情報をいただきましたので、これからも色々調べたり試したりしていきたいと思います。
謝辞
@amedama さま、@nya さま
スライド末尾でも挙げていますが、こちらの Qiita の記事(特にコメント欄での議論)が、Logging モジュールの実装背景について考えを巡らすきっかけとなりました。今回の登壇はこの記事から始まっています。厚く御礼申し上げます。
社内関係者の皆様
社内練習でのフィードバックにより、発表内容をブラッシュアップすることができました。また、場数を踏むというのは大事だなと改めて感じました。ありがとうございました。
運営の皆様
そしてなにより、無事に発表できたのは、運営の皆様のおかげです。当日に至るまでの段取りがしっかりしていて、困ったことは一つもありませんでした。リハーサルや本番当日も細やかな気遣いをしてくださり、発表に不慣れな私でも事故ることなく終えることができました。
素晴らしいカンファレンスをありがとうございました!PyCon JP 2022 も楽しみです!