Cloud Monitoring

Dieses Dokument bietet einen Überblick über die Dienste, . Diese Dienste können dir helfen, Verhalten, Gesundheit und Leistung Ihrer Anwendungen und anderer Google Cloud-Dienste. Cloud Monitoring erfasst und speichert automatisch Leistungsinformationen für die meisten Google Cloud-Dienste. Ich kann Prometheus erfassen mit Google Cloud Managed Service for Prometheus. Wenn Sie den Ops-Agent auf Ihren Compute Engine-VMs installieren, können Sie Messwerte und Protokolle aus Ihren Anwendungen und von Drittanbieteranwendungen erfassen.

Die Benachrichtigungs-, Test- und Visualisierungsdienste der Mit 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. der Seite alertPolicies.list, lassen sich API-Aufrufe direkt auf der Referenzseite testen.

Cloud Monitoring-Dienste

Cloud Monitoring bietet verschiedene Dienste, die Sie um den Zustand und die Leistung Ihrer Anwendungen und die andere von Ihnen verwendete Google Cloud-Dienste.

Warnungen und Benachrichtigungen

Lassen Sie sich benachrichtigen, wenn der Wert eines Leistungsmesswerts die von Ihnen eine Benachrichtigungsrichtlinie erstellen. Benachrichtigungsrichtlinie enthält die Liste der Personen oder Gruppen, die Benachrichtigungen erhalten sollen. Monitoring unterstützt Gängige Benachrichtigungskanäle einschließlich E-Mail, Cloud Mobile App und Diensten wie PagerDuty oder Slack. Sie können beispielsweise eine Benachrichtigungsrichtlinie erstellen, damit Sie wenn die CPU-Auslastung einer VM 80 % überschreitet.

Jede Benachrichtigung enthält relevante Informationen zu einem Fehler und einen Link zu einem Vorfall. Ein Vorfall ist ein dauerhafter Datensatz, in dem Informationen, mit denen Sie den Fehler beheben können. In der Regel wird ein Datensatz Listet den Status des Vorfalls, Links zu Logs und ein Diagramm der aufgezeichneten Messwerte auf. Daten, Labels und Dauer.

Der Benachrichtigungsdienst ist in viele Google Cloud-Dienste eingebunden. Wenn diese Verknüpfungen vorhanden sind, sehen Sie möglicherweise einen Bereich mit empfohlenen Benachrichtigungen sehen Sie in einem Diagramm möglicherweise eine Schaltfläche, mit der Sie eine Benachrichtigungsrichtlinie erstellen können. In beiden Fällen sind die Benachrichtigungsrichtlinien vorkonfiguriert. Sie müssen nur die Liste der Personen oder Gruppen angeben, 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

Um die Verfügbarkeit, Konsistenz und Leistung Ihrer Dienste zu testen, Anwendungen, Webseiten und APIs erstellen, synthetische Monitore. Beispiel: können Sie die Reaktionsfähigkeit von HTTP-, HTTPS- und TCP-Endpunkten mit Verfügbarkeitsdiagnosen eingerichtet haben. Sie werden dann benachrichtigt, der Endpunkt nicht reagiert. Sie können auch einen Link-Checker erstellen, um eine Webseite zu crawlen und Sie dann zu benachrichtigen, wenn fehlerhafte Links erkannt werden.

Sie können synthetisches Monitoring in der Google Cloud Console erstellen und verwalten, der Cloud Monitoring API, der Google Cloud CLI oder Terraform.

Datenvisualisierung

Um Ihre Daten zu visualisieren, um Trends zu erkennen, Ausreißer zu identifizieren und andere Details zu Ihren Daten enthält, können Sie die Dashboard- und Diagrammdienste:

Datenerhebung und -speicherung

Cloud Monitoring erfasst und speichert die folgenden Arten von Messwertdaten:

  • 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 konfigurieren um Messwerte aus Drittanbieter-Plug-ins wie z. B. Apache- oder Nginx-Webserver oder MongoDB- oder PostgreSQL-Datenbanken.
  • Logbasierte Messwerte, die numerische Informationen über die in Cloud Logging geschriebenen Logs Zu den von Google definierten logbasierten Messwerten gehören Anzahl der vom Dienst erkannten Fehler und der Gesamtzahl Anzahl 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 Geben Sie eine Abfrage an, mit der die Daten beschrieben werden, die Sie überwachen oder grafisch darstellen möchten:

  • Google Cloud Console: Erstellen Sie eine Abfrage, indem Sie eine Auswahl in Menüs treffen. oder eine Abfrage schreiben. Abfrageeditoren sind für die Prometheus Query Language (PromQL) und Monitoring Query Language (MQL) Die Abfrageeditoren Syntaxprüfungen und Vorschläge. Sie können auch Schreiben Sie einen Monitoring-Filterausdruck.

  • 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 und wie Sie Metriken überwachen können, die in mehrere Google Cloud-Projekte erstellen.

