Zählermesswerte konfigurieren

In diesem Dokument wird beschrieben, wie Sie mit der Google Cloud Console, der Logging API und der Google Cloud CLI einen logbasierten Zählermesswert erstellen.

Mit Zählermesswerten wird die Anzahl der Logeinträge gezählt, die mit einem bestimmten Filter übereinstimmen. Sie können beispielsweise einen logbasierten Messwert erstellen, mit dem die Anzahl der Logeinträge gezählt wird, die eine bestimmte Fehlermeldung enthalten. Logbasierte Messwerte können innerhalb eines einzelnen Google Cloud-Projekts oder innerhalb eines Log-Buckets angewendet werden.

Eine Übersicht über logbasierte Messwerte finden Sie unter Übersicht über logbasierte Messwerte.

Hinweise

  1. Wenn Sie logbasierte Messwerte verwenden möchten, benötigen Sie ein Google Cloud-Projekt mit aktivierter Abrechnungsfunktion:

    1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
    2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

      Go to project selector

    3. Make sure that billing is enabled for your Google Cloud project.

    4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

      Go to project selector

    5. Make sure that billing is enabled for your Google Cloud project.

  2. Ihre Identity and Access Management-Rolle muss die Berechtigungen zum Erstellen und Aufrufen logbasierter Messwerte sowie zum Erstellen von Benachrichtigungsrichtlinien enthalten. Weitere Informationen finden Sie unter Berechtigungen für logbasierte Messwerte.

Logbasierten Messwert vom Typ „Zähler“ erstellen

Der Messwert zählt die Logeinträge, die mit einem von Ihnen angegebenen Filter übereinstimmen. Sie können reguläre Ausdrücke in Ihrem Filter verwenden. Wir empfehlen, einen Ressourcentyp anzugeben. Ein Filter darf nicht länger als 20.000 Zeichen sein.

Geben Sie keine vertraulichen Informationen in den Filter ein. Filter werden als Dienstdaten behandelt.

Console

So erstellen Sie einen Zählermesswert in der Google Cloud Console in Ihrem Google Cloud-Projekt:

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

    Zu Logbasierte Messwerte

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

  2. Klicken Sie auf Messwert erstellen. Der Bereich Logmesswert erstellen wird angezeigt.

  3. Legen Sie den Messwerttyp fest: Wählen Sie Zähler aus.

  4. Legen Sie im Abschnitt Details die folgenden Felder fest:

    • Name des Logmesswerts: Wählen Sie einen Namen aus, der unter den logbasierten Messwerten Ihres Google Cloud-Projekts einmalig ist. Für die Benennung gelten einige Einschränkungen. Weitere Informationen dazu finden Sie unter Fehlerbehebung.
    • Beschreibung: Geben Sie eine Beschreibung für den Messwert ein.
    • Einheiten: Lassen Sie dieses Feld leer oder geben Sie die Zahl 1 ein.
  5. Definieren Sie den Messwertfilter im Abschnitt Filterauswahl.

    1. Wählen Sie im Menü Projekt oder Log-Bucket auswählen aus, ob der Messwert die Logeinträge in Ihrem Google Cloud-Projekt oder nur die Logeinträge in einem bestimmten Log-Bucket zählt.

    2. Erstellen Sie einen Filter, der nur die Logeinträge erfasst, die Sie in Ihrem Messwert mit der Logging-Abfragesprache zählen möchten. Sie können auch reguläre Ausdrücke verwenden, um Filter des Messwerts zu erstellen.

    3. Klicken Sie auf Logvorschau ansehen, um zu sehen, welche Logeinträge Ihrem Filter entsprechen.

  6. (Optional) Fügen Sie im Abschnitt Labels ein Label hinzu. Eine Anleitung zum Erstellen von Labels finden Sie unter Label erstellen.

  7. Klicken Sie auf Messwert erstellen, um den Messwert zu erstellen.

gcloud

Mit dem folgenden Befehl können Sie einen logbasierten Messwert ohne benutzerdefinierte Labels erstellen:

gcloud logging metrics create METRIC_NAME \
  --description="METRIC_DESCRIPTION" \
  --log-filter="FILTER" \
  [--bucket-name="BUCKET_NAME"]

Mit dem folgenden Befehl wird beispielsweise ein logbasierter Messwert auf Projektebene namens error_count erstellt.

gcloud logging metrics create error_count \
     --description "Errors in syslog." \
     --log-filter "resource.type=gce_instance AND log_id(\"syslog\") AND severity>=ERROR"

Wenn Sie stattdessen einen logbasierten Messwert auf Bucketebene erstellen möchten, geben Sie das Flag --bucket_name an:

gcloud logging metrics create error_count \
    --description "Errors in syslog." \
    --log-filter "resource.type=gce_instance AND log_id(\"syslog\") AND severity>=ERROR" \
    --bucket-name projects/my-project/locations/global/buckets/my-test-bucket

