Berichterstellung für die Google Maps Platform

Es ist wichtig, dass du deine Nutzung der Google Maps Platform, dein Kontingent und die Abrechnungen regelmäßig überprüfst. Wenn du diese Zahlen beobachtest, kannst du einfacher Anfragen von Projekten nachverfolgen, die vordefinierten Nutzungsbeschränkungen einhalten und die Kosten mithilfe von geplanten Budgets kontrollieren. Außerdem lassen sich dadurch unerwartete Interaktionen zwischen deinen Projekten und den Diensten der Google Maps Platform leichter erkennen.

Cloud Console

Du kannst deine Nutzung der Google Maps Platform, dein Kontingent und die Abrechnungsbeträge in der Google Cloud Console (auch als Cloud Console bezeichnet) im Auge behalten.

APIs & Dienste

Im Bereich APIs & Dienste der Cloud Console findest du Nutzungsmesswerte für alle APIs, die für dein Projekt aktiviert sind – die Google Maps Platform APIs und SDKs sowie andere APIs und Dienste von Google.

APIs & Dienste

So rufst du „APIs & Dienste“ auf:

  1. Öffne die Cloud Console
  2. Wähle ein Projekt aus.
  3. Klicke auf die Menüschaltfläche Menü und dann auf APIs & Dienste.

Google Maps Platform

In der Cloud Console kannst du unter Google Maps Platform Nutzungs- und Kontingentmesswerte nur für die APIs und SDKs der Google Maps Platform sehen. Im Folgenden werden diese als Google Maps Platform APIs oder einfach als APIs bezeichnet.

Google Maps-Dashboard

So greifst du auf die Google Maps Platform zu:

  1. Öffne die Cloud Console
  2. Wähle ein Projekt aus.
  3. Klicke auf die Menüschaltfläche Menü, scrolle nach unten zu SONSTIGE GOOGLE-LÖSUNGEN und klicke dann auf Google Maps Platform.

Abrechnung

Im Bereich Abrechnung der Cloud Console findest du Abrechnungs- und zugehörige Kosteninformationen für das ausgewählte Projekt.

Abrechnungs-Dashboard

So greifst du auf die Abrechnung zu:

  1. Öffne die Cloud Console
  2. Wähle ein Projekt aus.
  3. Klicke auf die Menüschaltfläche Menü und dann auf Abrechnung.
  4. Wenn du mehrere Rechnungskonten hast, klicke auf Zum verknüpften Rechnungskonto.
    Dadurch gelangst du auf die Seite Übersicht des verknüpften Rechnungskontos.
  5. Klicke im Menü links auf Berichte.
    Dadurch gelangst du auf die Seite Berichte des verknüpften Rechnungskontos.

Nutzungsberichte

Die Nutzung basiert auf der Anzahl der Anfragen, die von deinem Projekt an die Google Maps Platform APIs gesendet werden. Die Zuordnung erfolgt dabei anhand der Anmeldedaten, die mit deinem Projekt verknüpft sind. Als Anfragen zählen sowohl erfolgreiche Anfragen als auch Anfragen mit Server- oder Clientfehlern. Die Anmeldedaten umfassen API-Schlüssel und Client-IDs (für herkömmliche und migrierte Premium Plan-Projekte).

Die Nutzungsmesswerte werden in Tabellen („Anfragen“, „Fehler“ und „Latenz“) und in Grafiken („Traffic“, „Fehler“ und „Latenz“) angezeigt. Zu Tracking-Zwecken gilt Folgendes:

  • Nutzungsmesswerte für alle APIs können nach Zeitraum und API gefiltert werden. Außerdem hast du die Möglichkeit, Traffic, Fehler und Latenz nach Antwortcode, API und Anmeldedaten gruppiert darstellen zu lassen.
  • Nutzungsmesswerte für eine bestimmte API können nach Zeitraum und den Versionen, Anmeldedaten und Methoden der API gefiltert werden. Außerdem hast du die Möglichkeit, Traffic, Fehler und Latenz nach Antwortcode, API-Methode sowie -Version und Anmeldedaten gruppiert darstellen zu lassen.

Dashboard-Seite „APIs & Dienste“

