Dopo che l'API App Optimize crea un report, recupera i dati di costo e utilizzo del report. Questa operazione scarica queste informazioni come colonne e righe, strutturate in base alle dimensioni e alle metriche specificate quando hai richiesto il report.
Questa richiesta API è diversa dall'ottenimento dei metadati di un report, che restituisce solo le impostazioni di configurazione del report.
Prima di iniziare
- Accedi al tuo Google Cloud account. Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti senza costi per l'esecuzione, il test e il deployment dei workload.
-
Installa Google Cloud CLI.
-
Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.
-
Per inizializzare gcloud CLI, esegui questo comando:
gcloud init -
Verifica di disporre delle autorizzazioni necessarie per completare questa guida.
-
Installa Google Cloud CLI.
-
Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.
-
Per inizializzare gcloud CLI, esegui questo comando:
gcloud init -
Verifica di disporre delle autorizzazioni necessarie per completare questa guida.
Ruoli obbligatori
Per ottenere le autorizzazioni necessarie per leggere i dati di un report, chiedi all'amministratore di concederti il ruolo IAM App Optimize Viewer (roles/appoptimize.viewer) sul progetto proprietario della risorsa report.
Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.
Potresti anche riuscire a ottenere le autorizzazioni richieste tramite i ruoli personalizzati o altri ruoli predefiniti.
Leggi i dati del report
Per leggere i dati di un report completato utilizzando l'API REST, invia una richiesta HTTP POST all'endpoint :read del report.
Utilizza il seguente
curlcomando per leggere la prima pagina dei dati del report:curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d '{"pageSize": PAGE_SIZE}' \ "https://appoptimize.googleapis.com/v1beta/projects/PROJECT_ID/locations/global/reports/REPORT_ID:read"Sostituisci quanto segue:
PROJECT_ID: l'ID del Google Cloud progetto proprietario della risorsa report che vuoi leggere.REPORT_ID: l'ID del report da leggere. Questo ID è stato specificato durante la creazione del report e può essere ottenuto elencando i report.PAGE_SIZE: il numero massimo di righe da restituire per pagina. Il server restituisce un massimo di 1000 righe per pagina, anche se specifichi un valore maggiore. Le risposte sono soggette anche a un limite di dimensioni di 10 MB, quindi potrebbero essere restituite meno righe per rientrare in questo limite. SepageSizeviene omesso, viene utilizzata una dimensione predefinita.
Se la richiesta va a buon fine, l'API restituisce una risposta JSON contenente lo schema e le righe del report. Ecco un esempio di risposta riuscita:
{ "rows": [ [ "//apphub.googleapis.com/projects/123456789/locations/us-central1/applications/my-app-1", { "currency_code": "USD", "units": "106", "nanos": 321590000 } ], [ "//apphub.googleapis.com/projects/123456789/locations/us-central1/applications/my-app-2", { "currency_code": "USD", "units": "797", "nanos": 641691000 } ] ], "columns": [ { "name": "application", "type": "STRING" }, { "name": "cost", "type": "RECORD", "columns": [ { "name": "currency_code", "type": "STRING" }, { "name": "units", "type": "INT64" }, { "name": "nanos", "type": "INT64" } ] } ], "nextPageToken": "AABBCCddeeffGGHHiiJJkkLL" }Per comprendere i valori nel campo
cost, consulta Interpretare le metriche di costo. Per ulteriori informazioni sui dati e per comprenderne i limiti, consulta Comprendere i dati.Se la risposta include un campo
nextPageToken, il report contiene altre righe. Per recuperare la pagina successiva dei risultati, effettua un'altra richiestaPOSTche includa questo token nel campopageTokendel corpo JSON:curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" \ -H "Content-Type: application/json" \ -d '{"pageToken": "NEXT_PAGE_TOKEN", "pageSize": PAGE_SIZE}' \ "https://appoptimize.googleapis.com/v1beta/projects/PROJECT_ID/locations/global/reports/REPORT_ID:read"Sostituisci quanto segue:
NEXT_PAGE_TOKEN: il valore dinextPageTokenricevuto nella risposta precedente.PAGE_SIZE: il numero massimo di righe da restituire per pagina. Anche se puoi modificare questo valore tra le richieste di pagina, i limiti lato server rimangono validi.
Ripeti questa procedura finché la risposta non contiene più un
nextPageToken, a indicare che hai recuperato tutti i dati del report.