GrafanaCloud
Blog:
slogでログにTraceIDを出す

go1.21で構造化ログを出すslogが標準ライブラリに導入されました。これを使ってTraceIDを一緒にログに出すようにします。

Blog:
Goプログラムのトレースを取ってGrafanaCloudで可視化する

GoでAPIサーバーを構築していると、「エラーログがでたけどこのログはどのリクエストに紐づいているんだっけ?」となることが多々あります。traceは主に処理時間の内訳や呼び出しの依存関係を示してくれますが、スパンのコンテキストにいろんな値を保持しておき、それをエラーログと結びつけることでデバッグに便利に使えます。また、自身でtraceやlogの記録・可視化を行う環境を構築することは面倒ですが、GrafanaCloudの無料枠を使うとこれが快適に行えるので今回はこれを活用します。