Dieses Dokument bietet einen Überblick über die von Cloud Monitoring bereitgestellten Dienste. Diese Dienste können Ihnen helfen, das Verhalten, den Zustand und die Leistung Ihrer Anwendungen und anderer Google Cloud-Dienste zu verstehen. Cloud Monitoring erfasst und speichert Leistungsinformationen für die meisten Google Cloud-Dienste automatisch. Sie können Prometheus-Messwerte mit Google Cloud Managed Service for Prometheus erfassen. Wenn Sie den Ops-Agent auf Ihren virtuellen Compute Engine-Maschinen (VMs) installieren, können Sie Messwerte und Logs aus Ihren Anwendungen und von Drittanbieteranwendungen erfassen.
Mit den Benachrichtigungs-, Test- und Visualisierungsdiensten von Cloud Monitoring können Sie wichtige Fragen wie die folgenden beantworten:
- Wie hoch ist die Last auf meinem Dienst?
- Reagiert meine Website richtig?
- Läuft mein Dienst gut?
Cloud Monitoring bietet für die meisten Dienste sowohl Google Cloud Console- als auch API-Unterstützung. Einige Dienste unterstützen auch die Google Cloud CLI oder Terraform. Auf den Referenzseiten der Cloud Monitoring API, z. B. auf der Seite alertPolicies.list
, können Sie API-Aufrufe direkt auf der Referenzseite testen.
Cloud Monitoring-Dienste
Cloud Monitoring bietet verschiedene Dienste, mit denen Sie den Zustand und die Leistung Ihrer Anwendungen sowie der anderen von Ihnen verwendeten Google Cloud-Dienste ermitteln können.
Warnungen und Benachrichtigungen
Wenn Sie benachrichtigt werden möchten, wenn der Wert eines Leistungsmesswerts die von Ihnen definierten Kriterien erfüllt, erstellen Sie eine Benachrichtigungsrichtlinie. Die Benachrichtigungsrichtlinie enthält die Liste der Personen oder Gruppen, die Benachrichtigungen erhalten sollen. Monitoring unterstützt gängige Benachrichtigungskanäle wie E-Mail, die Cloud Mobile App und Dienste wie PagerDuty oder Slack. Sie können beispielsweise eine Benachrichtigungsrichtlinie erstellen, damit Sie benachrichtigt werden, wenn die CPU-Auslastung einer VM 80 % überschreitet.
Jede Benachrichtigung enthält relevante Informationen über einen Fehler und einen Link zu einem Vorfall. Ein Vorfall ist ein dauerhafter Datensatz, in dem Informationen gespeichert werden, mit denen Sie den Fehler beheben können. In der Regel enthält ein Eintrag den Status des Vorfalls, Links zu Logs, ein Diagramm der aufgezeichneten Messwertdaten, Labels und die Dauer.
Der Benachrichtigungsdienst ist in viele Google Cloud-Dienste eingebunden. Wenn diese Integrationen vorhanden sind, wird möglicherweise ein Bereich mit empfohlenen Benachrichtigungen oder in einem Diagramm eine Schaltfläche zum Erstellen einer Benachrichtigungsrichtlinie angezeigt. In beiden Fällen sind die Benachrichtigungsrichtlinien vorkonfiguriert. Sie geben nur die Liste der Personen oder Gruppen an, die benachrichtigt werden sollen.
Sie können Benachrichtigungsrichtlinien mit der Google Cloud Console, der Cloud Monitoring API, der Google Cloud CLI oder Terraform erstellen und verwalten.
Proaktives Monitoring und Validierung
Sie können synthetische Monitore erstellen, um die Verfügbarkeit, Konsistenz und Leistung Ihrer Dienste, Anwendungen, Webseiten und APIs zu testen. Sie können beispielsweise mit Verfügbarkeitsdiagnosen die Reaktionsfähigkeit von HTTP-, HTTPS- und TCP-Endpunkten prüfen und sich dann benachrichtigen lassen, wenn ein Endpunkt nicht antwortet. Sie können auch eine Prüfung für fehlerhafte Links erstellen, um eine Webseite zu crawlen und dann eine Benachrichtigung zu erhalten, wenn fehlerhafte Links gefunden werden.
Sie können synthetisches Monitoring mit der Google Cloud Console, der Cloud Monitoring API, der Google Cloud CLI oder Terraform erstellen und verwalten.
Datenvisualisierung
Um Ihre Daten zu visualisieren, um Trends zu erkennen, Ausreißer zu erkennen und andere Details Ihrer Daten anzusehen, können Sie das Dashboard und die Diagrammdienste verwenden:
Der Dashboard-Dienst erstellt automatisch ein von Google Cloud verwaltetes Dashboard, wenn Sie Ihrem Google Cloud-Projekt eine Ressource hinzufügen. Ein Dashboard wird beispielsweise erstellt, wenn Sie eine Compute Engine-Instanz, eine Benachrichtigungsrichtlinie oder einen synthetischen Monitor erstellen. Mit diesen Dashboards können Sie Leistungs- und Konfigurationsinformationen wie die Laufwerksnutzung oder IP-Adresse ansehen und Ereignisse ansehen.
Erstellen Sie ein benutzerdefiniertes Dashboard, um festzulegen, welche Daten angezeigt werden und in welchem Format diese Daten angezeigt werden. Sie können beispielsweise ein Grafana-Dashboard importieren oder ein Dashboard aus einer Vorlage installieren. Ihre benutzerdefinierten Dashboards können Diagramme, Tabellen, Logs und Fehlergruppen, Benachrichtigungsrichtlinien und -vorfälle sowie Text anzeigen. Sie können auch benutzerdefinierte Dashboards für Personen oder Gruppen in Ihrer Organisation freigeben und diese Dashboards so konfigurieren, dass Ereignisse angezeigt werden.
Sie können Dashboards über die Google Cloud Console oder die API erstellen und verwalten.
Mit dem Diagrammdienst Metrics Explorer können Sie Zeitreihendaten schnell visualisieren und untersuchen. Mit den Diagrammeinstellungen können Sie aktuelle Daten mit vorherigen Daten vergleichen, Ausreißer und Perzentile anzeigen sowie mehrere Messwerte anzeigen. Sie können auch Diagramme in einem benutzerdefinierten Dashboard speichern.
Datenerhebung und -speicherung
Cloud Monitoring erfasst und speichert die folgenden Arten von Messwertdaten:
- Von Google Cloud-Diensten generierte Systemmesswerte. Diese Messwerte liefern Informationen über den Betrieb eines Dienstes.
- System- und Anwendungsmesswerte, die der Ops-Agent zu Systemressourcen und Anwendungen erfasst, die auf Compute Engine-Instanzen ausgeführt werden. Sie können den Ops-Agent so konfigurieren, dass Messwerte aus Drittanbieter-Plug-ins wie Apache- oder Nginx-Webservern oder MongoDB- oder PostgreSQL-Datenbanken erfasst werden.
Benutzerdefinierte Messwerte, die mit der Cloud Monitoring API oder mithilfe einer Bibliothek wie OpenTelemetry erstellt werden.
Externe Messwerte, die von einigen Open-Source-Bibliotheken oder Drittanbietern definiert werden.
Prometheus-Messwerte, die von Google Cloud Managed Service for Prometheus oder mithilfe des Ops-Agents und des Prometheus-Empfängers bzw. OTLP-Empfänger erfasst werden.
- Logbasierte Messwerte, die numerische Informationen zu den Logs aufzeichnen, die in Cloud Logging geschrieben wurden. Die von Google definierten logbasierten Messwerte umfassen die Anzahl der vom Dienst erkannten Fehler und die Gesamtzahl der Logeinträge, die von Ihrem Google Cloud-Projekt empfangen wurden. Sie können auch logbasierte Messwerte definieren.
Abfragesprachen
Wenn Sie eine Benachrichtigungsrichtlinie oder ein Diagramm erstellen, müssen Sie eine Abfrage bereitstellen, in der die Daten beschrieben werden, die Sie überwachen oder in einem Diagramm darstellen möchten:
Google Cloud Console: Sie können eine Abfrage erstellen, indem Sie eine Auswahl in den Menüs auswählen, oder eine Abfrage schreiben. Abfrageeditoren sind für die Prometheus Query Language (PromQL) und die Monitoring Query Language (MQL) verfügbar. Die Abfrageeditoren bieten Syntaxprüfungen und Vorschläge. Sie können auch einen Monitoring-Filterausdruck schreiben.
Cloud Monitoring API: Die API unterstützt Prometheus Query Language (PromQL), MQL-Abfragen und Monitoring-Filterausdrücke.
Große Systeme überwachen
In diesem Abschnitt wird beschrieben, wie Sie Ressourcen als Sammlung verwalten und Messwerte überwachen können, die in mehreren Google Cloud-Projekten gespeichert sind.
Ressourcen als Sammlung verwalten
Wenn Sie Ihre Ressourcen als Sammlung statt einzeln verwalten möchten, erstellen Sie eine Ressourcengruppe. Eine Ressourcengruppe ist eine dynamische Sammlung von Ressourcen, die bestimmte von Ihnen angegebene Kriterien erfüllen. Wenn Sie Ressourcen hinzufügen und entfernen, z. B. indem Sie Ihrem Google Cloud-Projekt Compute Engine-VM-Instanzen hinzufügen, ändert sich die Mitgliedschaft in der Gruppe automatisch. Im Folgenden finden Sie Beispiele für Ressourcengruppen:
- Compute Engine-Instanzen, deren Namen mit dem String
prod-
beginnen. - Ressourcen mit dem Tag
test-cluster
. - Amazon EC2-Instanzen in Region A oder Region B.
Nachdem Sie eine Ressourcengruppe definiert haben, können Sie die Gruppe wie eine einzelne Ressource überwachen. Sie können beispielsweise eine Verfügbarkeitsdiagnose konfigurieren, um eine Ressourcengruppe zu überwachen. Bei Diagrammen und Benachrichtigungsrichtlinien können Sie auch nach dem Gruppennamen filtern.
Weitere Informationen finden Sie unter Ressourcengruppen konfigurieren.
Messwerte für mehrere Google Cloud-Projekte überwachen
Wenn Sie die Zeitachsendaten für mehrere Google Cloud-Projekte und AWS-Konten über eine einzige Schnittstelle ansehen und überwachen möchten, konfigurieren Sie einen Messwertbereich für mehrere Projekte.
Standardmäßig bieten Cloud Monitoring-Seiten in der Google Cloud Console nur Zugriff auf die Zeitachsen, die im Projekt zur Festlegung des Umfangs gespeichert sind. Das den Umfang festlegende Projekt ist das Projekt, das Sie in der Projektauswahl der Google Cloud Console ausgewählt haben. Im Projekt zur Festlegung des Umfangs werden die von Ihnen konfigurierten Benachrichtigungen, synthetischen Monitore, Dashboards und Monitoringgruppen gespeichert.
Im Projekt zur Festlegung des Umfangs wird auch ein Messwertbereich gehostet. Mit dem Messwertbereich werden die Projekte und Konten definiert, deren Messwerte für das den Umfang festlegende Projekt sichtbar sind. Sie können den Messwertbereich so konfigurieren, dass Zeitreihendaten aus anderen Google Cloud-Projekten und aus AWS-Konten enthalten sind. Informationen zum Ändern eines Messwertbereichs finden Sie unter Messwertbereich für mehrere Projekte konfigurieren.
Cloud Monitoring-Datenmodell
In diesem Abschnitt wird das Cloud Monitoring-Datenmodell vorgestellt:
Ein Messwerttyp beschreibt etwas, das gemessen wird. Beispiele für Messwerttypen sind die CPU-Auslastung einer VM und der Prozentsatz eines verwendeten Laufwerks.
Eine Zeitachse ist eine Datenstruktur, die mit Zeitstempeln versehene Messungen eines Messwerts und Informationen über die Quelle und Bedeutung dieser Messungen enthält.
Im Folgenden finden Sie einige Details zum Inhalt einer Zeitreihe:
Das
points
-Array enthält die Messwerte mit Zeitstempel.Das folgende Beispiel zeigt ein
points
-Array mit zwei Werten:"points": [ { "interval": { "startTime": "2020-07-27T20:20:21.597143Z", "endTime": "2020-07-27T20:20:21.597143Z" }, "value": { "doubleValue": 0.473005 } }, { "interval": { "startTime": "2020-07-27T20:19:21.597239Z", "endTime": "2020-07-27T20:19:21.597239Z" }, "value": { "doubleValue": 0.473025 } }, ],
Um die Bedeutung eines Werts zu verstehen, müssen Sie sich auf die anderen Daten in der Zeitreihe und auf die Definitionen dieser Daten beziehen.
Im Feld
resource
wird die überwachte Hardware- oder Softwarekomponente beschrieben. In Cloud Monitoring wird die Hardware- oder Softwarekomponente als überwachte Ressource bezeichnet. Beispiele für überwachte Ressourcen sind Compute Engine-Instanzen und App Engine-Anwendungen. Eine Liste der überwachten Ressourcen finden Sie in der Liste der überwachten Ressourcen.Das folgende Beispiel zeigt ein
resource
-Feld:"resource": { "type": "gce_instance", "labels": { "instance_id": "2708613220420473591", "zone": "us-east1-b", "project_id": "sampleproject" } }
Im
type
-Feld wird die überwachte Ressource alsgce_instance
aufgelistet. Dies bedeutet, dass diese Messungen von einer Compute Engine-VM-Instanz stammen.Das Feld
labels
enthält Schlüssel/Wert-Paare, die zusätzliche Informationen zur überwachten Ressource enthalten. Beim Typgce_instance
identifizieren die Labels die überwachte VM-Instanz.
Im
metric
-Feld wird beschrieben, was gemessen wird.Das folgende Beispiel zeigt ein
metric
-Feld:"metric": { "labels": { "instance_name": "test" }, "type": "compute.googleapis.com/instance/cpu/utilization" },
Für Google-Dienste gibt das Feld
type
den Dienst an und was überwacht wird. In diesem Beispiel misst der Compute Engine-Dienst die CPU-Auslastung. Wenn das Feldtype
mitcustom
oderexternal
beginnt, ist der Messwert entweder ein benutzerdefinierter Messwert oder ein von einem Drittanbieter definierter Messwert.Das Feld
labels
enthält Schlüssel/Wert-Paare, die zusätzliche Informationen zur Messung enthalten. Diese Labels werden als Teil derMetricDescriptor
definiert, einer Datenstruktur, die die Attribute der gemessenen Daten definiert. DieMetricDescriptor
für den Messwertcompute.googleapis.com/instance/cpu/utilization
enthält das Labelinstance_name
.
Im Feld
metricKind
wird die Beziehung zwischen benachbarten Messungen innerhalb einer Zeitachse beschrieben:GAUGE
-Messwerte speichern den Wert eines zu einer bestimmten Zeit gemessenen Elements, z. B. einen stündlichen Temperaturdatensatz.In
CUMULATIVE
-Messwerten wird der kumulierte Wert des Objekts gespeichert, der zu einer bestimmten Zeit gemessen wurde, z. B. der Kilometerstand in einem Fahrzeug.DELTA
-Messwerte speichern Änderung an den Werten eines Elements, die zu einem bestimmten Zeitraum gemessen wurden, z. B. eine Aktienübersicht, die die Gewinne oder Verluste der Aktie anzeigt.
Das
valueType
-Feld beschreibt den Datentyp für die Messung:INT64
,DOUBLE
,BOOL
,STRING
oderDISTRIBUTION
.
Cloud Monitoring schreibt für jede Kombination von Ressourcen- und Messwertlabelwerten eine Zeitachse. Sie können diese Labels zum Gruppieren und Filtern von Zeitreihen verwenden. Wenn ein Google Cloud-Projekt beispielsweise mehrere Compute Engine-VM-Instanzen enthält, ist die CPU-Auslastung für jede VM-Instanz eine eindeutige Zeitachse. Hier sind einige Möglichkeiten, wie Sie diese Daten darstellen können:
- Sie können die CPU-Auslastung jeder VM-Instanz anzeigen lassen.
- Sie können die CPU-Auslastung für eine bestimmte VM-Instanz anzeigen lassen. Filtern Sie dazu die Zeitachse nach einem einzelnen Wert des Labels
instance_id
. Sie können nach den VM-Instanzen nach dem Label
machine_type
gruppieren und dann die durchschnittliche CPU-Auslastung anzeigen lassen. Folgender Screenshot zeigt ein Diagramm mit dieser Konfiguration:
Preise
Im Allgemeinen sind Cloud Monitoring-Systemmesswerte kostenlos, Messwerte von externen Systemen, Agents oder Anwendungen nicht. Abrechenbare Messwerte werden entweder nach der Anzahl der Byte oder der Anzahl der aufgenommenen Stichproben berechnet.
Weitere Informationen zu den Cloud Monitoring-Preisen finden Sie in den folgenden Dokumenten:
Nächste Schritte
- Wenn Sie Cloud Monitoring kennenlernen möchten, sehen Sie sich die Kurzanleitung zum Überwachen einer Compute Engine-Instanz an.
- Informationen zum Konfigurieren eines Google Cloud-Projekts, um Messwerte für mehrere Google Cloud-Projekte und AWS-Konten anzusehen, finden Sie unter Übersicht über Messwertbereiche.
Informationen zum Cloud Monitoring-Datenmodell finden Sie unter Messwerte, Zeitachsen und Ressourcen.
Informationen zur Cloud Monitoring API finden Sie unter APIs und Referenz.
Eine Liste der Messwerte und überwachten Ressourcen finden Sie in der Liste der Messwerte und der Liste der überwachten Ressourcen.