Auf der Seite Dashboard unter „APIs & Dienste“ findest du eine Übersicht der Nutzungsmesswerte für alle APIs, die für dein Projekt aktiviert sind – die Google Maps Platform APIs und SDKs sowie andere APIs und Dienste von Google.

Die Dashboard-Seite enthält drei Grafiken und eine Tabelle. Du kannst die in diesen Grafiken und Tabellen angezeigten Nutzungsmesswerte filtern, indem du einen Zeitraum zwischen einer Stunde und den letzten 30 Tagen auswählst.

In der Grafik „Traffic“ wird die Nutzung in Abfragen pro Sekunde (Queries per Second, QPS) pro API angezeigt. Die Grafik „Fehler“ gibt Aufschluss über den Prozentsatz der Anfragen pro API, die zu Fehlern geführt haben. In der Grafik „Latenz“ ist die Medianlatenz der Anfragen pro API zu sehen.

Unter den Grafiken werden die aktivierten APIs und Dienste in einer Tabelle aufgeführt. „Anfragen“ steht für die Anzahl der Anfragen im ausgewählten Zeitraum. „Fehler“ bezieht sich auf die Anzahl der Anfragen, die zu Fehlern geführt haben. Unter „Latenz“ (mittlere Latenz und Perzentil) wird die Latenz dieser Anfragen angezeigt.

Weitere Informationen findest du unter API-Nutzung überwachen.

APIs überwachen

Google Maps Platform – Seite „Übersicht“

Auf der Seite Übersicht findest du eine Tabelle mit den aktivierten APIs und Nutzungsanfragen der letzten 30 Tage. Anfragen nach API werden auch in grafischer Form dargestellt. In einer Abrechnungsgrafik siehst du deine aktuelle Rechnung und die Gesamtnutzung der letzten drei Monate.

Hinweis: Wenn du auf den Namen einer aktivierten API klickst, wirst du zur Seite Messwerte für diese API weitergeleitet.

Übersicht

Google Maps Platform – Seite „APIs“

Auf der Seite APIs findest du zwei Tabellen. Die Tabelle „Aktivierte APIs“ gibt für jede aktivierte API Aufschluss über die Anzahl der Anfragen und Fehler sowie über die durchschnittliche Latenz in den letzten 30 Tagen. In der Tabelle „Zusätzliche APIs“ sind alle APIs aufgeführt, für die keine Nutzungsmesswerte erfasst werden, weil sie nicht aktiviert sind.

Hinweis: Wenn du auf den Namen einer aktivierten API klickst, wirst du zur Seite Messwerte für diese API weitergeleitet.

APIs

Google Maps-Seite „Messwerte“

Auf der Google Maps-Seite Messwerte siehst du drei Diagramme: „Traffic“, „Fehler“ und „Medianlatenz“. Die Nutzungsdaten in den Diagrammen können nach Antwortcode, API, API-Methode oder Anmeldedaten gruppiert werden.

Unterhalb der Diagramme auf der Seite „Messwerte“ wird eine API-Tabelle mit Anfragen, Fehlern und Latenz der von dir ausgewählten APIs angezeigt.

Über das Drop-down-Menü „API“ und die Filteroptionen im rechten Bereich lassen sich die angezeigten Nutzungsmesswerte filtern. Dazu kannst du einzelne oder auch mehrere APIs, Anmeldedaten und/oder Antwortcodes auswählen. Du hast auch die Möglichkeit, einen Zeitraum (1 Stunde bis die letzten 30 Tage) und den Detaillierungsgrad (pro Sekunde oder pro Tag) für die angezeigten Nutzungsmesswerte festzulegen.

Messwerte

Antwortcodegrafiken

In den Grafiken „Traffic nach Antwortcode“ und „Fehler nach Antwortcode“ wird die Nutzung nach Antwortcodeklasse aufgeteilt. Die folgende Tabelle zeigt die Zuordnung zwischen dem Antwortstatus und der Antwortcodeklasse der Google Maps Platform API:

Antwortstatus Antwortcodeklasse
(2xx, 3xx, 4xx, 5xx)
Hinweise
OK 2xx Erfolgreiche Antwort.

Diese Anfrage ist kostenpflichtig und wird auf das Kontingent angerechnet.
OK 3xx Erfolgreiche Antwort.