Eine Anleitung zum Erstellen von Labels finden Sie unter Labels für logbasierte Messwerte konfigurieren.

API

Verwenden Sie zum Erstellen eines Zählermesswerts die Methode projects.metrics.create der Logging API. Wenn Sie den Bereich „APIs Explorer“ auf der Referenzseite verwenden, bereiten Sie die Argumente so vor:

  1. Geben Sie für das Feld parent das Projekt oder den Bucket an, in dem der Messwert erstellt werden soll:

    • Geben Sie für einen logbasierten Messwert auf Projektebene das Projekt an:
    projects/PROJECT_ID
    
    • Geben Sie für einen logbasierten Messwert auf Bucketebene den Bucket an:
    projects/PROJECT_ID/locations/LOCATION/bucket/BUCKET_ID
    
  2. Legen Sie für den Anfragetext ein LogMetric-Objekt fest. Im folgenden Beispiel wird ein Beispielobjekt für einen Zählermesswert festgelegt:

    {
      name:        "my-metric"
      description: "This is my metric."
      filter:      "resource.type=gce_instance AND log_id(\"syslog\")",
      metricDescriptor: {
          labels: [
            {
              key: "my-label",
              valueType: STRING,
              description: "This is my label.",
            }
          ]
      },
      labelExtractors: {
        "my-label":
          "REGEXP_EXTRACT(jsonPayload.someField, \"before ([0-9]+) after\")",
        ...
      },
    }
    

Hinweise:

  • Wählen Sie einen Messwertnamen aus, der unter den logbasierten Messwerten in Ihrem Projekt einmalig ist. Für die Benennung gelten einige Einschränkungen. Weitere Informationen dazu finden Sie unter Fehlerbehebung.

  • Bei Zählermesswerten sind die LogMetric-Felder valueExtractor und bucketOptions nicht relevant und werden ausgelassen.

  • Wenn Ihr Messwert keine Labels enthält, können Sie die Felder metricDescriptor und labelExtractors auslassen. Wenn Ihr Messwert über Labels verfügt, finden Sie unter Labels von logbasierten Messwerten eine Einführung zu Labels sowie Einzelheiten zu ihrer Erstellung in der API.

Weitere Informationen finden Sie unter LogMetric.

Latenz neuer Messwerte

Ihr neuer Messwert erscheint unmittelbar in der Messwertliste des Log-Explorers und in den relevanten Menüs von Monitoring. Die Daten sind in der Regel in weniger als einer Minute verfügbar.

Logbasierte Messwerte prüfen

So listen Sie die benutzerdefinierten logbasierten Messwerte in Ihrem Google Cloud-Projekt auf oder prüfen einen bestimmten Messwert in Ihrem Google Cloud-Projekt:

Console

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

    Zu Logbasierte Messwerte

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

  2. Im Bereich Benutzerdefinierte Messwerte werden die benutzerdefinierten logbasierten Messwerte im aktuellen Google Cloud-Projekt angezeigt:

  3. Klicken Sie in der Zeile des Messwerts auf das Dreipunkt-Menü und wählen Sie In Metrics Explorer ansehen aus, um die Daten eines logbasierten Messwerts anzuzeigen.

gcloud

Verwenden Sie den folgenden Befehl, um die benutzerdefinierten logbasierten Messwerte in Ihrem Google Cloud-Projekt aufzulisten:

gcloud logging metrics list

Verwenden Sie den folgenden Befehl, um einen benutzerdefinierten logbasierten Messwert aus Ihrem Google Cloud-Projekt anzuzeigen:

gcloud logging metrics describe METRIC_NAME

Rufen Sie mit dem folgenden Befehl die Hilfe auf:

gcloud logging metrics --help

Sie können die Zeitachsendaten eines Messwerts nicht über die Google Cloud CLI auslesen.

API

Messwerte auflisten

Verwenden Sie zum Auflisten der benutzerdefinierten logbasierten Messwerte in einem Google Cloud-Projekt die API-Methode projects.metrics.list. Geben Sie die Parameter der Methode so an:

  • parent: Ressourcenname des Google Cloud-Projekts: projects/PROJECT_ID.
  • pageSize: Die maximale Anzahl der Ergebnisse.
  • pageToken: Ruft die nächste Seite mit Ergebnissen auf. Informationen zur Verwendung von Seitentokens finden Sie unter projects.metrics.list.

Messwertdefinitionen abrufen

Verwenden Sie zum Abrufen eines einzelnen benutzerdefinierten logbasierten Messwerts die API-Methode projects.metrics.get. Geben Sie die Parameter der Methode so an:

  • metricName: Der Ressourcenname des Messwerts:

    projects/PROJECT_ID/metrics/METRIC_ID
    

