Logbasierte Messwerte – Übersicht

Diese Seite bietet eine konzeptionelle Übersicht über logbasierte Messwerte. Mithilfe dieser Messwerte können Sie Trends und Muster in einer großen Anzahl von Logeinträgen beobachten.

Logbasierte Messwerte

Logbasierte Messwerte sind Cloud Monitoring-Messwerte, die aus dem Inhalt von Logeinträgen abgeleitet werden. Sie können beispielsweise einen logbasierten Messwert verwenden, um die Anzahl der Logeinträge zu zählen, die eine bestimmte Nachricht enthalten, oder um in Logeinträgen aufgezeichnete Latenzinformationen zu extrahieren. Sie können logbasierte Messwerte in Cloud Monitoring-Diagrammen darstellen und Benachrichtigungsrichtlinien können diese Messwerte überwachen.

Logbasierte Messwerte können auf Projekt- oder Log-Bucket-Ebene angewendet werden. Logbasierte Messwerte auf Bucket-Ebene sind nützlich, wenn Sie aggregierte Senken verwenden, um Logeinträge an einen Log-Bucket weiterzuleiten, und wenn Sie Logeinträge aus einem Projekt an einen Log-Bucket in einem anderen Projekt weiterleiten. Weitere Informationen finden Sie auf dieser Seite im Abschnitt Quellen logbasierter Messwerte.

So werden Zeitreihenwerte für logbasierte Messwerte ermittelt

In diesem Abschnitt wird kurz beschrieben, wie die Werte in einer Zeitreihe für einen logbasierten Messwert vom Typ „Zähler“ bestimmt werden. Außerdem wird beschrieben, warum eine Zeitreihe für einen logbasierten Messwert Lücken aufweisen kann. Der Vorgang ist für logbasierte Messwerte mit Verteilungswerten ähnlich.

Bei logbasierten Messwerten vom Typ „Zähler“ führt Logging die folgenden Schritte aus:

  1. Es werden ein oder mehrere Datenstreams erstellt und für jeden Stream wird eine Reihe von In-Memory-Zählern verwaltet.

    Für jede Kombination aus eindeutigen Werten für die Gruppe von Messwert- und Ressourcenlabels gibt es einen Stream. Jeder In-Memory-Zähler ist für ein anderes Zeitintervall vorgesehen. Jeder Zähler erfasst jedoch die Anzahl der Logeinträge, die dem Filter entsprechen und deren Zeitstempel dem Intervall entspricht.

  2. Das Logging-Backend verwendet jede Minute für jeden Stream die Werte der In-Memory-Zähler, um zu bestimmen, wie eine von Cloud Monitoring verwaltete Zeitachse aktualisiert werden soll.

    Wenn es fünf Streams gibt, werden fünf Zeitreihen von Monitoring verwaltet. Sie können diese Zeitreihen in einem Diagramm darstellen. Sie können auch Benachrichtigungsrichtlinien erstellen, um diese Zeitreihen zu überwachen.

Beispiel: Wie Nullwerte zu Datenlücken führen können

Betrachten Sie die folgende Zeitreihe:

Example time series: (T1, -), (T2, -), (T3, 0), (T4, 1), (T5, 0), (T6, -)

Im vorherigen Ausdruck bedeutet (T1, -), dass für den Zeitpunkt T1 kein Wert geschrieben wurde. Dies entspricht einer Lücke in den Werten der Zeitreihe. Im Gegensatz dazu bedeutet (T3, 0), dass der Wert der Zeitreihe zum Zeitpunkt T3 null ist.

Für jeden Stream verwendet das Back-End-System für logbasierte Messwerte die folgenden Regeln, um zu bestimmen, welcher Wert in die von Monitoring gespeicherte Zeitachse geschrieben werden soll:

  • Wenn die aggregierte Anzahl für ein Intervall ungleich null ist, wird dieser Wert in die Zeitreihe geschrieben.

    In der Beispielzeitreihe hat nur das Intervall T4 einen Wert ungleich null. Der Wert von 1 gibt an, dass ein Logeintrag mit einem Zeitstempel, der dem Intervall T4 entspricht, dem Filter des logbasierten Messwerts entsprochen hat.

  • Wenn die aggregierte Anzahl für ein Intervall null ist, wird ein Wert von null in die Zeitreihe geschrieben, wenn ein benachbartes Intervall einen Wert ungleich null hat.

    In der Beispielzeitreihe ist die aggregierte Anzahl zum Zeitpunkt T3 null. Es wird jedoch ein Wert von null geschrieben, da die aggregierte Anzahl zum Zeitpunkt T4 ungleich null ist. Ebenso ist die aggregierte Anzahl zum Zeitpunkt T5 null. In die Zeitreihe wird der Wert „0“ geschrieben, da der Wert für das vorherige Intervall ungleich null war.

  • Andernfalls wird die Zeitachse nicht aktualisiert und es gibt eine Datenlücke für das Intervall.

    In der Beispielzeitreihe gibt es keinen Wert für die Intervalle T1, T2 und T6. In diesen Intervallen war die aggregierte Anzahl null und die Anzahl für die benachbarten Intervalle war ebenfalls null.

Umgang mit spät ankommenden und zukünftigen Logeinträgen

Wenn Logeinträge mit einem Zeitstempel für ein Intervall eingehen, das bereits verarbeitet wurde, generiert das Logging-Backend Verlaufsdaten. Die Verlaufsdaten werden verwendet, um die zuvor geschriebenen Zählungen zu aktualisieren.

Wenn Logeinträge mit einem Zeitstempel in der Zukunft eintreffen, werden diese Zählungen im Logging-Backend akkumuliert. In der Zeitreihe werden diese Logeinträge gezählt, wenn ihr Zeitstempel dem aktuellen Intervall entspricht.

Quellen logbasierter Messwerte

Sie können die von Cloud Logging definierten Messwerte verwenden, um allgemeine Nutzungsinformationen zu erfassen, und einen eigenen logbasierten Messwert definieren, um Informationen zu erfassen, die für Ihre Anwendung oder Ihr Unternehmen spezifisch sind.

Logbasierte Messwerte können in einem einzelnen Google Cloud Projekt oder in einem Log-Bucket angewendet werden. Sie können keine logbasierten Messwerte für andere Google Cloud Ressourcen wie Cloud-Rechnungskonten oder Organisationen erstellen.

Informationen zu den Unterschieden zwischen projektbasierten und bucketbasierten logbasierten Messwerten finden Sie unter Logbasierte Messwerte mit Bucket-Bereich.

Systemdefinierte Messwerte

Logging bietet eine Reihe von Messwerten für Nutzungswerte wie die Anzahl der Logeinträge, die in Log-Buckets in Ihrem Projekt gespeichert sind, oder die Anzahl der exportierten Byte. Eine vollständige Liste der systemdefinierten Messwerte finden Sie unter Google Cloud -Messwerte: Logging.

Systemdefinierte logbasierte Messwerte gelten auf Projektebene.

Der Log-Router zählt einen Logeintrag, wenn alle folgenden Bedingungen erfüllt sind:

  • Der Logeintrag wird über die Logsinks des Projekts weitergeleitet, in dem der logbasierte Messwert definiert ist.
  • Der Logeintrag wird in einem Log-Bucket gespeichert. Der Log-Bucket kann sich in einem beliebigen Projekt befinden.

    Angenommen, das Projekt A hat eine Logs-Senke, deren Ziel das Projekt