トレースデータの集計表現を表示したり、特定のラベルを含む個々のトレースやトレースを検索して調査したりするには、[Trace エクスプローラ] ページを使用します。
次のスクリーンショットは、トレース データがどのように表示されるかを示しています。
スパンの集計分析を行うクエリを実行するには、[オブザーバビリティ分析] ページまたは BigQuery を使用します。どちらのインターフェースも、SQL を使用してスパンデータをクエリできます。[オブザーバビリティ分析] ページを使用すると、クエリ結果を表またはグラフとして表示できます。SQL を使用してトレースデータをクエリする方法については、トレースをクエリして分析するをご覧ください。
この機能は Google Cloud プロジェクトでのみサポートされています。App Hub の構成には、App Hub ホスト プロジェクトまたは管理プロジェクトを選択します。
[Trace エクスプローラ] ページについて
トレースデータの傾向とパターンを特定できるように、レイテンシ データが集計され、グラフに表示されます。ヒートマップでは、セルのスパンの数が色で表されます。スパンの多いセルは、スパンの少ないセルよりも色が濃くなります。各セルのツールチップには、レイテンシなどの情報が表示されます。レイテンシのパーセンタイルとスパン率の情報を表示することもできます。
問題を調査する際に、特定のトレースや特定のプロパティを持つスパンのみを表示することがあります。
表示されるスパンを制限するには、フィルタを適用します。たとえば、サービス、アプリケーション、エラー状態などのプロパティでフィルタできます。
特定のトレースを表示するには、ツールバーのクリック ページビュー トレースを検索オプションを使用します。
外れ値を特定し、個々のスパンの詳細を表示するには、表形式のセクションを使用します。
[スパン] タブと [グループ化] タブの行は、期間ヘッダーで並べ替えることができます。
さまざまなサービスで生成されているスパンの数を確認するには、[グループ化] タブを使用します。各行はサービスとスパン名に対応し、各エントリのレイテンシ統計情報が表示されます。
スパンまたはグループ化の詳細を確認するには、表形式のセクションの行からエントリを選択します。フライアウトが開き、トレースのコンテキストでスパンが表示されます。このビューでは、スパンとその属性を調べたり、イベントとログデータを表示したりできます。トレース内のスパンと属性をキーワードで検索することもできます。
[Trace エクスプローラ] ページで使用されるトレースデータは、次の要素によって異なります。
スコープ設定。システムがトレースデータを検索するビューを決定します。ページが開くと、[スコープ] 要素がデフォルトのトレース スコープに設定され、システムはそのスコープにリストされているビューに対してトレースデータをクエリします。
新しいプロジェクトでは、デフォルトのトレース スコープにプロジェクトの
_AllSpansが一覧表示されます。このビューは、プロジェクトが保存するすべてのトレースデータへの読み取りアクセス権を付与します。検索対象ビューに対する Identity and Access Management(IAM)権限。プロジェクトのトレース データを表示する権限がない場合、 Google Cloud コンソールに警告メッセージが表示され、そのプロジェクトのデータは表示されません。
期間の設定。
適用するフィルタ。
このページの残りの部分では、トレースデータを検索して調査する方法について詳しく説明します。
始める前に
Google Cloud コンソールを使用してトレースデータを表示し、トレース スコープを選択するために必要な権限を取得するには、プロジェクトに対する Cloud Trace ユーザー (roles/cloudtrace.user)IAM ロールを付与するよう管理者に依頼してください。ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。
この事前定義ロールには、 Google Cloud コンソールを使用してトレースデータを表示し、トレーススコープを選択するために必要な権限が含まれています。必要とされる正確な権限については、「必要な権限」セクションを開いてご確認ください。
必要な権限
Google Cloud コンソールを使用してトレースデータを表示し、トレーススコープを選択するには、次の権限が必要です。
-
トレース スコープを選択する:
cloudtrace.traceScopes.[get, list] -
デフォルトのトレース スコープを読み取る:
observability.scopes.get
カスタムロールや他の事前定義ロールを使用して、これらの権限を取得することもできます。
ロールの詳細については、Identity and Access Management を使用してアクセスを制御するをご覧ください。
集計されたトレースデータを表示する
トレースデータの集計情報を表示するには、次の操作を行います。
-
Google Cloud コンソールで、
[Trace エクスプローラ] ページに移動します。このページは、検索バーを使用して見つけることもできます。
最初のトレースデータが Google Cloud プロジェクトに書き込まれてから、そのデータを表示できるようになるまでに数分かかることがあります。数分待ってもトレースデータが表示されない場合は、プロジェクトに表示するデータがないか、構成に問題がある可能性があります。これらの問題を解決する方法については、トラブルシューティング: トレース インターフェースにデータがないをご覧ください。
[Trace エクスプローラ] ページを構成します。
- Google Cloud コンソールのツールバーで、 Google Cloud プロジェクトを選択します。App Hub の構成には、App Hub ホスト プロジェクトまたは管理プロジェクトを選択します。
省略可: Scope 要素を使用して、システムがトレースデータを検索するビューを構成します。
プロジェクトに保存されているトレースデータを表示するには、[Scope] 要素の最初のメニューを
[Project] または
[_Default] に設定します。この 2 つの設定は同等です。複数のプロジェクトに保存されているトレースデータを表示するには、[スコープ] 要素の最初のメニューを開き、[トレース スコープ] を選択して、これらのプロジェクトの
_AllSpansビューを一覧表示するトレース スコープを選択します。選択すると、[スコープ] メニューにトレース スコープ アイコン
と、選択したトレース スコープの名前が表示されます。
システムに表示されるデータは、検索対象のビューに対する IAM ロールによって異なります。たとえば、ビューのデータを表示するために必要な権限がない場合、そのデータは表示されません。
詳細については、トレース スコープの作成と管理をご覧ください。
省略可: 期間セレクタを使用するか、ポインタを使用して X 軸の範囲をハイライト表示して、期間を更新します。
たとえば、レイテンシ データに傾向があるかどうかを確認する場合は、このセレクタを [過去 2 週間] に設定します。スパンデータは 30 日間保存されます。
ヒートマップを確認する:
色を使用して、傾向と外れ値を特定します。スパンが多いセルは、スパンが少ないセルよりも色が濃くなります。
セルのツールチップを使用して、セルの詳細を表示します。ツールチップには、スパンの数、日時、セルの時間間隔が表示されます。
レイテンシのパーセンタイルとエラー率を確認します。
レイテンシの傾向を表示するには、[グラフビュー] メニューを [スパン期間(パーセンタイル)] に設定します。期間グラフには、50 パーセンタイル、90 パーセンタイル、95 パーセンタイル、99 パーセンタイルが表示されます。
レスポンス ステータスを時間の関数として表示するには、[グラフビュー] メニューを [スパン率] に設定します。グラフには、プロジェクトに送信されるスパンのレートが表示されます。
Spans テーブルと Grouped テーブルを使用して、外れ値を特定したり、統計情報を表示したりします。[スパン] テーブルには、個々のスパンが一覧表示されます。[グループ化] テーブルには、スパンが名前とサービス名またはワークロード名でグループ化されます。
外れ値を表示したり、スパン名を見つけたりするには、テーブルを並べ替えます。任意の列ヘッダーで並べ替えることができます。
たとえば、[スパン] テーブルを期間で並べ替えると、レイテンシの高いスパンを見つけることができます。
平均レイテンシなどの統計情報を表示するには、[グループ化] テーブルを使用します。
App Hub に登録されているサービスとワークロードを見つけるには、[サービス/ワークロード] 列で、サービス アイコン
またはワークロード アイコン
を含むエントリを検索します。App Hub に登録されたサービスまたはワークロードに表示されるリンクをクリックすると、対応するアプリケーション モニタリング ダッシュボードが開きます。
特定のグループ化の詳細を表示するには、行の Span 名を選択します。フライアウトが開き、トレースのコンテキストでスパンが表示されます。その後、スパンとトレースを探索できます。
表示されるスパンを制限するには、フィルタを追加します。トレースデータのフィルタリングの詳細については、次のセクションをご覧ください。
トレースデータをフィルタする
関心のある情報のみを表示するには、フィルタを適用します。フィルタは、表示されるデータを制限します。たとえば、サービス名とステータスでフィルタできます。また、アプリケーションを App Hub にデプロイしている場合は、アプリケーションのトレースデータのみ、またはアプリケーションの一部である特定のサービスやワークロードのトレースデータのみを表示することが必要になることがあります。
フィルタを追加または削除すると、[Trace エクスプローラ] ページに表示されるデータが更新され、適用されたすべてのフィルタに一致するスパンのみが表示されます。
ID でトレースをフィルタする
インシデントや障害のトラブルシューティングを行うときに、トレース ID がわかっている場合があります。そのトレースを調べるには、ツールバーに移動して ページビュー トレースを検索 をクリックし、トレース ID を入力します。
有効な ID を入力すると、[詳細] フライアウトが開き、トレースとそのスパンに関する情報が表示されます。このペインのオプションを使用して、トレースを調べることができます。たとえば、スパンをキーワードで検索できます。
スパンフィルタを適用する
[スパンフィルタ] ペインには、最も一般的なフィルタが一覧表示されます。任意のサブカテゴリから複数のエントリを選択できます。フィルタを追加または削除すると、[フィルタ] バーも更新されます。
すべてのメニューの値はトレースデータから取得されます。メニューにテキストのないオプションが含まれている場合、そのオプションは対応する属性を含まないスパンを指します。
通常、次のスパンフィルタを使用できます。
- OpenTelemetry サービス:
service.name属性でフィルタします。 - スパン名: スパンの名前。
- スパンのステータス: リクエストのステータス。値については、OpenTelemetry SpanStatus ドキュメントをご覧ください。
- 期間: スパンの期間。
- スパンの種類: スパン間の関係を表します。値については、OpenTelemetry SpanKind ドキュメントをご覧ください。
- App Hub アプリケーション:
gcp.apphub.application.idリソース属性でフィルタします。 - App Hub サービス:
gcp.apphub.service.idリソース属性でフィルタします。 - App Hub ワークロード:
gcp.apphub.workload.idリソース属性でフィルタします。
[スパンフィルタ] ペインに表示されていない属性でフィルタする場合は、[フィルタ] バーを使用します。
フィルタバーを使用する
[フィルタ] バーでは、事前定義されたフィルタキーと選択した値を使用してフィルタを適用できます。また、キーと値の両方を入力することもできます。
フィルタを追加するには、[フィルタを追加] を選択して、次のいずれかの操作を行います。
- 定義済みのキー([スパン名] など)を選択し、サブメニューから値を選択します。
[属性フィルタを追加] を選択し、カスタムキーと値を追加します。独自のフィルタキーを入力する場合は、スパンの属性のキーと同じ構文を使用します。
たとえば、ホスト ID でフィルタするには、キーを
host.idに設定します。同様に、ステータス コードでフィルタするには、キーを/http/status_codeに設定します。このシナリオでは、値を200に設定して、フィルタ/http/status_code: 200を作成できます。フィルタで任意の値と一致させるには、[任意値] を選択します。
アプリケーションでフィルタする
App Hub に登録されているサービスとワークロードが生成するスパンを検索または表示するには、スパンに次のリソース属性が含まれている必要があります。
gcp.apphub.application.{container,id,location}gcp.apphub.{workload,service}.{criticality_type,environment_type,id}
上記のリソース属性は、アプリケーションに追加した計測によって生成されます。トレースデータは任意のリソース属性でフィルタできます。ただし、次のスパンフィルタは、アプリケーション、サービス、ワークロードの ID でフィルタします。
- App Hub アプリケーション
- App Hub サービス
- App Hub ワークロード
App Hub に登録されているサービスとワークロードのアプリケーション モニタリング ダッシュボードを開く手順は次のとおりです。
[スパン] または [グループ化] テーブルに移動して、サービスまたはワークロードを見つけます。サービス アイコン
やワークロード アイコン
を探したり、表をフィルタしたりできます。[サービス/ワークロード] 列のリンクを選択します。
トレースを調査する
トレースのコンテキストでスパンを調べるには、次の操作を行います。
[Trace エクスプローラ] ページを開いて構成します。これらの手順については、集計されたトレースデータを表示するをご覧ください。
スパンまたはトレースの詳細を表示するには、次のいずれかを行います。
[Trace エクスプローラ] ページに移動し、テーブルからエントリを選択します。表の行は、任意の表の見出しで並べ替えることができます。フィルタを適用して、テーブルに表示されるスパンを制限できます。
[Trace エクスプローラ] ページのツールバーに移動し、ページビュー トレースを検索 をクリックして、トレース ID を入力します。
[詳細] フライアウトが開き、トレースとそのスパンがタイムライン形式で表示され、選択したスパンに関する情報が表示されます。
フライアウトに分割画面が表示されます。一方のサイドには、トレースのコンテキスト内のスパンが表示されます。もう一方のサイドには、属性、メタデータ、添付されたプロンプトとレスポンスなど、スパン固有の情報を表示できるタブが表示されます。これらのタブの詳細については、属性、ログエントリ、イベントを表示するをご覧ください。
タイムラインの要素は動的です。別のスパンを調べるには、そのスパンを選択して、選択したスパンの属性、ログエントリ、イベントを表示します。
呼び出し階層を調べる
デフォルトでは、呼び出し階層はタイムラインとして表示されます。最初のエントリはトレースを表し、後続の各エントリはスパンを表します。各エントリには次の情報が表示されます。
- [名前] 列には、名前とスパンまたはトレース ID が表示されます。GenAI アイコン
は、スパンに生成 AI イベントまたは属性が含まれていることを示します。 - [サービス/ワークロード] 列には、サービスまたはワークロードの名前が表示されます。この値は、OpenTelemetry 属性
service.nameを使用して設定されます。フォールバックとして、App Engine サービスの場合は、App Engine サービス名が表示されます。 - レイテンシ バーの色と長さは、コマンドのステータスと期間を反映しています。
- レイテンシ バーの円は、ログエントリまたはイベントがスパンに関連付けられていることを示します。この動作を変更するには、[ログとイベント] メニューを使用します。
呼び出し階層を有向非巡回グラフ(DAG)として表示するには、ツールバーの [グラフ] を選択します。
DAG ビューでは、各要素に名前とレイテンシが表示されます。色はスパンのステータスを反映します。ポインタのスクロール ホイールを使用して、グラフのサイズを変更できます。
トレース内のスパンを検索する
トレース内のスパンをキーワードで検索するには、[Trace で検索] フィールドを使用します。
検索は、スパン名、サービス名、ワークロード名、属性フィールドにのみ適用されます。検索できるのはプレーン テキストのみで、ログ、イベント、メタデータは検索できません。
たとえば、「GET」と入力すると、GET を含む [名前]、[サービス/ワークロード]、[属性] ペインのテキストが、大文字と小文字を区別せずにハイライト表示されます。
属性、ログエントリ、イベントを表示する
スパンの [詳細] フライアウトには、次の各タブが含まれています。
入力/出力: OpenTelemetry GenAI セマンティック規則に準拠するイベントが表示されます。このタブは、スパンにこれらのイベントが含まれている場合にのみ表示されます。これらのスパンを特定できるように、スパンにこれらの規則に従うイベントまたは属性が含まれている場合、タイムライン ビューにはスパン名とともに GenAI アイコン
が表示されます。詳細については、生成 AI のイベントと属性を表示するをご覧ください。属性: スパンに添付されている属性が一覧表示されます。トレース エクスプローラでは、GenAI アイコン
を表示して、生成 AI 属性を含むスパンを示します。ラベルの詳細については、トレースラベルをご覧ください。ログとイベント: このタブには、選択したスパンと
trace_idフィールドとspan_idフィールドが一致するイベントとログエントリが表示されます。表示する権限のあるログエントリのみが表示されます。このタブのエントリの詳細を表示するには、keyboard_arrow_down [さらに表示] をクリックします。
ログ エクスプローラ ページでログデータを表示する場合は、[ログを表示] をクリックします。クエリは、特定のトレース、スパン、時間範囲でフィルタするように設定されています。
Stacktraces: 使用可能なスタック トレースを一覧表示します。
メタデータとリンク: スパンに関する一般的な情報が表示されます。
生成 AI イベントと属性を表示する
OpenTelemetry GenAI セマンティック規則と一致する属性またはイベントを含むスパンを特定するには、GenAI アイコン
を探します。
[属性] タブには、スパンに添付された属性が表示されます。生成 AI 属性のみを一覧表示するには、[生成 AI 属性のみ] を有効にします。
[Inputs/Outputs] タブには、これらの規約に準拠するイベントと関連する属性が表示されます。関連する属性は [Attributes] タブにも表示されます。サポートされている構成は次の 2 つです。
スパンに添付されたテキストベースのプロンプトとレスポンス。属性として添付されます。属性は、特性やイベントを記述する Key-Value ペアです。たとえば、キー
gen_ai.systemの値は、生成 AI 機能を提供するシステムを識別します。生成 AI 属性のキーはgen_aiで始まります。Cloud Storage バケットに保存されているマルチモーダル プロンプトとレスポンス。Cloud Trace は、トレースデータとログデータを関連付けてこれらのイベントを特定します。サポートされている構成については、マルチモーダル プロンプトとレスポンスを収集して表示するをご覧ください。
次のスクリーンショットは、スパンに添付されたテキストベースの生成 AI イベントが [入力/出力] にレンダリングされる様子を示しています。
前のスクリーンショットを生成したサンプル アプリケーションについては、OpenTelemetry を使用して LangGraph ReAct エージェントを計測するをご覧ください。
リモート MCP サーバーへの呼び出しを表示する
MCP サーバーによって生成されたスパンを表示するには、次のいずれかを行います。
- スパン名でトレースデータをフィルタします。
キーが
mcp.method.nameで値がtools/callの属性フィルタを追加します。このフィルタは、名前が MCP の OpenTelemetry セマンティック規約に準拠しているスパンを検索するためのものです。名前は次のようになります。
tools/call NAME上記の式で、NAME は呼び出されたエンドポイントを指します。たとえば、
roll_diceのようなものになります。
トレース生成をサポートするリモート Google Cloud MCP サーバーと、これらのサーバーにスパンを生成するように指示するようにアプリケーションを構成する方法については、Trace を使用して MCP 呼び出しを調査するをご覧ください。