Cloud Monitoring erfasst, speichert und analysiert Messwertdaten, damit Sie das Verhalten, den Zustand und die Leistung Ihrer Anwendungen undGoogle Cloud -Dienste besser nachvollziehen können. Cloud Monitoring erfasst automatisch Leistungsmesswerte für die meisten Google Cloud -Dienste. Sie können auch Prometheus-Messwerte mit Google Cloud Managed Service for Prometheus erfassen oder den Ops-Agent auf Ihren Compute Engine-VMs (virtuelle Maschinen) installieren, um Messwerte und Logs aus Ihren Anwendungen und Software von Drittanbietern zu erfassen.
Mit den Diensten für Benachrichtigungen, Tests und Visualisierung von Cloud Monitoring können Sie die Dienstlast und -leistung verfolgen, die Reaktionsfähigkeit von Websites prüfen und den Zustand Ihrer App Hub-Anwendungen überwachen. Sie können auf die meisten Cloud Monitoring-Dienste über die Google Cloud Console, die Cloud Monitoring API, die Google Cloud CLI oder Terraform zugreifen und sie verwalten.
Cloud Monitoring-Dienste
Cloud Monitoring bietet verschiedene Dienste, mit denen Sie den Zustand und die Leistung Ihrer Anwendungen und der anderen von Ihnen verwendeten Google Cloud -Dienste nachvollziehen können.
Benachrichtigungen in Cloud Monitoring
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 zu einem Fehler und einen Link zu einer Benachrichtigung. Eine Benachrichtigung ist ein dauerhafter Datensatz, in dem Informationen gespeichert werden, die Sie zur Fehlerbehebung verwenden können. In der Regel werden in einem Datensatz der Status der Benachrichtigung, Links zu Logs, ein Diagramm der aufgezeichneten Messwertdaten, Labels und die Dauer aufgeführt.
Der Benachrichtigungsdienst ist in viele Google Cloud Dienste integriert. Wenn diese Integrationen vorhanden sind, wird möglicherweise ein Bereich mit empfohlenen Benachrichtigungen oder ein Button in einem Diagramm angezeigt, mit dem Sie eine Benachrichtigungsrichtlinie erstellen können. 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 -Konsole, der Cloud Monitoring API, der Google Cloud CLI oder Terraform erstellen und verwalten.
Proaktives Monitoring und Validierung
Um die Verfügbarkeit, Konsistenz und Leistung Ihrer Dienste, Anwendungen, Webseiten und APIs zu testen, erstellen Sie synthetische Monitore. Sie können beispielsweise mit Verfügbarkeitsdiagnosen HTTP-, HTTPS- und TCP-Endpunkte auf Reaktionsfähigkeit prüfen und sich benachrichtigen lassen, wenn ein Endpunkt nicht reagiert. Sie können auch eine Prüfung auf fehlerhafte Links erstellen, um eine Webseite zu crawlen und sich benachrichtigen zu lassen, wenn fehlerhafte Links erkannt werden.
Sie können synthetische Monitore über die Google Cloud Console, die Cloud Monitoring API, die Google Cloud CLI oder Terraform erstellen und verwalten.
Datenvisualisierung
Wenn Sie Google Cloud -Ressourcen instanziieren oder Anwendungen in App Hub registrieren, erstellt der Dashboard-Dienst automatisch Google Cloud-verwaltete Dashboards. Diese Dashboards enthalten kuratierte Informationen, mit denen Sie den Zustand Ihrer Ressourcen und Anwendungen besser nachvollziehen können. Für eine App Hub-Anwendung werden beispielsweise Dashboards für die Anwendung und für jeden ihrer Dienste und Arbeitslasten erstellt. Diese Dashboards enthalten Informationen wie Log- oder Messwertdaten einer Anwendung und die Anzahl der offenen Benachrichtigungen.
Die von Google Cloud erstellten Dashboards enthalten möglicherweise genügend Informationen, um eine Untersuchung abzuschließen. Sie liefern jedoch möglicherweise nicht die genauen Daten, die Sie benötigen, um Trends zu erkennen, Ausreißer zu identifizieren oder andere Details zu Ihren Daten zu sehen. Für diese Aufgaben können Sie die Dienste Dashboard und Diagramme verwenden:
Wenn Sie festlegen möchten, welche Daten angezeigt werden und in welchem Format, erstellen Sie ein benutzerdefiniertes Dashboard. Sie können beispielsweise ein Grafana-Dashboard importieren oder ein Dashboard aus einer Vorlage installieren.
In Ihren benutzerdefinierten Dashboards können Sie Folgendes anzeigen lassen:
- Diagramme und Tabellen mit Messwertdaten
- Logdaten und Fehlergruppen
- Diagramme für Benachrichtigungsrichtlinien
- Informationen zu Benachrichtigungen
- Text
- Ereignisse wie ein Neustart oder ein Absturz, die den Betrieb eines Systems beeinträchtigen.
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 analysieren. Mit den Diagrammeinstellungen können Sie aktuelle Daten mit früheren Daten vergleichen, Ausreißer und Perzentile anzeigen und mehrere Messwerte darstellen. Sie können Diagramme auch 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 dazu, wie ein Dienst funktioniert.
- 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 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 mit dem Ops-Agent und dem Prometheus-Empfänger oder dem OTLP-Empfänger erfasst werden.
- Logbasierte Messwerte, die numerische Informationen zu den in Cloud Logging geschriebenen Logs aufzeichnen. Google-definierte logbasierte Messwerte umfassen die Anzahl der von Ihrem 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 für Cloud Monitoring
Wenn Sie eine Benachrichtigungsrichtlinie oder ein Diagramm erstellen, müssen Sie eine Abfrage angeben, die die Daten beschreibt, die Sie überwachen oder in einem Diagramm darstellen möchten:
Google Cloud -Konsole: Sie können Ihre Abfrage erstellen, indem Sie Menüauswahlen treffen oder eine Abfrage schreiben. Abfrage-Editoren sind für die Prometheus Query Language (PromQL) verfügbar. Der Abfrageeditor bietet Syntaxprüfungen und Vorschläge. Sie können auch einen Monitoring-Filter-Ausdruck schreiben.
Cloud Monitoring API: Die API unterstützt die Prometheus Query Language (PromQL) und Monitoring-Filterausdrücke.
Messwerte für mehrere Google Cloud Projekte überwachen
Wenn Sie die Zeitachsendaten für mehrereGoogle Cloud -Projekte und AWS-Konten über eine einzige Benutzeroberfläche aufrufen 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 Zeitreihen, die im Bereichsprojekt gespeichert sind. Das Projekt für den Bereich ist das Projekt, das Sie mit der Projektauswahl derGoogle Cloud Console ausgewählt haben. Im Umfang festlegenden Projekt werden die von Ihnen konfigurierten Benachrichtigungen, synthetischen Monitorings und Dashboards gespeichert.
Das den Bereich festlegende Projekt hostet auch einen Messwertbereich. Der Messwertbereich definiert die Projekte und Konten, deren Messwerte für das den Bereich festlegende Projekt sichtbar sind. Sie können den Messwertbereich so konfigurieren, dass er Zeitachsendaten aus anderen Google Cloud Projekten und aus AWS-Konten enthält. 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.
Hier sind einige Details zum Inhalt einer Zeitreihe:
Das
points-Array enthält die Messwerte mit Zeitstempel.Hier ein Beispiel für 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 die anderen Daten in der Zeitreihe und die Definitionen dieser Daten ansehen.
Das Feld
resourcebeschreibt die Hardware- oder Softwarekomponente, die überwacht wird. 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 unter Liste überwachter Ressourcen.Hier ein Beispiel für 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_instanceaufgelistet. Dies bedeutet, dass diese Messungen von einer Compute Engine-VM-Instanz stammen.Das Feld
labelsenthält Schlüssel/Wert-Paare mit zusätzlichen Informationen zur überwachten Ressource. Bei einemgce_instance-Typ identifizieren die Labels die VM-Instanz, die überwacht wird.
Im
metric-Feld wird beschrieben, was gemessen wird.Hier ein Beispiel für ein
metric-Feld:"metric": { "labels": { "instance_name": "test" }, "type": "compute.googleapis.com/instance/cpu/utilization" },- Für Google Cloud -Dienste gibt das Feld
typeden Dienst und die zu überwachenden Elemente an. In diesem Beispiel wird die CPU-Auslastung vom Compute Engine-Dienst gemessen. Wenn das Feldtypemitcustomoderexternalbeginnt, ist der Messwert entweder ein benutzerdefinierter Messwert oder einer, der von einem Drittanbieter definiert wurde.
- Das Feld
labelsenthält Schlüssel/Wert-Paare mit zusätzlichen Informationen zur Messung. Diese Labels werden als Teil vonMetricDescriptordefiniert. Das ist eine Datenstruktur, die die Attribute der gemessenen Daten definiert. DieMetricDescriptorfür den Messwertcompute.googleapis.com/instance/cpu/utilizationenthält das Labelinstance_name.
- Für Google Cloud -Dienste gibt das Feld
Das Feld
metricKindbeschreibt die Beziehung zwischen benachbarten Messungen in einer Zeitreihe: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,STRINGoderDISTRIBUTION.
- Sie können die CPU-Auslastung jeder VM-Instanz anzeigen lassen.
- Sie können die CPU-Auslastung für eine bestimmte VM-Instanz anzeigen, indem Sie die Zeitreihe nach einem einzelnen Wert des Labels
instance_idfiltern. Sie können die VM-Instanzen nach dem Label
machine_typegruppieren und dann die durchschnittliche CPU-Auslastung anzeigen lassen. Folgender Screenshot zeigt ein Diagramm mit dieser Konfiguration:
Preise
Informationen zu den Preisen für Cloud Monitoring finden Sie auf der Seite Google Cloud Observability-Preise.
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 Ihres Google Cloud -Projekts zum Aufrufen von Messwerten für mehrere Google Cloud -Projekte und AWS-Konten finden Sie unter Messwertbereiche – Übersicht.
Informationen zum Cloud Monitoring-Datenmodell finden Sie unter Messwerte, Zeitreihen und Ressourcen.
Informationen zur Cloud Monitoring API finden Sie unter APIs und Referenz.
Listen der Messwerte und überwachten Ressourcen finden Sie unter Liste der Messwerte und Liste der überwachten Ressourcen.