Google Cloud Observability ストレージの概要

Google Cloud Observability は、Cloud Logging、Cloud Monitoring、Cloud Trace のテレメトリーデータを構造化ストレージ コンテナに保存して整理します。 ストレージ モデルを理解すると、データ所在地の構成、暗号化ポリシーの適用、BigQuery などの分析サービスへのテレメトリーの接続に役立ちます。

ログデータ

ログデータは、ログバケットに保存されます。ログバケットは、 Logging がログデータの保存に使用するコンテナです。すべての Google Cloud プロジェクト、 請求先アカウント、フォルダ、組織には、_Required_Defaultという名前のログバケットが含まれています。

デフォルトでは、ログデータはデータの生成元の Google Cloud プロジェクト、請求先アカウント、フォルダ、 組織に保存されます。ただし、Logging を構成して、ログデータをその生成元のリソースから別のプロジェクトや一元化されたログバケットなどの別の場所に転送できます。 詳細については、ログエントリを保存すると ログエントリを転送するをご覧ください。

Cloud Logging を使用すると、ログデータをリージョン化できます

  • 組織のポリシーを使用して、新しいログバケットのロケーションを制限し、ログバケットで顧客管理の暗号鍵(CMEK)を使用するように要求できます。
  • 組織とフォルダの場合、Cloud Logging のデフォルトのリソース設定を使用すると、次のことを構成できます。

    • 新しい _Required ログバケットと _Default ログバケットのロケーション。
    • ログデータを暗号化する KMS 鍵。
    • デフォルト シンクの構成。

    リソース階層内の子孫は、デフォルトのリソース設定も構成しない限り、これらの設定を自動的に継承します。たとえば、組織の Cloud Logging のデフォルトのリソース設定を構成すると、組織のリソース階層内のすべてのフォルダとプロジェクトが自動的にその設定を継承します。ただし、その組織内のフォルダの Cloud Logging のデフォルトのリソース設定を設定すると、フォルダレベルの設定が使用されます。

    Cloud Logging のデフォルトのリソース設定は、既存のリソースではなく、新しいリソースにのみ適用されます。 詳細については、Cloud Logging のデフォルトのリソース設定を構成するをご覧ください。

指標データ

指標データは、データの生成元の Google Cloud プロジェクトに保存されます。

ストレージ ポリシーの詳細については、 Monitoring のデータ所在地をご覧ください。

トレース データ

トレースデータは、_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 という名前のビューも作成されます。そのビューには、データセット内のすべてのデータが含まれます。

詳しくは以下をご覧ください。

オブザーバビリティ ストレージ モデル

Observability API ストレージ モデルは、次のアーキテクチャに依存しています。

オブザーバビリティ バケット
オブザーバビリティ バケットは、データを保存するデータセットの管理エンティティです。オブザーバビリティ バケットは特定のロケーションにあり、データ保持ポリシーがあります。サービスが Google Cloud Observability API を使用してデータを保存すると、サービスの名前、データを保存するデータセット、保存されたデータへの読み取りアクセスを提供するビューに基づいて、オブザーバビリティ バケットが作成されます。たとえば、Cloud Trace サービスの場合、システムは システム作成のバケットに _Trace、データセットに Spans、ビューに _AllSpans という名前を付けます。オブザーバビリティ バケットの構造については、 Bucket をご覧ください。
データセット
データセットにはデータが保存されます。オブザーバビリティ バケットを作成すると、データセットを管理するデータセットが自動的に作成されます。たとえば、_Trace バケットを作成すると、トレースデータを保存する Spans という名前のデータセットも作成されます。データセットの構造 については、Dataset をご覧ください。
データセットのビュー
各データセットは 1 つ以上のビューをホストします。ビューは、データセット内のエントリのサブセットへの読み取りアクセスを提供します。 データセットを作成すると、1 つのビューが作成されます。そのビューには、データセット内のすべてのデータが含まれます。 ビューの名前はサービスによって異なります。たとえば、 Cloud Trace サービスの場合、システムによって _AllSpans Spansデータセットにビューが作成されます。ビューの構造については、 View をご覧ください。
データセットのリンク

各データセットに含めることができるリンクは 1 つまでです。データセットのリンクを作成すると、リンクされた BigQuery データセットが作成されます。 その後、BigQuery または BigQuery API を使用する他のサービスを使用して、データセット内のデータをクエリできます。 リンクの構造については、Link をご覧ください。

データセットのリンクは自動的に作成されません。

たとえば、トレースデータは _Trace オブザーバビリティ バケット内の Spans データセットに保存されます。このデータセットには、保存されているすべてのスパンを含む _AllSpans ビューが作成されます。

オブザーバビリティ バケットのデータ所在地

特定のロケーションにデータを保存する、または顧客管理の暗号鍵(CMEK)を使用するためのコンプライアンス要件や規制要件がある場合は、組織のポリシーとオブザーバビリティ バケットのデフォルト設定の両方を構成することをおすすめします。

組織、フォルダ、プロジェクトの場合、オブザーバビリティ バケットのデフォルト設定を使用すると、次のことを構成できます。

  • デフォルトのストレージ ロケーション。
  • ロケーションごとに、デフォルトの Cloud Key Management Service 鍵。

デフォルト設定は、次の 2 つの方法で使用されます。

  • オブザーバビリティ バケットが自動的に作成されると、デフォルト設定を使用してバケットのロケーションと暗号鍵が決定されます。デフォルト設定を定義していない場合、ロケーションが選択され、バケットは Google のデフォルトの暗号化を使用します。

  • API リクエストを発行してオブザーバビリティ バケットの作成を開始すると、ロケーションが指定されます。ただし、API リクエストの引数で鍵が指定されていない限り、デフォルト設定で定義された Cloud KMS 鍵を使用してデータが自動的に暗号化されます。

オブザーバビリティ バケットの親は常にプロジェクトであるため、バケットを作成すると、プロジェクト レベルのデフォルト設定が最初に検索されます。存在しない場合は、親の祖先でデフォルト設定が検索されます。たとえば、フォルダのデフォルト設定を定義すると、デフォルト設定が構成されている子孫を除き、そのフォルダの子孫にその設定が適用されます。

組織のポリシーを使用して、新しいオブザーバビリティ バケットのロケーションを制限したり、CMEK の使用を必須にしたり、暗号化に使用できる Cloud KMS 鍵を制限したりすることもできます。CMEK の使用を必須とする組織のポリシーを構成する場合は、オブザーバビリティ バケットのデフォルト設定を構成する必要があります。そうしないと、システム作成のオブザーバビリティ バケットのプロビジョニングが失敗します。

詳細については、 オブザーバビリティ バケットのデフォルトを設定するをご覧ください。

制限事項

次のことはできません。

  • オブザーバビリティ バケットを変更または削除する。
  • データセットを作成、削除、変更する。
  • ビューを作成、削除、変更する。
  • Google Cloud コンソールを使用して、バケット、データセット、ビュー、リンクを一覧表示する。

次のステップ