API-Nutzung überwachen

Die meisten Cloud APIs senden detaillierte Telemetriedaten zur API-Nutzung. Dies kann nützlich sein, um den Gesamtverbrauch zu verfolgen und die Leistung zu überwachen. Außerdem können dadurch problematische Interaktionen zwischen Ihrer Software und Google-Diensten aufgedeckt werden. Die Daten können Ihnen auch Informationen über abnormales Verhalten von Google Cloud-Diensten liefern und die Bearbeitungszeiten deutlich verkürzen, wenn Sie bei der Fehlerbehebung Unterstützung von Google benötigen.

Die von diesen APIs gelieferten Messwerte sind für die Site Reliability Engineers von Google "Gold wert", denn damit können sie den Zustand eines Dienstes bewerten. Sie umfassen den Gesamt-Traffic, die Fehlerrate und die Latenz (für verschiedene Perzentile). Die Ihnen gezeigten Messwerte sind spezifisch für die Nutzung der API durch Ihr Projekt und spiegeln nicht unbedingt die Nutzung oder Leistung anderer Nutzer wider.

Sie können API-Messwerte an zwei Stellen aufrufen: im API-Dashboard oder in der Operations-Suite von Google Cloud.

  • Im API-Dashboard erhalten Sie eine grundlegende Übersicht über Ihre Nutzung. Die einzelnen API-Seiten liefern in vorgefertigten Diagrammen mehr Details. Alle auf dieser Seite verwendeten Messwerte werden auch in der Operations-Suite von Google Cloud veröffentlicht.
  • Mit der Operations-Suite von Google Cloud können Sie eine zuverlässige Überwachung für Ihre Anwendung konfigurieren. Dazu fügen Sie diese Messwerte zu benutzerdefinierten Dashboards hinzu, verweisen auf andere verfügbare Statistiken (einschließlich der von Ihrer Anwendung gesendeten benutzerdefinierten Messwerte und der von der GCP bereitgestellten dienstspezifischen Messwerte wie Warteschlangeninformationen für Pub/Sub oder Abfragedaten für Spanner) und richten Warnungen ein, mit denen auf ungewöhnliches Anwendungsverhalten hingewiesen wird.

Details zu API-Messwerten finden Sie in der Cloud Monitoring-Dokumentation.

API-Dashboard verwenden

Das API-Dashboard der Cloud Platform Console bietet die einfachste Möglichkeit, sich einen Überblick über API-Messwerte zu verschaffen. Hier erhalten Sie eine Übersicht über sämtliche Messwerte zu Ihrer API-Nutzung oder können sich die Nutzung einer bestimmten API im Detail ansehen.

Wenn Sie sich die Messwerte zur Nutzung in einer Übersicht in der Konsole ansehen möchten, rufen Sie in Ihrem Google Cloud-Projekt den Abschnitt "APIs und Dienste" auf. Die Hauptseite des API-Dashboards wird standardmäßig angezeigt. Hier sehen Sie alle APIs, die momentan für Ihr Projekt aktiviert sind, sowie Übersichtsdiagramme für die folgenden Messwerte:

  • Traffic: die Anzahl der Anfragen pro Sekunde, die von Ihrem Projekt an alle aktivierten APIs gestellt werden
  • Fehler: der Prozentsatz der Anfragen an die aktivierten APIs, die zu Fehlern geführt haben

Wenn Sie APIs aktiviert haben, die Latenzmesswerte unterstützen, wird außerdem Folgendes angezeigt:

  • Medianlatenz: die Medianlatenz für Ihre Anfragen

