Daten eines Berichts lesen

Nachdem die App Optimize API einen Bericht erstellt hat, rufen Sie die Kosten- und Nutzungsdaten des Berichts ab. Diese Informationen werden als Spalten und Zeilen heruntergeladen, die gemäß den Dimensionen und Messwerten strukturiert sind, die Sie beim Anfordern des Berichts angegeben haben.

Diese API-Anfrage unterscheidet sich vom Abrufen der Metadaten eines Berichts, bei dem nur die Konfigurationseinstellungen des Berichts zurückgegeben werden.

Hinweis

gcloud

  • Installieren Sie die Google Cloud CLI.

  • Konfigurieren Sie die gcloud CLI für die Verwendung Ihrer föderierten Identität.

    Weitere Informationen finden Sie unter Mit Ihrer föderierten Identität in der gcloud CLI anmelden.

  • Führen Sie den folgenden Befehl aus, um die gcloud CLI zu initialisieren:

    gcloud init
  • Aktualisieren Sie die gcloud CLI nach der Initialisierung und installieren Sie die erforderlichen Komponenten:

    gcloud components update
    gcloud components install beta
  • Informationen zum Einrichten der Authentifizierung für eine Produktionsumgebung finden Sie in der Dokumentation zur Authentifizierung unter Standardanmeldedaten für Anwendungen für Code einrichten, der in Google Cloud ausgeführt wird. Google Cloud

    Python

    1. Installieren Sie die Python-Clientbibliothek für die App Optimize API.
    2. Wenn Sie die Python-Beispiele auf dieser Seite in einer lokalen Entwicklungsumgebung verwenden möchten, installieren und initialisieren Sie die gcloud CLI und richten Sie dann die Standardanmeldedaten für Anwendungen mit Ihren Nutzeranmeldedaten ein.

      1. Installieren Sie die Google Cloud CLI.

      2. Konfigurieren Sie die gcloud CLI für die Verwendung Ihrer föderierten Identität.

        Weitere Informationen finden Sie unter Mit Ihrer föderierten Identität in der gcloud CLI anmelden.

      3. Erstellen Sie lokale Anmeldedaten zur Authentifizierung für Ihr Nutzerkonto:

        gcloud auth application-default login

        Wenn ein Authentifizierungsfehler zurückgegeben wird und Sie einen externen Identitätsanbieter (IdP) verwenden, prüfen Sie, ob Sie sich mit Ihrer föderierten Identität in der gcloud CLI angemeldet haben.

      Weitere Informationen finden Sie in der Dokumentation zur Authentifizierung unter ADC für eine lokale Entwicklungsumgebung einrichten Google Cloud .

      Informationen zum Einrichten der Authentifizierung für eine Produktionsumgebung finden Sie in der Dokumentation zur Authentifizierung unter Standardanmeldedaten für Anwendungen für Code einrichten, der in Google Cloud ausgeführt wird. Google Cloud

    REST

    Wenn Sie die REST API-Beispiele auf dieser Seite in einer lokalen Entwicklungsumgebung verwenden möchten, verwenden Sie die Anmeldedaten, die Sie der gcloud CLI bereitstellen.

      Installieren Sie die Google Cloud CLI und melden Sie sich dann mit Ihrer föderierten Identität in der gcloud CLI an.

    Weitere Informationen finden Sie in der Google Cloud Dokumentation zur Authentifizierung unter Für die Verwendung von REST authentifizieren.

    Informationen zum Einrichten der Authentifizierung für eine Produktionsumgebung finden Sie in der Dokumentation zur Authentifizierung unter Standardanmeldedaten für Anwendungen für Code einrichten, der in Google Cloud ausgeführt wird. Google Cloud

    Erforderliche Rollen

    Bitten Sie Ihren Administrator, Ihnen die IAM-Rolle App Optimize-Betrachter (roles/appoptimize.viewer) für das Projekt zuzuweisen, das die Berichtsressource enthält, um die Berechtigungen zu erhalten, die Sie zum Lesen der Daten eines Berichts benötigen. Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zugriff auf Projekte, Ordner und Organisationen verwalten.

    Sie können die erforderlichen Berechtigungen auch über benutzerdefinierte Rollen oder andere vordefinierte Rollen erhalten.

    Berichtsdaten lesen

    Folgen Sie der Anleitung für Ihre bevorzugte Methode, um Daten aus einem abgeschlossenen Bericht zu lesen:

    gcloud

    Verwenden Sie den Befehl gcloud beta app-optimize reports read, um die Daten eines Berichts abzurufen.

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

    Ersetzen Sie Folgendes:

    • PROJECT_ID: die ID des Google Cloud Projekts , das die Berichtsressource enthält, die Sie lesen möchten.
    • REPORT_ID: die ID des zu lesenden Berichts. Diese ID wurde beim Erstellen des Berichts angegeben und kann durch Auflisten von Berichten abgerufen werden.

    Der Befehl gcloud führt den Seitenumbruch automatisch durch und gibt alle angeforderten Ressourcen zurück.

    Informationen zu den W0erten im cost Feld finden Sie unter Kostenmesswerte interpretieren. Weitere Informationen zu den Daten und ihren Einschränkungen finden Sie unter Daten verstehen.

    Python

    Der folgende Python-Code verwendet AppOptimizeClient.read_report(), um die Daten eines Berichts zu lesen.

    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)
    

    Ersetzen Sie Folgendes:

    • PROJECT_ID: die ID des Google Cloud Projekts , das die Berichtsressource enthält, die Sie lesen möchten.
    • REPORT_ID: die ID des zu lesenden Berichts. Diese ID wurde beim Erstellen des Berichts angegeben und kann durch Auflisten von Berichten abgerufen werden.

    Die Clientbibliothek führt den Seitenumbruch automatisch durch und liefert Ergebnisse aus dem Iterator.

    Informationen zu den W0erten im cost Feld finden Sie unter Kostenmesswerte interpretieren. Weitere Informationen zu den Daten und ihren Einschränkungen finden Sie unter Daten verstehen.

    REST

    Senden Sie eine HTTP-POST-Anfrage an die benutzerdefinierte Methode :read der REST API.

    1. Verwenden Sie den folgenden curl-Befehl, um diese Anfrage zu senden und die erste Seite der Berichtsdaten zu lesen:

      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"
      

      Ersetzen Sie Folgendes:

      • PROJECT_ID: die ID des Google Cloud Projekts , das die Berichtsressource enthält, die Sie lesen möchten.
      • REPORT_ID: die ID des zu lesenden Berichts. Diese ID wurde beim Erstellen des Berichts angegeben und kann durch Auflisten von Berichten abgerufen werden.
      • PAGE_SIZE: die maximale Anzahl der Zeilen, die pro Seite zurückgegeben werden sollen. Der Server gibt maximal 1.000 Zeilen pro Seite zurück, auch wenn Sie einen größeren Wert angeben. Für Antworten gilt außerdem ein Größenlimit von 10 MB. Daher werden möglicherweise weniger Zeilen zurückgegeben, um dieses Limit einzuhalten. Wenn pageSize nicht angegeben ist, wird eine Standardgröße verwendet.
    2. Wenn die Anfrage erfolgreich ist, gibt die API eine JSON-Antwort mit dem Berichtsschema und den Zeilen zurück. Hier ist ein Beispiel für eine erfolgreiche Antwort:

      {
        "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"
      }
      

      Informationen zu den W0erten im cost Feld finden Sie unter Kostenmesswerte interpretieren. Weitere Informationen zu den Daten und ihren Einschränkungen finden Sie unter Daten verstehen.

    3. Wenn die Antwort ein Feld nextPageToken enthält, enthält der Bericht zusätzliche Zeilen. Um die nächste Seite mit Ergebnissen abzurufen, senden Sie eine weitere POST-Anfrage, die dieses Token im Feld pageToken des JSON-Texts enthält:

      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"
      

      Ersetzen Sie Folgendes:

      • NEXT_PAGE_TOKEN: der Wert von nextPageToken, der in der vorherigen Antwort empfangen wurde.
      • PAGE_SIZE: die maximale Anzahl der Zeilen, die pro Seite zurückgegeben werden sollen. Sie können diesen Wert zwischen Seitenanfragen ändern. Es gelten jedoch weiterhin die serverseitigen Limits.

      Wiederholen Sie diesen Vorgang, bis die Antwort kein nextPageToken mehr enthält. Das bedeutet, dass Sie alle Berichtsdaten abgerufen haben.

    Nächste Schritte