レポートのメタデータを取得する

レポートの設定(スコープや指標など)を検査したり、有効期限を確認したりするには、App Optimize API を使用してレポートのメタデータを取得します。

この API リクエストでは、レポート内の実際のデータ行は返されません。この情報をダウンロードするには、レポートのデータを読み取る必要があります

始める前に

gcloud

コンソールで Cloud Shell をアクティブにします。 Google Cloud

Cloud Shell をアクティブにする

コンソールの下部にある Google Cloud Cloud Shell セッションが開始し、コマンドライン プロンプトが表示されます。Cloud Shell はシェル環境です 。Google Cloud CLI がすでにインストールされており、現在のプロジェクトの値もすでに設定されています 。セッションが初期化されるまで数秒かかることがあります。

本番環境での認証の設定については、 認証ドキュメントの Google Cloud で実行されるコードのアプリケーションのデフォルト認証情報を設定する Google Cloud をご覧ください。

Python

  1. App Optimize API 用の Python クライアント ライブラリ をインストールします。
  2. ローカル開発環境でこのページの Python サンプルを使用するには、gcloud CLI をインストールして 初期化し、ユーザー認証情報を使用してアプリケーションのデフォルト認証情報を設定します。

    1. Google Cloud CLI をインストールします。

    2. 外部 ID プロバイダ(IdP)を使用している場合は、まず フェデレーション ID を使用して gcloud CLI にログインする必要があります

    3. ローカルシェルを使用している場合は、ユーザー アカウントのローカル認証情報を作成します。

      gcloud auth application-default login

      Cloud Shell を使用している場合は、この操作を行う必要はありません。

      認証エラーが返され、外部 ID プロバイダ (IdP)を使用している場合は、フェデレーション ID を使用して gcloud CLI にログインしていることを確認します。

    詳細については、 認証ドキュメントのローカル開発環境の ADC の設定 をご覧ください。 Google Cloud

    本番環境での認証の設定については、 認証ドキュメントの Google Cloud で実行されるコードのアプリケーションのデフォルト認証情報を設定する Google Cloud をご覧ください。

REST

このページの REST API サンプルをローカル開発環境で使用するには、 gcloud CLI に指定した認証情報を使用します。

    Google Cloud CLI をインストールします。

    外部 ID プロバイダ(IdP)を使用している場合は、まず フェデレーション ID を使用して gcloud CLI にログインする必要があります

詳細については、 REST を使用して認証する 認証ドキュメントの Google Cloud をご覧ください。

本番環境での認証の設定については、 認証ドキュメントの Google Cloud で実行されるコードのアプリケーションのデフォルト認証情報を設定する Google Cloud をご覧ください。

必要なロール

レポートのメタデータを読み取るために必要な権限を取得するには、レポート リソースを所有するプロジェクトに対する App Optimize 閲覧者 roles/appoptimize.viewer)IAM ロールの付与を管理者に依頼してください。ロールの付与については、プロジェクト、フォルダ、組織に対するアクセス権の管理をご覧ください。

必要な権限は、カスタム ロールや他の事前定義 ロールから取得することもできます。

レポートのメタデータを取得する

レポートのメタデータを取得するには、以下の手順に沿って好きな方法で操作してください。

gcloud

gcloud beta app-optimize reports describe コマンドを使用して、レポートのメタデータを取得します。

gcloud beta app-optimize reports describe REPORT_ID \
  --project=PROJECT_ID \
  --location=global

次のように置き換えます。

  • PROJECT_ID: 取得するレポート リソースを所有する Google Cloud プロジェクト の ID。
  • REPORT_ID: 取得するレポートの ID。この ID はレポートの作成時に指定され、レポートを一覧表示することで取得できます

Python

次の Python コードでは、AppOptimizeClient.get_report() を使用してレポートのメタデータを取得します。

from google.cloud import appoptimize_v1beta

project_id = "PROJECT_ID"
report_id = "REPORT_ID"
name = f"projects/{project_id}/locations/global/reports/{report_id}"

# Create the App Optimize client and request the report's metadata
client = appoptimize_v1beta.AppOptimizeClient()
request = appoptimize_v1beta.GetReportRequest(name=name)
response = client.get_report(request=request)

# Display the metadata
print(response)

次のように置き換えます。

  • PROJECT_ID: 取得するレポート リソースを所有する Google Cloud プロジェクト の ID。
  • REPORT_ID: 取得するレポートの ID。この ID はレポートの作成時に指定され、レポートを一覧表示することで取得できます

REST

次の curl コマンドを使用して、 レポートのメタデータを取得します。

curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  "https://appoptimize.googleapis.com/v1beta/projects/PROJECT_ID/locations/global/reports/REPORT_ID"

次のように置き換えます。

  • PROJECT_ID: 取得するレポート リソースを所有する Google Cloud プロジェクト の ID。
  • REPORT_ID: 取得するレポートの ID。この ID はレポートの作成時に指定され、レポートを一覧表示することで取得できます

リクエストが成功すると、API はレポートのメタデータを含む JSON レスポンスを返します。成功したレスポンスの例を次に示します。選択したディメンションと指標、プロジェクト スコープ、レポートの有効期限が切れる予定時刻が含まれています。

{
  "name": "projects/PROJECT_ID/locations/global/reports/REPORT_ID",
  "dimensions": [
    "location",
    "product_display_name",
    "project",
    "resource",
    "resource_type"
  ],
  "scopes": [
    {
      "project": "projects/PROJECT_ID"
    }
  ],
  "filter": "hour >= now - duration(\"168h\")",
  "expireTime": "2026-02-05T18:50:25.273833857Z",
  "metrics": [
    "cost",
    "cpu_mean_utilization"
  ]
}

次のステップ