So können Sie Details zur Nutzung für eine bestimmte API anzeigen lassen:

  1. Wählen Sie in der Liste auf der Hauptseite des API-Dashboards die gewünschte API aus. Die Übersichtsseite der API zeigt ein detailliertes Traffic-Diagramm mit einer Aufschlüsselung nach Antwortcode an.
  2. Wenn Sie noch mehr Details zu den Nutzungsinformationen sehen möchten, wählen Sie Messwerte aufrufen aus. Standardmäßig werden die folgenden vorgefertigten Diagramme angezeigt. Es stehen jedoch noch mehr zur Verfügung:

    • Traffic nach Antwortcode
    • Fehler nach API-Methode

    Wenn die API Latenzmesswerte unterstützt, wird außerdem Folgendes angezeigt:

    • Gesamtlatenz für das 50., 95. und 99. Perzentil
    • Latenz nach API-Methode (Medianwert)
  3. Wenn Sie mehr Diagramme anzeigen lassen möchten, können Sie über das Drop-down-Menü Grafiken auswählen weitere vorgefertigte Diagramme auswählen.

Operations-Suite von Google Cloud verwenden

Wenn Sie die Operations-Suite von Google Cloud nutzen, können Sie mit dem Metrics Explorer die verfügbaren Messwertdaten im Detail auswerten und so einen besseren Einblick in Ihre API-Nutzung gewinnen. Die Operations-Suite von Google Cloud unterstützt eine Vielfalt an Messwerten, die Sie mit Filtern und Aggregationen kombinieren können. Auf diese Weise erhalten Sie neue und aufschlussreiche Einblicke in die Anwendungsleistung. So haben Sie z. B. die Möglichkeit, einen Messwert zur Anzahl der Anfragen mit einem Filter für die Klasse des HTTP-Antwortcodes zu kombinieren, um dann in einem erstellten Dashboard Fehlerraten im Zeitverlauf anzeigen zu lassen. Sie können sich aber auch für das 95. Perzentil die Latenz von Anfragen an die Cloud Pub/Sub API ansehen.

Wenn Sie sich API-Messwerte im Metrics Explorer ansehen möchten, wählen Sie als Ressourcentyp Consumed API aus. Über die Filter- und Aggregationsoptionen haben Sie dann die Möglichkeit, die Daten zu verfeinern. Wenn Sie die gewünschten API-Nutzungsinformationen ermittelt haben, können Sie mithilfe der Operations-Suite von Google Cloud benutzerdefinierte Dashboards sowie Warnungen erstellen und damit eine robuste Anwendung weiter überwachen und warten. Auf den folgenden Seiten erhalten Sie Informationen über die Vorgehensweise:

Weitere Informationen finden Sie unter Metrics Explorer.

Mithilfe von API-Messwerten Fehler beheben

API-Messwerte können besonders hilfreich sein, wenn Sie sich bei auftretenden Problemen an Google wenden müssen – Sie können daran aber eventuell auch erkennen, dass Sie den Support gar nicht erst kontaktieren müssen. Beispiel:

  • Wenn sämtliche Aufrufe eines Dienstes mit einer bestimmten Anmelde-ID fehlschlagen, mit allen anderen Anmelde-IDs jedoch erfolgreich sind, stimmt wahrscheinlich mit dem Konto etwas nicht. Sie können dieses Problem leicht selbst lösen können, ohne ein Ticket eröffnen zu müssen.
  • Bei der Behebung eines Fehlers in Ihrer Anwendung bemerken Sie, dass deren reduzierte Leistung mit einer anhaltenden Erhöhung der Latenz für das 50. Perzentil eines kritischen GCP-Dienstes korreliert. In diesem Fall sollten Sie uns sofort kontaktieren und auf die betreffenden Daten hinweisen, damit wir uns so schnell wie möglich um das Problem kümmern können.
  • Die Latenzen für einen GCP-Dienstbericht sehen gut und unverändert aus, aber Ihre In-App-Messwerte melden bei Aufrufen des Dienstes eine ungewöhnlich hohe Latenz. Das ist ein Hinweis auf Probleme im Netzwerk. Wenden Sie sich an Ihren Netzwerkanbieter (in einigen Fällen ist das Google), damit dieser mit der Fehlerbehebung beginnen kann.

Best Practices

API-Messwerte sind zwar äußerst hilfreich, es gibt allerdings einige Dinge zu beachten, damit sie auch wirklich nützliche Informationen liefern. Das gilt insbesondere bei der Einrichtung von auf Messwerten basierenden Benachrichtigungen. Die folgenden Best Practices helfen Ihnen, API-Messwertdaten optimal zu nutzen.

