Messwertquotienten

In diesem Dokument erfahren Sie, wie Sie das beste Diagramm für die Darstellung oder Überwachung eines Messwertverhältnisses auswählen. Außerdem enthält er Links zu Beispielen, gibt an, wann Sie Verhältnisse berechnen können, und beschreibt Anomalien, die beim Erstellen eines Diagramms mit dem Verhältnis von zwei verschiedenen Messwerten auftreten können. Diese Anomalien sind auf Unterschiede bei der Stichprobenrate oder den Ausrichtungsparametern zurückzuführen.

Mithilfe von Verhältniswerten können Sie Ihre Messwertdaten in eine andere und möglicherweise nützlichere Form umwandeln. Angenommen, Sie möchten einen Messwerttyp verwenden, mit dem die Anzahl der HTTP-Antworten nach Antwortcode gezählt wird. Die Messwertdaten enthalten die Anzahl der Fehler, aber nicht den Anteil der fehlgeschlagenen Anfragen. Leistungsanforderungen werden jedoch oft als Prozentsatz angegeben, z. B. „Die Fehlerrate muss unter 0, 1 % liegen“. Um die Fehlerrate anhand der Messdaten zu ermitteln, berechnen Sie das Verhältnis der fehlgeschlagenen Anfragen zur Gesamtzahl der Anfragen.

Best Practices

Wenn Sie ein Verhältnis von Messwertdaten überwachen oder in einem Diagramm darstellen möchten, empfehlen wir die Verwendung von PromQL. Sie können PromQL mit der Cloud Monitoring API und der Google Cloud Console verwenden. Die Google Cloud Console enthält einen Code-Editor, der Vorschläge, Fehlererkennung und andere Unterstützung beim Erstellen gültiger PromQL-Abfragen bietet.

Wenn Sie eine Benachrichtigungsrichtlinie erstellen möchten, die ein Verhältnis von Messwerten überwacht, und mit PromQL nicht vertraut sind, verwenden Sie die Cloud Monitoring API und fügen Sie einen Zeitreihenfilter hinzu. Ein Beispiel finden Sie unter Messwertverhältnis.

Wenn Sie kein PromQL-Experte sind und ein Verhältnis von Messwertdaten in einem Diagramm darstellen möchten, empfehlen wir die Verwendung der Google Cloud Console und einer menübasierten Oberfläche. Eine ausführliche Anleitung finden Sie unter Verhältnis von Messwerten grafisch darstellen und Diagramme und Tabellen zu einem benutzerdefinierten Dashboard hinzufügen.

Einschränkungen mit Verhältnissen

Beim Konfigurieren eines Verhältnisses gelten die folgenden Einschränkungen:

  • Nach der Aggregation müssen die Labels in der Nennerzeitreihe mit den Labels in der Zählerzeitreihe identisch sein oder eine Teilmenge davon sein.

    Wir empfehlen, Aggregationsoptionen so auszuwählen, dass nach der Aggregation die Zeitreihen für Zähler und Nenner dieselben Labels haben.

    Angenommen, die Zeitreihe des Nenners hat die Labels method, quota_metric und project_id. Die Zeitreihe für den Nenner hat die Labels limit_name, quota_metric und project_id. Die gültigen Optionen für die Nennergruppierung hängen von den Auswahlen für den Nenner ab:

    • Zähler nach dem Label method gruppiert: Kombinieren Sie die Nennerzeitreihen zu einer einzelnen Zeitreihe. Bei keiner anderen Gruppierung sind die Labels für die Nennerzeitreihe eine Teilmenge der Labels für die Zählerzeitreihe.
    • Zähler nach dem Label quota_metric gruppiert: Gruppieren Sie den Nenner nach diesem Label oder kombinieren Sie alle Zeitreihen im Nenner zu einer einzelnen Zeitreihe.
    • Zähler nach den Labels quota_metric und project_id gruppiert: Gruppieren Sie den Nenner nach beiden Labels, nach einem Label oder kombinieren Sie die Nennerzeitreihen zu einer einzelnen Zeitreihe.

    Bei den gültigen Aggregationsoptionen für den Nenner wird das Label limit_name immer aus der gruppierten Zeitreihe entfernt, da es nicht in der Zählerzeitreihe vorhanden ist.

  • Wenn Sie ein Diagramm mit der Google Cloud Console konfigurieren, muss der Alignierungszeitraum für den Nenner und den Zähler identisch sein. Bei Verwendung der Cloud Monitoring API können diese Felder jedoch unterschiedlich sein.

    Wir empfehlen, für den Nenner und den Zähler denselben Ausrichtungszeitraum zu verwenden, unabhängig davon, mit welchem Tool Sie das Diagramm erstellen.

  • Zähler und Nenner müssen denselben Werttyp haben. Wenn der Nenner beispielsweise vom Typ DOUBLE ist, muss auch der Nenner vom Typ DOUBLE sein.

    Für Verhältnisse müssen der Zähler- und der Nennermesswert den Werttyp DOUBLE oder INT64 haben.

  • Die Zeitreihen für den Zähler und den Nenner müssen dieselbe Messwertart haben. Wenn die beiden Messwerte unterschiedliche Arten haben, müssen Sie sie mithilfe von Alignern in dieselbe Art umwandeln.

    Angenommen, für den Nenner ist ein DELTA-Messwert und für den Zähler ein GAUGE-Messwert ausgewählt. Verwenden Sie in diesem Fall den Raten-Ausrichter ALIGN_RATE, um den Messwert vom Typ DELTA in einen Messwert vom Typ GAUGE umzuwandeln. Ein Beispiel finden Sie unter Verhältnisbenachrichtigungsrichtlinien zur Nutzung des Ratenkontingents für ein Limit.

  • Bei Verhältnissen, die nicht mit PromQL definiert sind, muss der Typ der überwachten Ressource für den Zähler und den Nenner identisch sein.

    Wenn die Ressource für den Nennermesswert beispielsweise Compute Engine-Instanzen ist, muss die Ressource für den Nennermesswert ebenfalls Compute Engine-Instanzen sein.

Anomalien aufgrund von Abweichungen bei Stichprobenerhebung und Ausrichtung

Im Allgemeinen ist es am besten, Verhältnisse basierend auf Zeitachsen zu berechnen, die unter Einsatz von Labelwerten für einen einzelnen Messwerttyp erfasst wurden. Ein Verhältnis, das über zwei verschiedene Messwerttypen berechnet wird, unterliegt aufgrund unterschiedlicher Stichprobenzeiträume und ‑fenstern Anomalien.

Angenommen, Sie haben zwei verschiedene Messwerttypen, eine RPCs-Gesamtzahl und eine RPC-Fehlerzahl, und Sie möchten das Verhältnis von Fehler- zu Gesamtzahl berechnen. Die fehlgeschlagenen RPCs werden in der Zeitachse beider Messwerttypen gezählt. Daher ist es möglich, dass beim Ausrichten der Zeitachse ein nicht erfolgreicher RPC nicht im selben Ausrichtungsintervall für beide Zeitachsen angezeigt wird. Dies kann folgende Gründe haben:

  • Da zwei verschiedene Zeitachsen dasselbe Ereignis aufzeichnen, gibt es zwei unterliegende Zählerwerte, die die Sammlung implementieren. Diese werden nicht atomar aktualisiert.
  • Die Abtastraten können abweichen. Wenn die Zeitachsen auf einen gemeinsamen Zeitraum ausgerichtet sind, kann die Anzahl für ein einzelnes Ereignis in angrenzenden Ausrichtungsintervallen für die verschiedenen Messwerte angezeigt werden.

Die unterschiedliche Anzahl der Werte in den entsprechenden Ausrichtungsintervallen kann zu einem unsinnigen error/total-Verhältniswert führen, z. B. 1/0 oder 2/1.

Bei Verhältnissen mit größeren Zahlen ist die Wahrscheinlichkeit geringer, dass unsinnige Werte entstehen. Sie können größere Zahlen durch Aggregation erreichen, indem Sie entweder ein Ausrichtungsfenster verwenden, das länger als der Sampling-Zeitraum ist, oder durch das Gruppieren von Daten für bestimmte Labels. Diese Techniken minimieren den Effekt kleiner Unterschiede in der Anzahl der Punkte in einem gegebenen Intervall. Das heißt, ein Zwei-Punkte-Unterschied ist bei einer erwarteten Anzahl von 3 Punkten in einem Intervall signifikanter als bei einer erwarteten Anzahl von 300.

Wenn Sie integrierte Messwerttypen verwenden, haben Sie möglicherweise keine andere Wahl, als die Verhältnisse zwischen den Messwerttypen zu berechnen, um den von Ihnen benötigten Wert zu erhalten.

Wenn Sie benutzerdefinierte Messwerte entwerfen, die die gleiche Sache – wie RPCs, die den Fehlerstatus zurückgeben – in zwei verschiedenen Messwerten zählen könnten, sollten Sie stattdessen einen einzigen Messwert in Betracht ziehen, der jede Zählung nur einmal enthält. Angenommen, Sie zählen RPCs und möchten das Verhältnis von nicht erfolgreichen RPCs zu allen RPCs verfolgen. Zur Behebung dieses Problems erstellen Sie einen einzelnen Messwerttyp, um RPCs zu zählen, und verwenden ein Label, um den Status des Aufrufs einschließlich des Status „OK“ aufzuzeichnen. Dann wird jeder Statuswert bzw. jeder Fehler oder jedes „OK“ aufgezeichnet, indem für diesen Fall ein einzelner Zähler aktualisiert wird.

Nächste Schritte