Diese Anfrage ist kostenpflichtig und wird auf das Kontingent angerechnet.

Beispiel: Bei den erfolgreichen Place Foto-Anfragen wird eine 302-Weiterleitung zu dem referenzierten Bild zurückgegeben.
ZERO_RESULTS 2xx Die Antwort war erfolgreich, aber es wurde kein Ergebnis zurückgegeben.

Diese Anfrage ist kostenpflichtig und wird auf das Kontingent angerechnet.
NOT_FOUND 2xx Bei der Directions API bedeutet das, dass mindestens einer der Orte, die in der Anfrage als Ausgangsort, Zielort oder Wegpunkt angegeben wurden, nicht geocodiert werden konnte.

Bei der Places API bedeutet das, dass der referenzierte Ort (place_id) in der Places-Datenbank nicht gefunden wurde.

Diese Anfrage ist kostenpflichtig und wird auf das Kontingent angerechnet.
REQUEST_DENIED 4xx Clientfehler, der durch Authentifizierungsfehler, Zugriffsfehler usw. verursacht wird. Weitere Informationen findest du in der API-Antwort.
OVER_DAILY_LIMIT,
OVER_QUERY_LIMIT,
RESOURCE_EXHAUSTED,
rateLimitExceeded,
dailyLimitExceeded,
userRateLimitExceeded
4xx Clientfehler, der durch zu viele Anfragen im jeweiligen Zeitraum verursacht wurde. Wiederhole die Anfrage später. Weitere Informationen findest du in der API-Antwort.
INVALID_REQUEST (ungültiger oder fehlender Parameter, Fehler beim Parsen der Anfrage) 4xx Clientfehler aufgrund einer ungültigen Anfrage. Weitere Informationen findest du in der API-Antwort.
NOT_FOUND (404) 4xx Bei der Geolocation API bedeutet das, dass die eingegeben Daten nicht ausgereicht haben, um eine Standortschätzung zu erstellen.

Bei der Roads API heißt das, dass die Eingaben nicht sinnvoll mit Straßen abgeglichen werden konnten.

Diese Anfrage ist kostenpflichtig und wird auf das Kontingent angerechnet.
INVALID_REQUEST (ungültiger Parameterwert),
MAX_WAYPOINTS_EXCEEDED,
MAX_ROUTE_LENGTH_EXCEEDED usw.
4xx Dieser Fehler wird z. B. bei einem ungültigen Parameterwert zurückgegeben oder wenn zu viele Werte angegeben wurden. Weitere Informationen findest du in der API-Antwort.

Diese Anfrage ist kostenpflichtig und wird auf das Kontingent angerechnet.
UNKNOWN_ERROR 5xx Serverfehler, der angibt, dass die Anfrage nicht verarbeitet werden kann (z. B. interner Fehler, Dienst überlastet, Dienst nicht verfügbar oder Zeitüberschreitung).

Weitere Informationen zu Statuscodes und Fehlermeldungen findest du in der Antwortdokumentation für die jeweilige API, z. B. unter Geocoding responses oder The Directions API overview (beide in englischer Sprache).

Kontingentberichte

Kontingente sind Limits für die Anzahl der Anfragen, die von deinem Projekt an die Google Maps Platform APIs gesendet werden können. Anfragen können auf drei Arten begrenzt werden: pro Tag, pro Sekunde und pro Nutzer und Sekunde. Nur erfolgreiche Anfragen und Anfragen, die zu Serverfehlern führen, werden auf das Kontingent angerechnet, Anfragen, die Clientfehler verursachen, hingegen nicht.

Die Kontingentnutzung wird in Grafiken angezeigt und kann in Anfragen pro Tag oder pro 100 Sekunden gruppiert werden. Die aktuellen Kontingentlimits für ausgewählte APIs werden in Tabellen unterhalb der Grafiken zur Kontingentnutzung angezeigt.

Google Maps Platform – Seite „Kontingente“

Auf der Seite Kontingente siehst du Informationen zu Kontingentlimits und -verbrauch der jeweiligen API.

