ホームページ > バックエンド開発 > Golang > Slog パッケージを使用して Go ログに相関 ID を追加するにはどうすればよいですか?

Slog パッケージを使用して Go ログに相関 ID を追加するにはどうすればよいですか?

Susan Sarandon
リリース: 2024-10-27 07:44:31
オリジナル
910 人が閲覧しました

How to Add Correlation IDs to Your Go Logs with the Slog Package?

Slog パッケージを使用した Go ログへの相関 ID の組み込み

JSON ログ用に Go Slog パッケージを使用する場合、次のことが必要になる場合があります。相関 ID またはトレース ID を使用して、特定のリクエストに関連するログを追跡します。これを実現する方法は次のとおりです。

問題は、Slog パッケージ内にトレース ID オプションを構成する簡単な方法がないことにあります。推奨される解決策は、コンテキストからトレース ID を取得し、それを使用して新しいロガーを生成することです。この新しいロガーを利用して、後続のすべてのメッセージにトレース ID を追加できます。

このソリューションを実装するには、次の手順に従います。

  1. context:

    <code class="go">traceId := ctx.Value("traceId")</code>
    ログイン後にコピー
  2. トレース ID を持つ新しいロガーを作成します:

    <code class="go">newLogger := logger.With("traceId", traceId)</code>
    ログイン後にコピー
  3. 新しいロガーを使用してメッセージをログに記録します:

    <code class="go">// use newLogger that will add traceId to all messages</code>
    ログイン後にコピー

このアプローチでは、新しいロガーを使用して生成されたすべてのメッセージにトレース ID を追加することで、特定のリクエストに関連するログを追跡できます。

以上がSlog パッケージを使用して Go ログに相関 ID を追加するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート