Das Monitoring-Modell von Cloud Monitoring besteht aus drei Hauptkonzepten:
- Überwachte Ressourcentypen
- Messwerttypen
- Zeitreihe
Im Dokument Das Messwertmodell werden diese Cloud Monitoring-Konzepte allgemein beschrieben. Wenn Ihnen diese Konzepte neu sind, lesen Sie zuerst diese Seite.
Auf dieser Seite werden Messwerttypen, überwachte Ressourcen und Zeitachsen sowie einige verwandte Konzepte ausführlicher beschrieben. Diese Konzepte gelten für alle Monitoring-Messwerte.
Sie sollten die Informationen auf dieser Seite verstehen, wenn Sie eine der folgenden Aktionen ausführen möchten:Prüfen Sie Messwertdaten mit dem Metrics Explorer.
Erstellen Sie Benachrichtigungsrichtlinien, um Sie zu benachrichtigen, wenn ein Wert seine normalen Grenzwerte überschreitet, wie unter Benachrichtigungsrichtlinien verwenden beschrieben.
Rufen Sie mithilfe der Monitoring API Rohdaten oder aggregierte Monitoringdaten ab, wie unter Zeitreihendaten abrufen beschrieben.
Erstellen Sie eigene Messwerttypen, wie unter Benutzerdefinierte Messwerte beschrieben.
Anmerkungen zu Labels
Typen von überwachten Ressourcen und Messwerttypen unterstützen beide Labels, mit denen Daten während der Analyse klassifiziert werden können. Beispiel:
- Ein Typ einer überwachten Ressource für eine virtuelle Maschine kann Labels für den Standort der Maschine und die Projekt-ID enthalten, die der Maschine zugeordnet ist. Wenn Informationen zur überwachten Ressource aufgezeichnet werden, enthalten die Informationen die Werte für die Labels. Eine überwachte Ressource kann zusätzlich zu den für den Typ der überwachten Ressource definierten Labels auch vom System oder vom Nutzer bereitgestellte Metadatenlabels haben.
- Ein Messwerttyp, der API-Anfragen zählt, kann Labels haben, um den Namen der aufgerufenen Methode und den Status der Anfrage zu erfassen.
Die Verwendung von Labels wird unter Labels ausführlicher erläutert.
Überwachte Ressourcentypen
Eine überwachte Ressource ist eine Ressource, von der Messwertdaten erfasst werden. Cloud Monitoring unterstützt etwa 270 Typen von überwachten Ressourcen.
Zu den Typen von überwachten Ressourcen gehören allgemeine Knoten und Aufgaben, Architekturkomponenten in der Google Kubernetes Engine, Tabellen in Bigtable, verschiedene AWS-Ressourcen und vieles mehr.Jeder Typ von überwachten Ressourcen wird formell in einer Datenstruktur beschrieben, die als Deskriptor für überwachte Ressourcen bezeichnet wird. Weitere Informationen finden Sie unter Überwachte Ressourcendeskriptoren.
Jeder unterstützte Typ von überwachten Ressourcen hat einen Eintrag in der Liste der überwachten Ressourcen. Die Einträge in der Liste werden aus den Deskriptoren der überwachten Ressourcen erstellt. In diesem Abschnitt werden die in einem Deskriptor für überwachte Ressourcen erfassten Informationen beschrieben und erläutert, wie diese in der Liste dargestellt werden.
Ein Beispieltyp für überwachte Ressourcen
Die folgende Abbildung zeigt den Eintrag in der Liste für einen Cloud Storage-Bucket:
Alle Einträge in der Liste enthalten die folgenden Informationen:
- Typ: Der Header im Eintrag enthält den Typ der überwachten Ressource,
gcs_bucket
im Beispiel. - Anzeigename: Eine kurze Beschreibung der überwachten Ressource.
- Beschreibung: Eine längere Beschreibung der überwachten Ressource.
- Labels: Eine Reihe von Dimensionen zum Klassifizieren von Daten. Weitere Informationen finden Sie unter Labels.
Messwerttypen
Ein Messwerttyp beschreibt Messungen, die von einer überwachten Ressource erfasst werden können. Ein Messwerttyp enthält eine Beschreibung dessen, was gemessen wird und wie die Messungen interpretiert werden. Cloud Monitoring unterstützt etwa 6.500 Messwerttypen und bietet Ihnen die Möglichkeit, neue Typen zu definieren.Zu den Messwerttypen gehören die Anzahl der API-Aufrufe, Statistiken zur Laufwerksauslastung, der Speicherverbrauch und vieles mehr.
Jeder Messwerttyp wird formell in einer Datenstruktur beschrieben, die als Messwertdeskriptor bezeichnet wird. Weitere Informationen finden Sie unter Messwertdeskriptoren.
Jeder integrierte Messwerttyp hat einen Eintrag auf den Seiten der Messwertliste. Die Einträge in diesen Tabellen werden aus den Messwertdeskriptoren erstellt. In diesem Abschnitt werden die in einem Messwerttyp erfassten Informationen beschrieben und erläutert, wie sie im Referenzmaterial dargestellt werden.
Ein Beispielmesswerttyp
Die folgende Abbildung zeigt einen Eintrag für einen Cloud Storage-Messwerttyp:
Die Messwerttypen werden in einer Tabelle angezeigt und in der Kopfzeile der Tabelle wird das Layout der Informationen erläutert. In diesem Abschnitt wird ein Eintrag als Beispiel verwendet, aber alle Tabellen verwenden dasselbe Format.
Der Beispieleintrag in der Cloud Storage-Tabelle enthält die folgenden Informationen zu einem Messwerttyp:
Messwerttyp: Eine Kennung für den Messwerttyp, im Beispiel
storage.googleapis.com/api/request_count
.Das Präfix
storage.googleapis.com
fungiert als Namespace für Cloud Storage. Alle Messwerttypen, die einem bestimmten Typ von überwachten Ressourcen zugeordnet sind, verwenden denselben Namespace.Namespaces werden in den Tabelleneinträgen weggelassen.
Alle mit Cloud Storage verknüpften Messwerttypen sind in der Tabelle für Cloud Storage-Messwerte aufgeführt.
Startphase: Ein farbiger Block, der die Startphase des Messwerttyps mit einem Wert wie Alpha, Beta und GA angibt.
Anzeigename: Ein kurzer String, der den Messwerttyp beschreibt, im Beispiel "Anzahl der Anfragen".
Art, Type, Unit: Diese Zeile enthält Informationen zur Interpretation der Datenwerte. Im Beispiel wird ein Delta-Messwert als 64-Bit-Ganzzahl ohne Einheit (das ist der Wert
1
) aufgezeichnet.Art:Dieses Beispiel ist ein Delta-Messwert, der eine Änderung über einen bestimmten Zeitraum erfasst. Das heißt, jeder Datenpunkt erfasst die Anzahl der API-Aufrufe seit dem Schreiben des vorherigen Datenpunkts. Weitere Informationen zu Typen finden Sie unter Werttypen und Messwerttypen.
Typ:In diesem Beispiel werden die Werte als 64-Bit-Ganzzahlen aufgezeichnet. Weitere Informationen zu Typen finden Sie unter Werttypen und Messwerttypen.
Einheit: Für diesen Messwert ist keine explizite Einheit erforderlich, da er eine Zahl darstellt. Die Zahl
1
gibt an, dass keine Einheit benötigt wird.
Überwachte Ressourcen: Die überwachten Ressourcen, für die dieser Messwerttyp verfügbar ist. Die Werte hier sind die gleichen wie unter Typen von überwachten Ressourcen beschrieben.
Beschreibung: Ausführlichere Informationen darüber, was wie aufgezeichnet wird Wählen Sie die Option kursiv, um sie von den Labels zu unterscheiden.
Labels: Eine Reihe von Dimensionen zum Klassifizieren von Daten. Weitere Informationen finden Sie unter Labels.
Wenn Sie über die Cloud Monitoring API auf Überwachungsdaten zugreifen, geben Sie im API-Aufruf ein Google Cloud-Projekt an. Sie können nur die Daten abrufen, die für dieses Google Cloud-Projekt sichtbar sind. Wenn Sie beispielsweise die Daten Ihres Projekts für den Messwerttyp storage.googleapis.com/api/request_count
anfordern, werden die API-Zählungen nur für Cloud Storage-Buckets in Ihrem Projekt angezeigt.
Wenn Ihr Projekt keine Cloud Storage-Buckets verwendet, werden keine Messwertdaten zurückgegeben.
Integrierte Messwerttypen
Integrierte Messwerttypen werden von Google Cloud-Diensten definiert, einschließlich Cloud Monitoring. Diese Messwerttypen beschreiben Standardmessungen für eine breite Palette gängiger Infrastruktur und stehen allen Nutzern zur Verfügung.
Die Messwertliste enthält alle integrierten Messwerttypen. Messwerte, die auf der Seite Liste der externen Messwerte aufgeführt sind, sind eine spezifische Teilmenge integrierter Messwerte, die von Cloud Monitoring zusammen mit Open-Source-Projekten oder Drittanbietern definiert werden. Normalerweise haben diese Messwerte das Präfixexternal.googleapis.com
.
Benutzerdefinierte Messwerte
Wenn Sie Ihre Anwendung erstellen, möchten Sie möglicherweise bestimmte Eigenschaften messen, für die es keine integrierten Messwerte in Cloud Monitoring gibt. Mit Cloud Monitoring können Sie eigene Messwerttypen definieren oder Messwerttypen aus externen Quellen importieren. Diese Messwerttypen werden als benutzerdefinierte Messwerte bezeichnet. Wenn ein Messwert das Präfix custom.googleapis.com
oder prometheus.googleapis.com
hat, ist er ein benutzerdefinierter Messwert.
Die letztere Messwerte stammen normalerweise aus Google Cloud Managed Service for Prometheus.
Wenn Sie beispielsweise die Anzahl der von Ihren Geschäften verkauften Widgets erfassen möchten, müssen Sie einen benutzerdefinierten Messwert verwenden. Weitere Informationen finden Sie unter Übersicht über benutzerdefinierte Messwerte.
Labels
Ein Label ist ein Schlüssel/Wert-Paar, mit dem Informationen zu einem Datenwert angegeben werden können.
Messwert- und Labels für überwachte Ressourcen
Die Definitionen der Messwert- und überwachten Ressourcentypen enthalten Labels. Labels sind Klassifikatoren für die erfassten Daten. Sie dienen der Kategorisierung der Daten für eine eingehendere Analyse. Beispiel:
- Der Cloud Storage-Messwerttyp
storage.googleapis.com/api/request_count
hat zwei Labels,response_code
undmethod
. - Der überwachte Cloud Storage-Ressourcentyp
gcs_bucket
hat drei Labels:project_id
,bucket_name
undlocation
. Die Labels identifizieren bestimmte Instanzen des Ressourcentyps.
Daher werden alle Daten, die für API-Anfragen aus einem Cloud Storage-Bucket erfasst werden, nach der aufgerufenen Methode, dem Antwortcode für den Aufruf, dem Namen, dem Standort und dem Projekt des betreffenden Buckets klassifiziert. Der Satz von Labels variiert je nach Messwert oder Typ der überwachten Ressource. Die verfügbaren Labels sind auf den Seiten Messwertliste und Liste der überwachten Ressourcen dokumentiert.
Durch das Erfassen des Antwortcodes, des Methodennamens und des Standorts beim Zählen von API-Aufrufen können Sie dann die Anzahl der Aufrufe einer bestimmten API-Methode oder die Anzahl der fehlgeschlagenen Aufrufe einer Methode oder die Anzahl der fehlgeschlagenen Aufrufe einer bestimmten Methode an einem bestimmten Standort abrufen.
Die Anzahl der Labels und die Anzahl der Werte, die jeweils angenommen werden können, wird als Kardinalität bezeichnet. Die Kardinalität ist die Anzahl möglicher Zeitachsen, die für ein Paar von Messwert- und überwachten Ressourcentypen erfasst werden können: Für jede Kombination von Werten ihrer Labels gibt es eine Zeitachse. Weitere Informationen finden Sie unter Kardinalität: Zeitreihen und Labels.
Ressourcen-Metadatenlabels
Zusätzlich zu den für die Messwert- und überwachten Ressourcentypen definierten Labels erfasst Monitoring intern zusätzliche Informationen zu überwachten Ressourcen und speichert diese Informationen in Systemmetadatenlabels. Diese Systemmetadatenlabels stehen Nutzern als schreibgeschützte Werte zur Verfügung. Bei einigen Ressourcen können Nutzer auch eigene Ressourcenmetadatenlabels erstellen, wenn sie Ressourcen wie VM-Instanzen in der Google Cloud Console konfigurieren.
Die System- und Nutzermetadatenlabels werden zusammen als Ressourcenmetadatenlabels bezeichnet. Sie können diese Labels wie die Labels verwenden, die für die Messwert- und überwachten Ressourcentypen in Zeitachsenfiltern definiert sind. Weitere Informationen zum Filtern finden Sie unter Filter überwachen.
Zeitachse: Daten aus einer überwachten Ressource
In diesem Abschnitt wird erläutert, was Monitoringdaten sind und wie sie in Zeitachsen organisiert sind. Hier werden die Konzeptkomponenten des Messwertmodells zu konkreten Artefakten.
Cloud Monitoring speichert regelmäßig Messwerte für Paare von Messwert- und überwachten Ressourcentypen. Die Messwerte werden in Zeitachsen zusammengefasst und jede Zeitachse enthält die folgenden Elemente:
Der Name des Messwerttyps, zu dem die Zeitachse gehört, und eine Kombination aus Werten für die Messwertlabels.
Eine Reihe von (timestamp, value) Paaren. Der Wert ist die Messung und der Zeitstempel der Zeitpunkt, zu dem die Messung durchgeführt wurde.
Die überwachte Ressource, die die Quelle der Zeitachsendaten ist, und eine Kombination von Werten für die Labels der Ressource.
Für jede Kombination aus Messwert- und Ressourcenlabels, die Daten generiert, wird eine Zeitachse erstellt.
Stilisiertes Beispiel: Der Messwerttyp storage.googleapis.com/api/request_count
könnte viele Zeitreihen für die Cloud Storage-Buckets Ihres Projekts haben. Die folgende Abbildung zeigt einige mögliche Zeitachsen.
In der Abbildung stellt der Wert bucket: xxxx
den Wert des Labels bucket_name
im Typ der überwachten Ressource dar und response_code
und method
sind Label im Messwerttyp. Für jede Wertekombination in den Ressourcen- und Messwertlabels gibt es eine Zeitachse; die Abbildungen zeigen einige davon:
Cloud Monitoring zeichnet keine „leeren“ Zeitachsen auf. Wenn Sie im Cloud Storage-Bucket-Beispiel keinen bestimmten Bucket verwenden oder nie eine bestimmte API-Methode aufrufen, werden keine Daten für dieses Label erfasst und in keiner Zeitachse erwähnt. Dies bedeutet, dass der Messwerttyp nie angezeigt wird, wenn Ihr Projekt keine Daten für einen bestimmten Messwert enthält.
Die Messwerttypen geben nicht an, welche Arten von überwachten Ressourcen sich in der Zeitachse der Messwerte befinden. Für Cloud Storage gibt es nur einen überwachten Ressourcentyp: gcs_bucket
. Einige Messwerttypen sind mit mehr als einer überwachten Ressource verknüpft.
Live-Beispiel: Wenn Sie ein Google Cloud-Projekt haben, können Sie das APIs Explorer-Widget ausprobieren, das sich auf der Referenzseite für die Methode timeSeries.list
in der Monitoring API befindet.
Öffnen Sie die Referenzseite
timeSeries.list
.Geben Sie im Bereich Methode testen Folgendes ein:
- name:
projects/PROJECT_ID
Ersetzen SiePROJECT_ID
durch die ID Ihres Google Cloud-Projekts. - Filter:
metric.type="logging.googleapis.com/log_entry_count" resource.type="gce_instance"
- interval.start_time: Geben Sie die Startzeit ein. Sie muss 20 Minuten vor der Endzeit liegen.
- interval.end_time: Geben Sie die Endzeit ein.
- name:
Wenn die Anfrage erfolgreich ist, werden die Zeitachsendaten zurückgegeben, die der Anfrage entsprechen. Es sieht wie das folgende Snippet aus:
{ "timeSeries": [ { "metric": { "labels": { "severity": "INFO", "log": "compute.googleapis.com/activity_log" }, "type": "logging.googleapis.com/log_entry_count" }, "resource": { "type": "gce_instance", "labels": { "instance_id": "0", "zone": "us-central1", "project_id": "your-project-id" } }, "metricKind": "DELTA", "valueType": "INT64", "points": [ { "interval": { "startTime": "2024-03-29T13:53:00Z", "endTime": "2024-03-29T13:54:00Z" }, "value": { "int64Value": "0" } }, ... ] }, ... ] }
Weitere Informationen zur Verwendung des APIs Explorer-Widgets und zur Fehlerbehebung finden Sie unter APIs Explorer.
Kardinalität: Zeitachsen und Labels
Jede Zeitachse ist einem bestimmten Paar von Messwert- und überwachten Ressourcentypen zugeordnet. Die Messwert- und überwachten Ressourcentypen bieten jeweils eine Reihe von Labels. In Cloud Monitoring ist die Anzahl der eindeutigen Kombinationen von Werten für die Labels die Kardinalität des Messwerttyps oder des Typs der überwachten Ressource. Diese Werte werden als Kardinalität des Messwerts und Ressourcenkardinalität bezeichnet. Sie bestimmen, wie viele mögliche Zeitreihen, die Gesamtkardinalität, generiert werden können.
Kardinalität von Messwert, Ressource und Gesamtzahl
Angenommen, Sie haben einen Messwerttyp mit den Labels color
und zone
. Die Kardinalität des Messwerts hängt von der Anzahl der möglichen Werte dieser Labels ab:
- Wenn es nur drei mögliche Farben gibt: „Rot“, „Grün“ und „Blau“, kann das Label
color
bis zu drei verschiedene Werte haben. - Wenn es nur zwei mögliche Zonen gibt, „Ost“ und „West“, kann das Label
zone
bis zu zwei verschiedene Werte haben.
Die Kardinalität dieses Messwerts ist 6 (3 × 2). Wenn es 1.000 mögliche Werte für das Label color
gibt und jede Farbe in jeder Zone erscheinen kann, beträgt die Kardinalität des Messwerts 2.000 (1.000 × 2). Die gleiche Berechnung gilt, wenn es sich um Label für einen Typ der überwachten Ressource handelt, nicht um einen Messwerttyp.
Dieser Kardinalitätswert ist ein Maximum, das auf der Anzahl der Kombinationen möglicher Labelwerte basiert. Der tatsächliche Wert kann deutlich niedriger sein, wenn nicht alle Kombinationen von Labelwerten tatsächlich auftreten. Wenn beispielsweise jede Farbe nur in einer Zone und nicht in beiden Zonen angezeigt wird, ist die maximale Anzahl der Zeitreihen, die im laufenden System zu sehen sind, 1.000. Die Nützlichkeit der effektiven Kardinalität hängt jedoch davon ab, warum bestimmte Kombinationen nicht angezeigt werden und ob sie in Zukunft angezeigt werden könnten.
Beim Schreiben von Zeitreihendaten werden sie nach Messwert- und überwachten Ressourcentypen klassifiziert. Für jedes Paar aus Messwert- und Ressourcentyp ist die Gesamtkardinalität das Produkt aus der Kardinalität des Messwerts und der Kardinalität der Ressource. Wenn Sie einen Messwert mit einer Kardinalität von 1.000 und eine Ressource mit einer Kardinalität von 100 haben und jeder Labelwert angezeigt wird, haben Sie 100.000 Zeitreihen (1.000 × 100).
Achten Sie beim Erstellen eigener Messwerte darauf, dass die möglichen Werte für jedes Label eingeschränkt sind. Ein kleiner Satz diskreter Werte (z. B. „Rot“, „Grün“ und „Blau“) wird bevorzugt. Wenn Sie beispielsweise 8‑Bit-RGB-Werte für eincolor
-Label verwenden, können Sie über 16 Millionen verschiedene Werte haben. Verwenden Sie nicht hochauflösende Werte wie Zeitstempel, eindeutige Kennzeichnungen, Nutzer-IDs, IP-Adressen, nicht parametrisierte URLs usw. für Messwertlabels.
Abfrageleistung und Kardinalität
Wenn Sie eine Abfrage für Daten stellen, ist das angeforderte Datenvolumen der größte Faktor für die Abfrageleistung: Eine Abfrage für Daten aus einer Stunde ist in der Regel schneller als dieselbe Abfrage für Daten aus sechs Monaten. Die Menge der von einer Anfrage zurückgegebenen Daten hängt aber auch von der Anzahl der Zeitreihen in einer Anfrage ab. Eine Abfrage, bei der Daten für zwei Monate für einen Messwert mit niedriger Kardinalität abgerufen werden, ist aufgrund der abgerufenen Datenmenge wahrscheinlich schneller als eine andere Abfrage, bei der Daten für zwei Monate für einen Messwert mit sehr hoher Kardinalität abgerufen werden.
Die Kardinalität hängt in erster Linie von der Anzahl der Werte ab, die Ihre Labels haben können, nicht von der Anzahl der Labels. Im Allgemeinen haben Sie keine Kontrolle über die Kardinalität von Ressourcen, z. B. wenn sich die Anzahl der Pods oder VMs je nach Geschäftsanforderungen ändert. Wenn Sie jedoch Messwerte in Cloud Monitoring aufnehmen, anstatt Systemmesswerte zu verwenden, haben Sie oft eine gewisse Kontrolle über die Kardinalität des Messwerts. Bei benutzerdefinierten Messwerten legen Sie beispielsweise die Labels und die möglichen Werte dafür fest. Wenn Sie Prometheus-Messwerte aufnehmen, können Sie mithilfe von Relabeling die Labels ändern und Zeitreihen löschen, die nicht aufgenommen werden sollen.
Auf der Seite Messwertverwaltung von Cloud Monitoring können Sie Messwerte mit Kardinalitätsproblemen ermitteln. So rufen Sie die Seite Messwertverwaltung auf:
-
Rufen Sie in der Google Cloud Console die Seite
Messwertverwaltung auf:Wenn Sie diese Seite über die Suchleiste suchen, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift Monitoring ist.
- Wählen Sie in der Symbolleiste das Zeitfenster aus. Standardmäßig werden auf der Seite Messwertverwaltung Informationen zu den Messwerten angezeigt, die am Vortag erfasst wurden.
Weitere Informationen zur Seite Messwertverwaltung finden Sie unter Messwertnutzung ansehen und verwalten.
Technische Informationen dazu, wie Cloud Monitoring Zeitreihendaten speichert und abruft, finden Sie unter Monarch: Die globale In-Memory-Zeitreihendatenbank von Google.
Informationen zu Limits für benutzerdefinierte Messwerte in Cloud Monitoring finden Sie unter Benutzerdefinierte Messwerte.