Im Diagramm zur Kontingentnutzung in der Google Cloud Console wird der gesamte Traffic für deine API-Schlüssel und Client-IDs dargestellt. Der Client-ID-Traffic ist auch im Messwertdiagramm in der Google Cloud Console verfügbar. Weitere Informationen findest du unter Problem 158809616.

Auf der Seite werden nur Anfragen aufgeführt, die das Kontingent nutzen: erfolgreiche Anfragen (OK, ZERO_RESULTS) und Anfragen, die zu Serverfehlern führen (NOT_FOUND, INVALID_VALUE, UNKNOWN_ERROR).

Anfragen, die Clientfehler verursachen, etwa bei der Authentifizierung, der Autorisierung oder durch ungültige Argumente (REQUEST_DENIED, OVER_QUERY_LIMIT, INVALID_REQUEST), werden nicht auf das Kontingent angerechnet und daher nicht aufgeführt.

Für die meisten Google Maps Platform APIs (Static Maps API, Street View Static API, Geocoding API, Directions API, Places API, Timezone API, Geolocation API und Elevation API) ist die Kontingenteinheit jeweils eine Anfrage. Es gibt jedoch einige Ausnahmen:

  • Für die Distance Matrix API ist die Kontingenteinheit ein Element, das aus einem Start-Ziel-Paar besteht.
  • Für die Maps JavaScript API ist die Kontingenteinheit ein Kartenaufruf.
  • Für das Maps SDK for Android und das Maps SDK for iOS ist die Kontingenteinheit eine Street View-Anfrage bzw. ein Panoramaaufruf (Kartenaufrufe sind kostenlos und werden nicht auf das Kontingent angerechnet).
Kontingente

Kontingenteinheiten

In der folgenden Tabelle siehst du die Kontingenteinheiten für die Google Maps Platform APIs.

Google Maps Platform API Kontingenteinheit
Maps
Maps SDK for Android 1 Panorama
Maps SDK for iOS 1 Panorama
Maps Static API 1 Anfrage
Maps JavaScript API 1 Kartenaufruf
Street View Static API 1 Anfrage
Maps Embed API 1 Kartenaufruf
Routes
Directions API 1 Anfrage
Distance Matrix API 1 Element (Start-Ziel-Paar)
Roads API 1 Anfrage
Places
Places API 1 Anfrage
Geocoding API 1 Anfrage
Geolocation API 1 Anfrage
Time Zone API 1 Anfrage

Abrechnungsberichte

Abrechnungsbericht ansehen

Die Abrechnungsberichte für die Nutzung der Google Maps Platform-Produkte sind in der Google Cloud Console verfügbar (unter Abrechnung).

Diagramm im Abrechnungsbericht auswerten

Die Abrechnungsberichte enthalten ein gestapeltes Liniendiagramm, in dem die Kosten im Zeitverlauf dargestellt werden. In der Standardansicht werden die täglichen nutzungsspezifischen Kosten für alle Produkte im aktuellen Monat nach Projekt gruppiert angezeigt. Diese Angabe umfasst nutzungsspezifische Gutschriften (sofern vorhanden) und die prognostizierten Gesamtkosten für den gesamten aktuellen Monat. Die Linien im Diagramm und die Zeilen in der Übersichtstabelle entsprechen jeweils einem Projekt und sind nach Kosten in absteigender Reihenfolge aufgeführt. Weitere Informationen zum Auswerten des Abrechnungsbericht-Diagramms

Abrechnungsberichte
Abbildung 1: Diagramm und Tabelle im Abrechnungsbericht (Standardansicht)

Tipp: Nutzung und Kosten pro Artikelnummer auswerten

Um weitere Details zum Preismodell „Pay as you go“ und dessen Auswirkungen auf deine Implementierung zu erhalten, kannst du dir die Nutzung und Kosten pro Artikelnummer ansehen.

Nach Artikelnummer gruppierter Abrechnungsbericht
Abbildung 2: Abrechnungstabelle mit Nutzungs- und Kostenpositionen nach Artikelnummer
Filter für Abrechnungsberichte
Abbildung 3: Filter für Abrechnungsberichte
So änderst du die Berichtsdatenansicht, sodass Werbebuchungen nach Artikelnummer angezeigt werden:
  1. Maximiere im Steuerfeld rechts neben dem Diagramm den Filter Gruppieren nach.
  2. Wähle Artikelnummer aus.

