Dopo che l'API App Optimize crea un report, recuperi i dati di costo e utilizzo del report. Questa operazione scarica le 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 account Google Cloud . 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.
Verify that you have the permissions required to complete this guide.
Seleziona la scheda relativa a come intendi utilizzare gli esempi in questo documento:
gcloud
Nella console Google Cloud , attiva Cloud Shell.
Nella parte inferiore della console Google Cloud viene avviata una sessione di Cloud Shell e viene visualizzato un prompt della riga di comando. Cloud Shell è un ambiente shell con Google Cloud CLI già installata e con valori già impostati per il progetto corrente. L'inizializzazione della sessione può richiedere alcuni secondi.
Per informazioni sulla configurazione dell'autenticazione per un ambiente di produzione, consulta Configura le Credenziali predefinite dell'applicazione per il codice in esecuzione su Google Cloud nella documentazione sull'autenticazione di Google Cloud .
Python
- Installa la libreria client Python per l'API App Optimize.
-
Per utilizzare gli esempi di Python in questa pagina in un ambiente di sviluppo locale, installa e inizializza gcloud CLI, quindi configura Credenziali predefinite dell'applicazione con le tue credenziali utente.
-
Installa Google Cloud CLI.
-
Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.
-
Se utilizzi una shell locale, crea le credenziali di autenticazione locali per il tuo account utente:
gcloud auth application-default login
Non è necessario eseguire questa operazione se utilizzi Cloud Shell.
Se viene restituito un errore di autenticazione e utilizzi un provider di identità (IdP) esterno, verifica di aver acceduto a gcloud CLI con la tua identità federata.
Per saperne di più, consulta Configura ADC per un ambiente di sviluppo locale nella documentazione sull'autenticazione di Google Cloud .
Per informazioni sulla configurazione dell'autenticazione per un ambiente di produzione, consulta Configura le Credenziali predefinite dell'applicazione per il codice in esecuzione su Google Cloud nella documentazione sull'autenticazione di Google Cloud .
-
REST
Per utilizzare gli esempi di API REST in questa pagina in un ambiente di sviluppo locale, utilizzi le credenziali che fornisci a gcloud CLI.
Installa Google Cloud CLI.
Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.
Per saperne di più, consulta Autenticati per usare REST nella documentazione sull'autenticazione di Google Cloud .
Per informazioni sulla configurazione dell'autenticazione per un ambiente di produzione, consulta Configura le Credenziali predefinite dell'applicazione per il codice in esecuzione su Google Cloud nella documentazione sull'autenticazione di Google Cloud .
Ruoli obbligatori
Per ottenere le autorizzazioni
necessarie per leggere i dati di un report,
chiedi all'amministratore di concederti il ruolo IAM
Visualizzatore App Optimize (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.
Leggere i dati del report
Per leggere i dati di un report completato, segui le istruzioni per il metodo che preferisci:
gcloud
Utilizza il comando gcloud beta app-optimize reports read per recuperare i dati di un report.
gcloud beta app-optimize reports read REPORT_ID \
--project=PROJECT_ID \
--location=global
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.
Il comando gcloud gestisce automaticamente la paginazione, restituendo tutte le risorse richieste.
Per comprendere i valori nel campo cost, consulta
Interpretazione delle metriche di costo.
Per saperne di più sui dati e comprenderne i limiti, vedi
Informazioni sui dati.
Python
Il seguente codice Python utilizza AppOptimizeClient.read_report() per leggere
i dati di un report.
from google.cloud import appoptimize_v1beta
project_id = "PROJECT_ID"
report_id = "REPORT_ID"
# Create the App Optimize client and read a report's data
client = appoptimize_v1beta.AppOptimizeClient()
request = appoptimize_v1beta.ReadReportRequest(
name=f"projects/{project_id}/locations/global/reports/{report_id}"
)
result = client.read_report(request=request)
# Display the report data
print(result)
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.
La libreria client gestisce automaticamente la paginazione, restituendo i risultati dall'iteratore.
Per comprendere i valori nel campo cost, consulta
Interpretazione delle metriche di costo.
Per saperne di più sui dati e comprenderne i limiti, vedi
Informazioni sui dati.
REST
Invia una richiesta POST HTTP al metodo personalizzato :read dell'API REST.
Utilizza il seguente comando
curlper inviare la richiesta di lettura della 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. Anche le risposte sono soggette a un limite di dimensione di 10 MB, pertanto potrebbero essere restituite meno righe per rientrare in questo limite. SepageSizeviene omesso, viene utilizzata una dimensione predefinita.
Se la richiesta riesce, l'API restituisce una risposta JSON contenente lo schema e le righe del report. Ecco un esempio di risposta corretta:
{ "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 Interpretazione delle metriche di costo. Per saperne di più sui dati e comprenderne i limiti, vedi Informazioni sui dati.Se la risposta include un campo
nextPageToken, il report contiene righe aggiuntive. Per recuperare la pagina successiva dei risultati, invia 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 la procedura finché la risposta non contiene più un
nextPageToken, a indicare che hai recuperato tutti i dati del report.
Passaggi successivi
- Recuperare i metadati di un report
- Elenco dei report
- Eliminare un report
- Panoramica dell'API App Optimize