このドキュメントでは、Cloud Trace データのストレージ モデルについて説明します。オブザーバビリティ バケット、オブザーバビリティ ビュー、リンクが導入されています。リンクを作成すると、BigQuery からトレースデータをクエリできます。
このドキュメントでは、個々のスパンの保存方法を指定するスキーマについては説明しません。詳細については、トレース スキーマをご覧ください。
オブザーバビリティ ストレージ モデル
オブザーバビリティ API のストレージ モデルは、次のアーキテクチャに依存しています。
- オブザーバビリティ バケット
- オブザーバビリティ バケットは、データを保存するデータセットの管理エンティティです。オブザーバビリティ バケットは特定の場所にあり、データ保持ポリシーが設定されています。 Google Cloud サービスが Observability API を使用してデータを保存すると、システムはサービスの名前に基づいてオブザーバビリティ バケットを作成します。たとえば、Cloud Trace サービスの場合、システムで作成されたバケットの名前は
_Traceです。オブザーバビリティ バケットの構造については、Bucketをご覧ください。 - データセット
- データセットはストレージ エンティティです。各データセットは、オブザーバビリティ バケットの子です。システムが Google Cloud サービスのオブザーバビリティ バケットを作成すると、1 つのデータセットも作成されます。たとえば、システムが
_Traceバケットを作成すると、Spansという名前のデータセットが作成されます。このデータセットにはトレースデータが保存されます。データセットの構造については、Datasetをご覧ください。 - データセットのビュー
- 各データセットは 1 つ以上のビューをホストします。ビューは、データセット内のエントリのサブセットに対する読み取りアクセスを提供します。データセットを作成すると、システムによってビューが 1 つ自動的に作成されます。このビューには、データセット内のすべてのデータが含まれます。ビューの名前はサービスによって異なります。たとえば、Cloud Trace サービスの場合、システムは
Spansデータセットに_AllSpansという名前のビューを作成します。ビューの構造については、Viewをご覧ください。 - データセットのリンク
各データセットに含めることができるリンクは 1 つだけです。データセットのリンクを作成すると、リンクされた BigQuery データセットが作成されます。その後、BigQuery または BigQuery API を使用する他のサービスを使用して、データセット内のデータに対してクエリを実行できます。リンクの構造については、
Linkをご覧ください。システムはデータセットにリンクを自動的に作成しません。
トレースデータのストレージ構成
トレースデータは、_Trace という名前のオブザーバビリティ バケットに保存されます。システムは、このバケットに Spans という名前のデータセットを作成します。このデータセットに、_AllSpans という名前のビューが作成されます。このビューには、データセット内のすべてのデータが含まれます。
バケットが存在せず、次のいずれかの条件を満たす場合、システムは _Trace という名前のバケットを 1 回だけ作成しようとします。
アプリケーションは、Cloud Trace API または Telemetry API を使用して、トレースデータを Google Cloud プロジェクトに送信します。
Google Cloud サービスで Cloud Trace を有効にすると、そのサービスはトレースデータを Google Cloud プロジェクトに送信します。たとえば、Cloud Service Mesh はトレースの収集をサポートしていますが、トレースの収集はデフォルトで無効になっています。Cloud Service Mesh のトレースを有効にすると、そのサービスから送信されたデータによってシステムがバケットを作成します。
Cloud Run functions、Cloud Run、App Engine によって生成されたトレースデータは、システムがオブザーバビリティ バケットを作成する原因にはなりません。これらのサービスのスパンは、オブザーバビリティ バケットが存在する場合にのみ保存されます。
_Trace という名前のオブザーバビリティ バケットが存在するかどうかを確認するか、このバケットを作成するフローをトリガーするには、次の操作を行います。
-
Google Cloud コンソールで、
Trace エクスプローラ ページに移動します。
このページは、検索バーを使用して見つけることもできます。
次のいずれかを行います。
ページにトレース データが表示された場合は、何もする必要はありません。Google Cloud プロジェクトに
_Traceという名前のオブザーバビリティ バケットが含まれている。ページに次のバナーが表示された場合、トレースデータがないか、Cloud Run functions、Cloud Run、App Engine のデータのみが存在します。
Trace storage is not initialized for this project. Enable trace storage to begin collecting trace data._Traceという名前のオブザーバビリティ バケットを作成するフローをトリガーする場合は、バナーに移動して [有効にする] をクリックします。ページに次のバナーが表示された場合、
_Traceという名前のオブザーバビリティ バケットの初期化が失敗しています。このメッセージが表示されたら、バナーに移動して [チケットを申請] をクリックします。Initializing trace storage has failed for an unexpected reason. Please file a support ticket for assistance.
制限事項
次のことはできません。
- オブザーバビリティ バケットを変更または削除します。
- データセットを作成、削除、変更します。
- ビューの作成、削除、変更を行います。
- Google Cloud コンソールを使用して、バケット、データセット、ビュー、リンクを一覧表示します。
us以外のロケーションにオブザーバビリティ バケットを作成します。オブザーバビリティ バケットはusロケーションに存在する必要があります。
次のステップ
トレースデータのストレージを管理する方法については、トレース ストレージを管理するをご覧ください。
[Trace エクスプローラ] ページの使用方法の詳細については、トレースを検索して調査するをご覧ください。