Verursacht die Latenz ein Problem?

Während einige Dienste recht latenzempfindlich sind, spielen für andere Skalierbarkeit und Zuverlässigkeit eine größere Rolle. Einige APIs wie Cloud Storage oder BigQuery können für mehrere Sekunden eine hohe Latenz haben, ohne dass es Kunden auffällt. Daten aus API-Messwerten liefern Ihnen Informationen dazu, was Ihre Nutzer bei einem bestimmten Dienst brauchen.

Abweichungen von der Norm sind der Schlüssel

Bevor Sie für einen bestimmten Messwert eine Benachrichtigung einrichten, überlegen Sie sich, was als ungewöhnliches Verhalten gilt. Ein Blick auf Ihre API-Messwerte liefert Ihnen die Information, dass bei den meisten Diensten die Latenz einer Normalverteilung folgt: ein hoher Ausschlag in der Mitte, der nach beiden Seiten hin abfällt. Mithilfe der Messwerte können Sie die Normalverteilung "lesen" und Ihre App entsprechend so entwickeln, dass sie im Bereich der Verteilungskurve gut funktioniert. Mithilfe von Messwerten können Sie Änderungen bei der Verteilung mit Zeitpunkten korrelieren, zu denen die App nicht wie vorgesehen funktioniert, und auf diese Weise einem Problem auf den Grund gehen. Das 99. Perzentil unterscheidet sich erwartungsgemäß sehr stark vom Median. Die Perzentile selbst sollten sich im Laufe der Zeit jedoch nicht stark verändern.

Vielleicht können Sie auch beobachten, dass einige Arten von Anfragen länger dauern als andere. Wenn die mittlere Größe eines in Google Fotos hochgeladenen Bildes 4 MB beträgt, Sie normalerweise aber RAW-Dateien mit einer Größe von 20 MB hochladen, ist Ihre durchschnittliche Zeit zum Hochladen von 20 Fotos wahrscheinlich wesentlich länger als die der meisten anderen Nutzer – trotzdem ist das Verhalten für Sie normal.

All das bedeutet: Eine Benachrichtigung gleich beim ersten Auftreten eines sekundenlangen RPC- oder 5xx-HTTP-Aufrufs einzurichten, ist nicht besonders nützlich. Wenn Sie einen Google-Dienst als mögliche Ursache für ein Problem bei Ihrer Anwendung untersuchen, vergleichen Sie stattdessen die Rückgabecodes und die Latenzzeiten im Zeitverlauf und achten Sie auf anhaltende Abweichungen von der Norm, die mit beobachteten Problemen in Ihrer Anwendung korrelieren.

Traffic-Rate

API-Messwerte sind am nützlichsten, wenn ein hohes Volumen an Traffic zur API anfällt. Wenn Sie einen Dienst nur zeitweise aufrufen, sind Ihre API-Messwerte statistisch nicht valide und liefern Ihnen keine aussagekräftigen Erkenntnisse.

Wenn Sie beispielsweise die Latenz für das 99,5. Perzentil für einen Dienst verfolgen und nur 100 Aufrufe pro Stunde durchführen, erhalten Sie bei der Messung über einen Zeitraum von zwei Stunden lediglich einen Datenpunkt, der das 99,5. Perzentil repräsentiert. Das verrät Ihnen nicht viel über das normale Verhalten der API oder der Anwendung. Achten Sie darauf, dass die Traffic-Rate, das verfolgte Perzentil und das berücksichtigte Zeitfenster viele aufschlussreiche Datenpunkte generieren, denn ansonsten helfen Ihnen die Daten beim Monitoring nicht weiter.

Unterstützte APIs

Die folgenden APIs unterstützen alle unsere API-Nutzungsmesswerte, einschließlich Latenzmesswerte. Andere APIs stellen nur Messwerte zu Traffic und Fehlern bereit.