Ressourcen als Sammlung verwalten

Ressourcen als Sammlung verwalten statt einzeln, erstellen Sie eine Ressourcengruppe. Eine Ressourcengruppe ist eine dynamische Sammlung von Ressourcen. die bestimmte Kriterien erfüllen, die Sie angeben. Wenn Sie Ressourcen hinzufügen und entfernen, indem Sie z. B. Compute Engine-VM-Instanzen Google Cloud-Projekt ändern, ä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 so überwachen, als wäre es eine einzelne Ressource. Zum Beispiel haben Sie können Sie 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 Zeitreihendaten für mehrere Google Cloud-Projekte und AWS-Konten über eine einzige Benutzeroberfläche aufrufen und überwachen möchten, konfigurieren Sie einen Messwertbereich mit mehreren Projekten.

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 Die ist das Projekt, das Sie mit der Projektauswahl in der Google Cloud Console. Das den Umfang festlegende Projekt die Benachrichtigungen, synthetische Monitore, Dashboards und Gruppen überwachen die Sie konfigurieren.

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. Sie können den Messwertbereich konfigurieren um Zeitreihendaten aus anderen Google Cloud-Projekten AWS-Konten 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, gemessen. Beispiele für Messwerttypen sind die CPU-Auslastung einer VM und der Prozentsatz eines Speichers, der verwendet wird.

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

    Im folgenden Beispiel wird ein points-Array mit zwei Werten verwendet:

      "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 beziehen die in der Zeitreihe enthalten sind, und zu den Definitionen dieser Daten.

  • Das Feld resource beschreibt die Hardware- oder Softwarekomponente. das überwacht wird. In Cloud Monitoring kann die Hardware oder Software Komponente wird als überwachte Ressource bezeichnet. Beispiele für überwachte Ressourcen sind Compute Engine und App Engine-Anwendungen. Eine Liste mit überwachten Ressourcen finden Sie in der Liste überwachter 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 als gce_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. Für den Typ gce_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"
      },
    
    • Bei Google Cloud-Diensten gibt das Feld type den Dienst und das zu überwachende Element an. In diesem Beispiel misst der Compute Engine-Dienst die CPU-Auslastung. Wenn das Feld type mit custom oder external beginnt, ist der Messwert benutzerdefinierten oder von einem Drittanbieter definierten Messwert.
    • Das Feld labels enthält Schlüssel/Wert-Paare mit zusätzlichen Informationen zur Messung. Diese Beschriftungen sind als Teil der die MetricDescriptor, eine Datenstruktur, die definiert die Attribute der gemessenen Daten. Die MetricDescriptor für den Messwert compute.googleapis.com/instance/cpu/utilization enthält das Label instance_name.
  • Das Feld metricKind beschreibt die Beziehung zwischen aufeinanderfolgenden Messungen innerhalb einer Zeitachse:

    • 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 oder DISTRIBUTION.

Cloud Monitoring schreibt eine Zeitachse für jede Kombination von Ressourcen- und Messwertlabelwerte. Sie können diese Labels verwenden, um zum Filtern von Zeitreihen. Wenn ein Google Cloud-Projekt beispielsweise mehrere Compute Engine-VM-Instanzen enthält, ist die CPU-Auslastung für jede VM-Instanz eine eindeutige Zeitreihe. Hier sind einige Möglichkeiten, wie Sie diese Daten:

  • Sie können die CPU-Auslastung pro VM-Instanz anzeigen.
  • Sie können die CPU-Auslastung für eine bestimmte VM-Instanz anzeigen lassen, Filtern der Zeitreihe nach einem einzelnen Wert des Labels instance_id.
  • Sie können die VM-Instanzen nach dem machine_type-Label gruppieren und dann die durchschnittliche CPU-Auslastung anzeigen. Folgender Screenshot zeigt ein Diagramm mit dieser Konfiguration:

    Durchschnittliche CPU-Auslastung, gruppiert nach Maschinentyp.

Preise

Im Allgemeinen sind Cloud Monitoring-Systemmesswerte kostenlos. von externen Systemen, Agents oder Anwendungen jedoch nicht. Abrechenbare Messwerte werden entweder nach der Anzahl der aufgenommenen Byte oder der Anzahl der aufgenommenen Stichproben abgerechnet.

Weitere Informationen zu den Cloud Monitoring-Preisen finden Sie in den folgenden Dokumenten:

Nächste Schritte

  • Informationen zur Konfiguration unseres Google Cloud-Projekts für die Anzeige von Messwerten für mehrere Google Cloud-Projekte und AWS-Konten finden Sie unter Messwertbereiche – Übersicht.