Messwertdaten lesen

Verwenden Sie zum Lesen der Zeitachsendaten in einem logbasierten Messwert die Methode projects.timeseries.list in der Cloud Monitoring API. Weitere Informationen zu Zeitachsendaten finden Sie unter Zeitachsen lesen.

Wenn Sie einen einzelnen benutzerdefinierten logbasierten Messwert lesen möchten, geben Sie in die Parameter der Methode diesen Messwerttyp und diese Kennung ein:

logging.googleapis.com/user/METRIC_ID

Logbasierte Messwerte aktualisieren

Sie können einen benutzerdefinierten logbasierten Messwert bearbeiten, um dessen Beschreibung, Filter und die Namen der im Messwert angegebenen Felder zu ändern. Sie können dem Messwert neue Labels hinzufügen und die regulären Ausdrücke ändern, mit denen Werte für den Messwert und dessen Labels extrahiert werden. Wenn Sie einen Messwert auf Bucket-Ebene verwenden, können Sie auch den Bucket des Messwerts aktualisieren.

Sie können die Namen oder Typen von benutzerdefinierten logbasierten Messwerten oder deren Labels nicht ändern und vorhandene Labels in einem logbasierten Messwert nicht löschen.

So bearbeiten Sie einen logbasierten Messwert:

Console

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

    Zu Logbasierte Messwerte

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

  2. Klicken Sie im Menü für den logbasierten Messwert, den Sie ändern möchten, auf Messwert bearbeiten.

  3. Ändern Sie nur die zulässigen Elemente des Messwerts.

  4. Klicken Sie auf Messwert aktualisieren.

gcloud

Verwenden Sie die Google Cloud CLI, um die Beschreibung, die Filterabfrage und den Bucket eines Zählermesswerts zu ändern. Sie können alle oder einzelne Felder auf einmal aktualisieren.

gcloud logging update METRIC_NAME \
  --description="METRIC_DESCRIPTION" \
  --log-filter="FILTER" \
  --bucket-name=BUCKET_NAME

Wenn Sie den Bucket ändern, der mit einem Messwert auf Bucket-Ebene verknüpft ist, spiegeln die vor der Änderung erhobenen Messwertdaten nicht mehr die aktuelle Konfiguration wider. Die für den vorherigen Bucket erfassten Messdaten werden nicht entfernt.

Wenn Sie Verteilungsmesswerte oder andere Zählermesswerte (mit Ausnahme von METRIC_NAME) aktualisieren möchten, erstellen Sie eine Datei mit der überarbeiteten Spezifikation Ihrer LogMetric im JSON- oder YAML-Format. Aktualisieren Sie dann den Messwert, indem Sie den Befehl update mit dem Feld „–config-from-file“ aufrufen und FILENAME durch den Namen Ihrer JSON- oder YAML-Datei ersetzen:

gcloud logging update METRIC_NAME --config-from-file FILENAME

Rufen Sie mit folgendem Befehl weitere Details ab:

gcloud logging metrics update --help

API

Verwenden Sie zum Bearbeiten eines logbasierten Messwerts in der API die Methode projects.metrics.update. Legen Sie die Werte für die folgenden Felder fest:

  • metricName: Der vollständige Ressourcenname des Messwerts:

    projects/PROJECT_ID/metrics/METRIC_ID
    

    Beispiel:

    projects/my-gcp-project/metrics/my-error-metric
    
  • Der Anfragetext muss ein LogMetric-Objekt enthalten, das abgesehen von den gewünschten Änderungen und Ergänzungen genau dem vorhandenen Messwert entspricht.

Logbasierte Messwerte löschen

So löschen Sie einen benutzerdefinierten logbasierten Messwert:

Console

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

    Zu Logbasierte Messwerte

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

  2. Wählen Sie den zu löschenden Messwert aus und klicken Sie auf Löschen.

    Alternativ können Sie im Menü des logbasierten Messwerts, den Sie löschen möchten, auf Messwert löschen klicken.

gcloud

Verwenden Sie den folgenden Befehl, um einen benutzerdefinierten logbasierten Messwert im aktuellen Google Cloud-Projekt zu löschen:

gcloud logging metrics delete METRIC_NAME

Rufen Sie mit folgendem Befehl weitere Details ab:

gcloud logging metrics delete --help

API

Verwenden Sie in der API die Methode projects.metrics.delete, um einen benutzerdefinierten logbasierten Messwert zu löschen.

In der Google Cloud Console finden Sie außerdem auf der Seite Logbasierte Messwerte im Bereich Benutzerdefinierte Messwerte weitere Features, mit denen Sie die benutzerdefinierten Messwerte in Ihrem Google Cloud-Projekt verwalten können. Weitere Informationen finden Sie unter Benutzerdefinierte Messwerte.