Cloud Trace データは、オブザーバビリティ バケットによって管理されるオブザーバビリティ データセットに保存されます。ストレージ モデルを理解すると、トレースデータの保存場所を制御し、暗号化ポリシーを適用し、Observability Analytics と BigQuery が提供する分析サービスにテレメトリーを接続できます。
BigQuery を使用してトレースデータを分析する方法については、 リンクされた BigQuery データセットを作成するをご覧ください。
オブザーバビリティ ストレージ モデル
Observability API ストレージ モデルは、次のアーキテクチャに依存しています。
- オブザーバビリティ バケット
- オブザーバビリティ バケットは、データを保存するデータセットの管理エンティティです。オブザーバビリティ バケットは特定のロケーションにあり、データ保持ポリシーが設定されています。サービス Google Cloud が
Observability API を使用してデータを保存すると、サービスの名前、データを保存するデータセット、
保存されたデータへの読み取りアクセスを提供するビューに基づいて、
オブザーバビリティ バケットが作成されます。
たとえば、Cloud Trace サービスの場合、システムは
システム作成のバケットに
_Trace、データセットにSpans、ビューに_AllSpansという名前を付けます。オブザーバビリティ バケットの構造については、Bucketをご覧ください。 - データセット
- データセットにはデータが保存されます。データセットを管理するオブザーバビリティ バケットを作成すると、データセットが 1 つ自動的に作成されます。たとえば、
_Traceバケットを作成すると、トレースデータを保存するSpansという名前のデータセットも作成されます。データセットの構造 については、Datasetをご覧ください。 - データセットのビュー
- 各データセットは 1 つ以上のビューをホストします。ビュー は、データセット内のエントリのサブセットへの読み取りアクセスを提供します。データセットを作成すると、ビューが 1 つ作成されます。このビューには、データセット内のすべてのデータが含まれます。
ビューの名前はサービスによって異なります。たとえば、
Cloud Trace サービスの場合、システムによって
_AllSpansSpansデータセットにビューが作成されます。ビューの構造については、Viewをご覧ください。 - データセットのリンク
各データセットに含めることができるリンクは 1 つまでです。データセットのリンク を作成すると、リンクされた BigQuery データセットが作成されます。その後、BigQuery または BigQuery API を使用する他のサービスを使用して、データセット内のデータをクエリできます。 リンクの構造については、
Linkをご覧ください。データセットのリンクは自動的に作成されません。
トレースデータのストレージ構成
トレースデータは、_Trace という名前のオブザーバビリティ バケットによって管理されるデータセットに保存されます。データセットを保持するには、_Trace バケットが存在する必要があります。
_Trace バケットは、自動または手動で作成できます。
自動作成: アプリケーションまたは Google Cloud サービスからトレースデータを受信すると、バケットが自動的に作成されます。バケットのロケーションと暗号鍵を決定するために、オブザーバビリティ バケットに適用可能なデフォルト設定が使用されます。デフォルト設定を定義していない場合、サポートされているロケーションが選択され、バケットは Google のデフォルトの暗号化を使用します。
Cloud Run functions、Cloud Run、App Engine によって生成されたトレースデータによって、オブザーバビリティ バケットが作成されることはありません。 これらのサービスのスパンは、オブザーバビリティ バケットが存在する場合にのみ保存されます。
手動作成: Observability API を使用して、
_Traceバケットを Google Cloud プロジェクトがトレースデータを受信する前に作成できます。バケットのロケーションを指定する必要があります。Cloud Key Management Service 鍵を指定できます。- 鍵を指定すると、保存されたデータの暗号化にその鍵が使用されます。
- Cloud KMS 鍵を指定しない場合、バケットの親リソースに適用されるデフォルト設定によって暗号鍵が決まります。デフォルト設定で Cloud KMS 鍵が指定されている場合、その鍵で保存されたデータが暗号化されます。 それ以外の場合は、Google のデフォルトの暗号化が使用されます。
_Trace バケットが作成されると、バケットの
Spans という名前のデータセットと、データセットの _AllSpans という名前のビューも作成されます。このビューには、データセット内のすべてのデータが含まれます。
詳しくは以下をご覧ください。
[Trace エクスプローラ] ページにトレースデータが表示される場合、_Trace という名前のオブザーバビリティ バケットが存在します。データが表示されない場合、またはストレージが初期化されていないことを示すバナーが表示される場合は、次のいずれかをお試しください。
オブザーバビリティ バケットのデータ所在地
特定のロケーションにデータを保存する、または顧客管理の暗号鍵(CMEK)を使用するためのコンプライアンス要件や規制要件がある場合は、組織のポリシーとオブザーバビリティ バケットのデフォルト設定の両方を構成することをおすすめします。
組織、フォルダ、プロジェクトの場合、オブザーバビリティ バケットのデフォルト設定を使用すると、次のものを構成できます。
- デフォルトのストレージ ロケーション。
- ロケーションごとに、デフォルトの Cloud Key Management Service 鍵。
デフォルト設定は、次の 2 つの方法で使用されます。
オブザーバビリティ バケットが自動的に作成されると、デフォルト設定を使用してバケットのロケーションと暗号鍵が決定されます。デフォルト設定を定義していない場合、ロケーションが選択され、バケットは Google のデフォルトの暗号化を使用します。
API リクエストを発行してオブザーバビリティ バケットの作成を開始するときに、ロケーションを指定します。ただし、API リクエストの引数で鍵が指定されていない限り、デフォルト設定で定義された Cloud KMS 鍵が自動的に使用されてデータが暗号化されます。
オブザーバビリティ バケットの親は常にプロジェクトであるため、バケットを作成すると、まずプロジェクト レベルのデフォルト設定が検索されます。存在しない場合は、親の祖先でデフォルト設定が検索されます。たとえば、フォルダのデフォルト設定を定義すると、デフォルト設定が構成されている子孫を除き、そのフォルダの子孫にその設定が適用されます。
組織のポリシーを使用して、新しいオブザーバビリティ バケットのロケーションを制限したり、CMEK の使用を必須にしたり、暗号化に使用できる Cloud KMS 鍵を制限することもできます。CMEK の使用を必須とする組織のポリシーを構成する場合は、オブザーバビリティ バケットのデフォルト設定を構成する必要があります。そうしないと、システム作成のオブザーバビリティ バケットのプロビジョニングが失敗します。
詳細については、 オブザーバビリティ バケットのデフォルトを設定するをご覧ください。制限事項
次のことはできません。
- オブザーバビリティ バケットを変更または削除する。
- データセットを作成、削除、変更する。
- ビューを作成、削除、変更する。
- Google Cloud コンソールを使用して、バケット、データセット、ビュー、リンクを一覧表示する。