翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
X-Ray SDK for Go を使用してダウンストリーム HTTP ウェブサービスの呼び出しをトレースする
注記
X-Ray SDK/デーモンメンテナンス通知 – 2026 年 2 月 25 日に、 AWS X-Ray SDKs/Daemon はメンテナンスモードに移行します。 AWS は、X-Ray SDK とデーモンのリリースをセキュリティ上の問題にのみ対処するように制限します。サポートタイムラインの詳細については、「X-Ray SDK とデーモンのサポートタイムライン」を参照してください。OpenTelemetry に移行することをお勧めします。OpenTelemetry への移行の詳細については、「X-Ray による計装から OpenTelemetry による計装への移行」を参照してください。
アプリケーションがマイクロサービスまたはパブリック HTTP API を呼び出すときは、次の例に示すように、xray.Client を使用してこれらの呼び出しを Go アプリケーションのサブセグメントとして計測できます。次の例に示すように、http-client は HTTP クライアントです。
クライアントは、提供された HTTP クライアントのシャローコピーを作成します。これは http.DefaultClient のデフォルトの xray.RoundTripper でラウンドトリップされます。
例
myClient := xray.Client(http-client)次の例では、ctxhttp ライブラリを使用して発信 HTTP コールをインストルメントします。xray.Client。ctxアップストリームコールから渡すことができます。これにより、既存のセグメントコンテキストが使用されることが保証されます。たとえば、X-Ray では Lambda 関数内に新しいセグメントを作成できないので、既存の Lambda セグメントコンテキストを使用する必要があります。
resp, err := ctxhttp.Get(ctx, xray.Client(nil), url)