翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
X-Ray SDK for Ruby を使用してセグメントに注釈とメタデータを追加する
注釈やメタデータにより、リクエスト、環境、またはアプリケーションに関する追加情報を記録することができます。X-Ray SDK が作成するセグメントまたは作成するカスタムサブセグメントに、注釈およびメタデータを追加できます。
注釈は文字列、数値、またはブール値を使用したキーと値のペアです。注釈は、フィルタ式用にインデックス付けされます。注釈を使用して、コンソールでトレースをグループ化するため、またはGetTraceSummaries
API を呼び出すときに使用するデータを記録します。
メタデータは、オブジェクトとリストを含む、任意のタイプの値を持つことができるキーバリューのペアですが、フィルタ式に使用するためにインデックスは作成されません。メタデータを使用してトレースに保存する追加のデータを記録しますが、検索で使用する必要はありません。
注釈とメタデータに加えて、セグメントにユーザー ID 文字列を記録することもできます。ユーザー ID はセグメントの個別のフィールドに記録され、検索用にインデックスが作成されます。
X-Ray SDK for Ruby で注釈を記録する
注釈を使用して、検索用にインデックスを作成するセグメントまたはサブセグメントに情報を記録します。
注釈の要件
-
キー – X-Ray 注釈のキーには最大 500 文字の英数字を使用できます。スペースまたはドットやピリオド (.) 以外の記号は使用できません。
-
値 – X-Ray 注釈の値には最大 1,000 の Unicode 文字を使用できます。
-
注釈の数 – トレースごとに最大 50 の注釈を使用できます。
注釈を記録するには
-
xray_recorder
から現在のセグメントまたはサブセグメントの参照を取得します。require 'aws-xray-sdk' ... document = XRay.recorder.current_segment
or
require 'aws-xray-sdk' ... document = XRay.recorder.current_subsegment
-
ハッシュ値を使って
update
を呼び出します。my_annotations = { id: 12345 } document.annotations.update my_annotations
以下は、ドットを含む注釈キーを使用して
update
を呼び出す方法を示す例です。my_annotations = { testkey.test: 12345 } document.annotations.update my_annotations
SDK は、セグメントドキュメントの annotations
オブジェクトにキーと値のペアとして、注釈を記録します。同じキーで add_annotations
を 2 回呼び出すと、同じセグメントまたはサブセグメントに以前記録された値が上書きされます。
特定の値を持つ注釈のあるトレースを見つけるには、annotation[
フィルタ式の キーワードを使用します。key
]
X-Ray SDK for Ruby でメタデータを記録する
メタデータを使用して、検索用にインデックスを作成する必要のないセグメントまたはサブセグメントに情報を記録します。メタデータ値は、文字列、数値、ブール値、または JSON オブジェクトや JSON 配列にシリアル化できる任意のオブジェクトになります。
メタデータを記録するには
-
xray_recorder
から現在のセグメントまたはサブセグメントの参照を取得します。require 'aws-xray-sdk' ... document = XRay.recorder.current_segment
or
require 'aws-xray-sdk' ... document = XRay.recorder.current_subsegment
-
文字列キー、ブール値、数値、文字列値、オブジェクト値、文字列名前空間を使用して
metadata
を呼び出します。my_metadata = { my_namespace: { key: 'value' } } subsegment.metadata my_metadata
同じキーで metadata
を 2 回呼び出すと、同じセグメントまたはサブセグメントに以前記録された値が上書きされます。
X-Ray SDK for Ruby でユーザー ID を記録する
リクエストセグメントにユーザー ID を記録して、リクエストを送信したユーザーを識別します。
ユーザー ID を記録するには
-
xray_recorder
から現在のセグメントへの参照を取得します。require 'aws-xray-sdk' ... document = XRay.recorder.current_segment
-
セグメントのユーザーフィールドを、リクエストを送信したユーザーの文字列 ID に設定します。
segment.user = '
U12345
'
コントローラーでユーザーを設定し、アプリケーションがリクエストの処理を開始するとすぐに、ユーザー ID を記録できます。
ユーザー ID のトレースを見つけるには、user
フィルタ式で、 キーワードを使用します。