Außerdem sind im Abrechnungsbericht die Filter Zeitraum, Projekte, Produkte und SKUs verfügbar.

Du kannst nutzungsspezifische Gutschriften in der Diagrammansicht ausschließen. Entferne dazu das Häkchen bei Gutschriften bei Kosten berücksichtigen rechts.

Nutzung erfassen und einschränken

So kannst du dein Budget besser planen und die Kosten kontrollieren:

  • Du kannst Budgetbenachrichtigungen festlegen und so im Auge behalten, wie sich deine Ausgaben zu einem bestimmten Betrag hin entwickeln. Durch das Festlegen eines Budgets wird die API-Nutzung nicht automatisch gedeckelt. Du wirst nur benachrichtigt, wenn sich die Ausgaben dem festgelegten Limit annähern.
  • Du kannst die tägliche API-Nutzung deckeln, um die Kosten für die Nutzung kostenpflichtiger APIs zu steuern. Wenn du Obergrenzen für Anfragen pro Tag festlegst, kannst du deine Ausgaben begrenzen. Wenn du weißt, wie viel du pro Tag ausgeben möchtest, kannst du mit einer einfachen Gleichung die entsprechende Obergrenze ermitteln. Beispiel: (Monatliche Ausgaben ÷ Preis pro Nutzung) ÷ 30 = Obergrenze für Anfragen pro Tag (für eine API). Unter Umständen umfasst deine Implementierung mehrere kostenpflichtige APIs. In diesem Fall musst du die Gleichung entsprechend anpassen. Denke daran, das Google Maps Platform-Guthaben in Höhe von 200 $ in deiner Rechnung zu berücksichtigen, das dir jeden Monat zur Verfügung steht.

Nutzungs-Tracking pro Kanal

Du kannst jetzt damit beginnen, deine Nutzung über numerische Kanäle zu erfassen. Neben dem Produkt ist das eine weitere Möglichkeit, die Quelle der Nutzung zu kategorisieren. Zuerst musst du den Parameter „channel“ in deine Anfragen einfügen. Die zulässigen Kanalwerte sind 0 bis 999. Hier einige Beispiele:

  • Geocoding Web Service API

    https://maps.googleapis.com/maps/api/geocode/json?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA&key=YOUR_API_KEY&channel=1
  • Maps JavaScript API

    <script src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&channel=2&callback=initMap"
    async defer></script>

Du kannst dir die Kanalnutzung direkt im Abrechnungsbericht ansehen. Kanäle werden unter „Labels“ als „Schlüssel“ angezeigt: goog-maps-channel.

Nach Label filtern
Abbildung 4: Nach Artikelnummer und Kanal filtern
So filterst du deinen Abrechnungsbericht nach Artikelnummer und Kanal:
  1. Verwende den Filter Gruppieren nach für die Artikelnummer.
  2. Klicke auf Labels.
  3. Klicke auf das Drop-down-Menü Schlüssel und wähle goog-maps-channel aus.
  4. Klicke auf das Drop-down-Menü Wert und wähle die zu filternden numerischen Kanäle aus.

Alternativ kannst du auch den Label-Schlüssel goog-maps-channel für die Gruppierung verwenden, um zu sehen, welche Kosten über jeden Kanal anfallen.

Nachdem du die Daten zur Kanalnutzung in deinen Anfragen implementiert hast, kann es bis zu 24 Stunden dauern, bis die Daten in deinem Abrechnungsbericht aufgeführt werden.

Abrechnungsdaten mit BigQuery exportieren

Du hast auch die Möglichkeit, deine Cloud Billing-Daten nach BigQuery zu exportieren.

Mit BigQuery Export kannst du detaillierte Cloud Billing-Daten (z. B. Nutzungs- und Kostenschätzungen) automatisch mehrmals täglich in ein BigQuery-Dataset exportieren lassen, dass du festlegst. So stehen dir deine Abrechnungsdaten über BigQuery für detaillierte Analysen zur Verfügung. Dadurch erhältst du noch detailliertere Informationen zur Quelle deiner Nutzung der Google Maps Platform.

