列出 Google Cloud 專案中的所有報表設定,有效管理 App Optimize API 報表。這樣一來,您就能找出特定報表來讀取資料,或在報表到期前刪除不再需要的報表。
清單作業會傳回報表中繼資料,包括每個報表的資源名稱、範圍、維度、指標和到期時間。如要下載所要求的費用和用量資訊,請讀取報表資料。
事前準備
- 登入 Google Cloud 帳戶。如果您是 Google Cloud新手,歡迎 建立帳戶,親自評估產品在實際工作環境中的成效。新客戶還能獲得價值 $300 美元的免費抵免額,可用於執行、測試及部署工作負載。
-
安裝 Google Cloud CLI。
-
若您採用的是外部識別資訊提供者 (IdP),請先使用聯合身分登入 gcloud CLI。
-
執行下列指令,初始化 gcloud CLI:
gcloud init -
安裝 Google Cloud CLI。
-
若您採用的是外部識別資訊提供者 (IdP),請先使用聯合身分登入 gcloud CLI。
-
執行下列指令,初始化 gcloud CLI:
gcloud init
必要的角色
如要取得列出專案報表資源所需的權限,請要求管理員授予專案的應用程式最佳化檢視者 (roles/appoptimize.viewer) IAM 角色。如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和組織的存取權」。
列出報表
如要使用 REST API 列出專案中的報表,請將 HTTP GET 要求傳送至收集端點。
使用下列 curl 指令列出專案的報表:
curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://appoptimize.googleapis.com/v1beta/projects/PROJECT_ID/locations/global/reports?pageSize=PAGE_SIZE"
更改下列內容:
PROJECT_ID:擁有您要列出報表資源的 Google Cloud 專案 ID。PAGE_SIZE:每頁要傳回的報表數量上限。如果省略,API 會使用預設值。伺服器傳回的報表數量可能會少於要求數量。
如果要求成功,API 會傳回 JSON 回應,其中包含報表資源清單。以下是成功呼叫的回應範例:
{
"reports": [
{
"name": "projects/PROJECT_ID/locations/global/reports/my-first-report",
"dimensions": [
"location",
"product_display_name",
"project",
"sku"
],
"scopes": [
{
"project": "projects/PROJECT_ID"
}
],
"filter": "hour \u003e= now - duration(\"168h\")",
"expireTime": "2026-02-05T18:30:39.907639266Z",
"metrics": [
"cost"
]
},
{
"name": "projects/PROJECT_ID/locations/global/reports/my-second-report",
"dimensions": [
"location",
"product_display_name",
"project",
"resource",
"resource_type"
],
"scopes": [
{
"project": "projects/PROJECT_ID"
}
],
"filter": "hour \u003e= now - duration(\"168h\")",
"expireTime": "2026-02-05T18:50:25.273833857Z",
"metrics": [
"cost",
"cpu_mean_utilization"
]
}
]
}
reports 陣列包含每份報表的中繼資料。如果要求失敗,請查看 API 傳回的錯誤訊息。
如果回應包含 nextPageToken 字串,表示還有更多報表可供擷取。
查看回應中的 nextPageToken 欄位。如果符記存在,請執行下列 curl 要求來擷取下一頁,包括 pageToken 查詢參數。您可以繼續使用 pageSize 參數。
curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
"https://appoptimize.googleapis.com/v1beta/projects/PROJECT_ID/locations/global/reports?pageToken=NEXT_PAGE_TOKEN&pageSize=PAGE_SIZE"
更改下列內容:
NEXT_PAGE_TOKEN:先前回應中收到的nextPageToken值。PAGE_SIZE:這項要求所需的網頁大小。
重複這個程序,直到回應不再包含 nextPageToken 為止,這表示您已擷取所有報表。