シンクを使用してトレースデータを BigQuery にエクスポートしている場合は、 このドキュメントが適用されます。トレースデータをエクスポートするシンクの使用はおすすめしません。代わりに、BigQuery と同じ SQL クエリ言語をサポートする Observability Analytics を使用することをおすすめします。このドキュメントでは、シンクベースのソリューションから Observability Analytics を使用するソリューションに移行する方法について説明します。また、BigQuery サービスを使用してトレースデータをクエリする方法についても説明します。
Observability Analytics の使用を開始するには、 トレースのクエリと分析をご覧ください。
始める前に
- アカウントにログインします。 Google Cloud を初めて使用する場合は、 アカウントを作成して、実際のシナリオで Google プロダクトのパフォーマンスを評価してください。 Google Cloud新規のお客様には、ワークロードの実行、テスト、デプロイができる無料クレジット $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 Observability API.
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 Observability API.
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.-
Observability Analytics ページの読み込み、クエリの実行、リンクされたデータセットの作成に必要な権限を取得するには、プロジェクトに対する次の IAM ロールの付与を管理者に依頼してください。
-
Cloud Trace 管理者 (
roles/cloudtrace.admin) -
オブザーバビリティ編集者 (
roles/observability.editor) -
BigQuery ユーザー (
roles/bigquery.user)
ロールの付与については、プロジェクト、フォルダ、組織へのアクセス権の管理をご覧ください。
-
Cloud Trace 管理者 (
-
コンソールで Cloud Shell をアクティブにします。 Google Cloud
コンソールの下部にある Google Cloud Cloud Shell セッションが開始し、コマンドライン プロンプトが表示されます。Cloud Shell はシェル環境です。Google Cloud CLI がすでにインストールされており、現在のプロジェクトの値もすでに設定されています。セッションが初期化されるまで数秒かかることがあります。
Observability Analytics に移行する
このドキュメントの「始める前に」 セクションに記載されている操作を完了します。これらの操作には、Observability API の有効化が含まれます。
Observability Analytics を使用してトレースデータにアクセスできることを確認します。
-
コンソールで、 manage_search [ログ分析] ページに移動します。 Google Cloud
検索バーを使用してこのページを検索する場合は、小見出しが [Logging] の結果を選択します。
[ビュー] メニューで、
[トレース] セクションに移動し、
_Trace.Spans._AllSpansを選択します。[スキーマ] ペインが更新され、スキーマが表示されます。
_Trace.Spans._AllSpansという名前のビューが表示されない場合、プロジェクトには_Traceという名前のオブザーバビリティ バケットが含まれていません。Google Cloud この状況を解決する方法については、 トレース ストレージの初期化が失敗するをご覧ください。[スキーマ] ペインで [クエリ] を選択します。
クエリエディタ フィールドが更新されます。
FROM句には、次のようなエントリが表示されます。`PROJECT_ID.us._Trace.Spans._AllSpans`ツールバーで、[クエリを実行] を選択します。
ツールバーに [Run in BigQuery] と表示されている場合は、 settings [Settings] をクリックして [Analytics (default)] を選択します。
[Observability Analytics] ページを使用してトレースデータをクエリできることを確認しました。
-
省略可: トレースデータを BigQuery で使用できる他のビジネスデータと結合する場合は、リンクされた BigQuery データセットを作成します。詳細については、 リンクされた BigQuery データセットに対してクエリを実行するをご覧ください。
トレース シンクと不要なデータセットを削除します。
既存のトレース シンクを一覧表示するには、
gcloud alpha trace sinks listコマンドを実行します。gcloud alpha trace sinks listシンクごとに、
gcloud alpha trace sinks deleteコマンドを実行します。gcloud alpha trace sinks delete SINK_NAME省略可: 不要な BigQuery データセットを削除します。 BigQuery データセットを削除する方法については、 データセットを削除するをご覧ください。
スキーマの比較
このセクションでは、Observability Analytics とシンクベースのエクスポート スキーマの違いについて説明します。
| 名前 | アナリティクス | レガシー |
|---|---|---|
| トレース ID | trace_id |
extendedFields.traceId |
| スパン ID | span_id |
span.spanId |
| 親スパン ID | parent_span_id |
span.parentSpanId |
| スパン名 | name |
span.displayName.value |
| スパンの種類 | kind値については、 OpenTelemetry: SpanKindをご覧ください。
|
span.spanKind値については、Cloud Trace API リファレンスの SpanKindページをご覧ください。 |
| スパンの開始時刻 | start_time |
span.startTime |
| スパンの終了時刻 | end_time |
span.endTime |
| 属性 | スパン、リソース、インストルメンテーションの属性にはそれぞれ固有の形式があります。これらのフィールド には BigQuery JSON データ型があります。 例:
|
すべての属性で同じ形式:
例:
|