Wenn du BigQuery-Exporte einrichten möchtest, um diese Daten abzurufen, kannst du die folgende Beispielabfrage ausprobieren. Zuvor musst du aber Folgendes tun:

  • Aktiviere die Abrechnung und den Cloud Billing-Datenexport nach BigQuery für dein Konto.
  • Das Tabellenformat ist PROJECT_ID.DATASET_NAME.gcp_billing_export_v1_BILLING_ACCOUNT_ID. Dabei ist…
    • PROJECT_ID die eigentliche Projekt-ID (z. B. „my-project-123456“).
    • DATASET_NAME der Name des Datasets, das du erstellt hast (z. B. „SampleDataSet“).
    • BILLING_ACCOUNT_ID eine Referenz deiner Rechnungskonto-ID mit dem Präfix „gcp_billing_export_v1_“. Bindestriche (-) werden in Unterstriche (_) geändert. Die Rechnungskonto-ID 123456-7890AB-CDEF01 wird dann z. B. zu gcp_billing_export_v1_123456_789AB_CDEF01.

Hinweis: Wenn du ein neues Dataset erstellst, wird es direkt auf der Benutzeroberfläche angezeigt. Die abzufragende Tabelle ist jedoch noch nicht zu sehen, da sie nach einigen Stunden automatisch erstellt wird. Es dauert dann etwa 24 Stunden, bis deine Daten angezeigt werden. Dein BigQuery-Dataset enthält nur Nutzungs- und Kostendaten ab dem Datum, an dem du den Abrechnungsexport eingerichtet hast. Anders ausgedrückt: Abrechnungsdaten werden nicht rückwirkend hinzugefügt. Daher siehst du keine Abrechnungsdaten aus der Zeit vor der Aktivierung des BigQuery-Exports.

  #standardSQL
  SELECT   Date(usage_start_time, "America/Los_Angeles") AS billing_day,
           invoice.month                                 AS invoice_month,
           service.description                           AS service,
           sku.description                               AS sku,
           (
                  SELECT l.value
                  FROM   Unnest(labels) AS l
                  WHERE  l.KEY = 'goog-maps-channel' ) AS goog_maps_channel,
           Round(Sum(usage.amount), 2)                 AS usage_amount,
           usage.unit                                  AS usage_unit,
           Round(Sum(cost), 2)                         AS cost,
           cost_type,
           currency
  FROM     `PROJECT_ID.DATASET_NAME.gcp_billing_export_v1_BILLING_ACCOUNT_ID`
  WHERE    invoice.month = '202002' -- Change the invoice month with the same format as the example.
  GROUP BY billing_day,
           invoice_month,
           service,
           sku,
           goog_maps_channel,
           usage_unit,
           cost_type,
           currency
  ORDER BY billing_day,
           service,
           sku
  

Cloud Billing:

Google Maps Platform:

Antwortstatus und -berichte

Die folgende Tabelle enthält den Antwortstatus und die Antwortcodeklasse sowie Informationen dazu, ob die jeweilige Anfrage in den Nutzungs-, Kontingent- und/oder Abrechnungsberichten enthalten ist.

Antwortstatus Antwortcodeklasse
(2xx, 3xx, 4xx, 5xx)
Nutzungsbericht Bericht zum Kontingent Abrechnungsbericht
OK 2xx,
3xx
Ja Ja Ja
ZERO_RESULTS,
NOT_FOUND
2xx Ja Ja Ja
REQUEST_DENIED 4xx Ja Nein Nein
OVER_DAILY_LIMIT,
OVER_QUERY_LIMIT,
RESOURCE_EXHAUSTED,
dailyLimitExceeded,
rateLimitExceeded,
userRateLimitExceeded
4xx Ja Nein Nein
INVALID_REQUEST (ungültiger Parameter, Fehler beim Parsen der Anfrage) 4xx Ja Nein Nein
NOT_FOUND (Geolocation API und Roads API) 4xx Ja Ja Ja
INVALID_REQUEST (ungültiger Parameterwert),
MAX_WAYPOINTS_EXCEEDED,
MAX_ROUTE_LENGTH_EXCEEDED
usw.
4xx Ja Ja Ja
UNKNOWN_ERROR 5xx Ja Ja Nein