このドキュメントでは、オブザーバビリティ データセットにリンクされた BigQuery データセットを作成する方法について説明します。その後、BigQuery Studio や BigQuery API などの BigQuery サービスを使用して、リンクされたデータセットをクエリできます。
オブザーバビリティ分析の使用を開始するには、トレースのクエリと分析を行うをご覧ください。
リンクされたデータセットが必要な場合
トレースデータをクエリする場合や、トレースデータとログデータをクエリする場合は、リンクされた BigQuery データセットは必要ありません。このようなシナリオでは、[Observability Analytics] ページを使用できます。ログデータのクエリについては、Observability Analytics でログのクエリと分析を行うをご覧ください。
次のいずれかを行う場合は、リンクされた BigQuery データセットが必要です。
- トレースデータを他の BigQuery データセットと結合する。
- BigQuery Studio やデータポータルなどの別のサービスからトレースデータをクエリする。
- BigQuery エンジンの [オブザーバビリティ分析] ページからクエリを実行する。
- アラート ポリシーを使用して SQL クエリの結果をモニタリングする。
リンクされた BigQuery データセットを作成する
このセクションでは、リンクされた BigQuery データセットを作成する方法について説明します。これにより、BigQuery サービスでトレースデータをクエリできるようになります。オブザーバビリティ データセットには、リンクされた BigQuery データセットを 1 つ作成できます。
リンクされたデータセットを作成すると、長時間実行オペレーションが開始されます。このオペレーションの一部として、次のアクションが実行されます。
- 監査ログには、リンクの作成リクエストとオペレーションの完了が記録されます。
モニタリング サービス アカウントが存在しない場合、Google Cloud Observability によって作成されます。
このサービス アカウントを作成するには、Cloud Monitoring API を有効にする必要があります。
Google Cloud Observability でリンクされたデータセットを作成するには、サービス アカウントが必要です。必要に応じて、サービス アカウントが作成されます。
Cloud Observability サービス アカウント: 可観測性データセットのリンクに必要です。
Cloud Logging サービス アカウント: ログバケットのリンクに必要です。
監査ログには、モニタリング サービス アカウントに Monitoring サービス エージェントの IAM ロールを付与するサービス エージェント マネージャーからのリクエストが記録されます。
始める前に
- Google Cloud アカウントにログインします。 Google Cloudを初めて使用する場合は、 アカウントを作成して、実際のシナリオでの Google プロダクトのパフォーマンスを評価してください。新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $300 分を差し上げます。
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Cloud Monitoring and Observability APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Cloud Monitoring and Observability APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
オブザーバビリティ データセットにリンクを作成するために必要な権限を取得するには、プロジェクトに対するオブザーバビリティ編集者 (
roles/observability.editor)IAM ロールを付与するよう管理者に依頼してください。ロールの付与については、プロジェクト、フォルダ、組織に対するアクセス権の管理をご覧ください。
データセットを作成
gcloud
後述のコマンドデータを使用する前に、次のように置き換えます。
- LINK_ID: BigQuery データセットの名前。
- DATASET_ID: データセットの ID。トレースデータは、
Spansという名前のデータセットに保存されます。 - BUCKET_ID: オブザーバビリティ バケットの ID。たとえば、この ID は
_Traceになります。 - LOCATION: オブザーバビリティ バケットのロケーション。
- PROJECT_ID: プロジェクトの ID。
gcloud beta observability buckets datasets links create コマンドを実行します。
Linux、macOS、Cloud Shell
gcloud beta observability buckets datasets links create \ projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID/datasets/DATASET_ID/links/LINK_ID \ --dataset=DATASET_ID\ --bucket=BUCKET_ID \ --location=LOCATION \ --project=PROJECT_ID
Windows(PowerShell)
gcloud beta observability buckets datasets links create ` projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID/datasets/DATASET_ID/links/LINK_ID ` --dataset=DATASET_ID` --bucket=BUCKET_ID ` --location=LOCATION ` --project=PROJECT_ID
Windows(cmd.exe)
gcloud beta observability buckets datasets links create ^ projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID/datasets/DATASET_ID/links/LINK_ID ^ --dataset=DATASET_ID^ --bucket=BUCKET_ID ^ --location=LOCATION ^ --project=PROJECT_ID
create コマンドは、長時間実行オペレーションを開始します。コマンドが成功した場合のレスポンスの例を次に示します。
Create request issued for: [mydataset] Waiting for operation [projects/my-project/locations/us/operations/operation-1775164903749-64e80c9817833-9ff804b6-c3e9cbe7] to complete...done. Created link [mydataset].
REST
BigQuery データセットへのリンクを作成するには、projects.locations.buckets.datasets.links.create エンドポイントにリクエストを送信します。
次の形式の親パラメータを指定する必要があります。
projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID/datasets/DATASET_ID
前の式のフィールドの意味は次のとおりです。
- PROJECT_ID: プロジェクトの ID。
- LOCATION: オブザーバビリティ バケットのロケーション。
- BUCKET_ID: オブザーバビリティ バケットの ID。たとえば、この ID は
_Traceになります。 - DATASET_ID: クエリ対象のデータセットの ID。たとえば、この ID は
Spansになります。
このコマンドには、クエリ パラメータとリクエスト本文が必要です。
クエリ パラメータ
linkIdを指定し、BigQuery データセットの名前に設定する必要があります。例:linkId="my_link"BigQuery データセット名は Google Cloud プロジェクト内で一意である必要があります。また、100 文字に制限され、英字、数字、アンダースコアのみを使用できます。リクエスト本文は
Linkオブジェクトです。nameフィールドの値の形式は次のとおりです。projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_ID/dataset/DATASET_ID/links/LINK_IDnameフィールドに指定する値は、クエリ パラメータで参照されるリンクされた BigQuery データセットと一致する必要があります。LINK_ID フィールドは、BigQuery データセットの名前です。
レスポンスは Operation オブジェクトです。このオブジェクトには、メソッドの進行状況に関する情報が格納されています。メソッドが完了すると、Operation オブジェクトにステータス データが含まれます。
モニタリング API エンドポイントの一覧については、モニタリング API リファレンス ドキュメントをご覧ください。
リンクされたデータセットの作成時に権限エラーが発生した場合は、権限エラーのトラブルシューティングをご覧ください。