Komponenten des Messwertmodells

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:

Weitere Informationen zu diesen Konzepten und ihrer Zuordnung zur Cloud Monitoring API finden Sie unter Struktur von Zeitachsen, insbesondere wenn Sie die Monitoring API oder benutzerdefinierte Messwerte verwenden möchten.

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:

Liste für den 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:

Ein Auszug aus der Messwertliste für Cloud Storage.

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äfix external.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 und method.
  • Der überwachte Cloud Storage-Ressourcentyp gcs_bucket hat drei Labels: project_id, bucket_name und location. 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:

Bilder, die mehrere Zeitachsen in einem Messwert zeigen

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.

  1. Öffnen Sie die Referenzseite timeSeries.list.

  2. Geben Sie im Bereich Methode testen Folgendes ein:

    • name: projects/PROJECT_ID Ersetzen Sie PROJECT_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.

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.

Die Kardinalität hängt von den Werten ab, die Labels haben können.

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 ein color-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:

  1. Rufen Sie in der Google Cloud Console die Seite  Messwertverwaltung auf:

    Zur Messwertverwaltung

    Wenn Sie diese Seite über die Suchleiste suchen, wählen Sie das Ergebnis aus, dessen Zwischenüberschrift Monitoring ist.

  2. 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.