Messwerte aufrufen

In diesem Thema wird erklärt, wie Sie Apigee-Hybridmesswerte in einem Cloud Operations-Dashboard aufrufen können.

Informationen zu Cloud Operations

Weitere Informationen zu Messwerten, Dashboards und Cloud Operations finden Sie unter:

Hybridmesswerte aktivieren

Bevor Sie Hybridmesswerte an Cloud Operations senden können, müssen Sie zuerst die Messwerterfassung aktivieren. Weitere Informationen zu diesem Verfahren finden Sie unter Messwerterfassung konfigurieren.

Namen und Labels von Hybridmesswerten

Wenn diese Option aktiviert ist, werden Messwerte von Cloud Operations automatisch durch Hybrid eingefügt. Das Domainnamenpräfix der von Hybrid erstellten Messwerte lautet:

apigee.googleapis.com/

Der Messwert /proxy/request_count enthält beispielsweise die Gesamtzahl der Anfragen, die von einem API-Proxy empfangen werden. Der Messwertname in Cloud Operations lautet daher:

apigee.googleapis.com/proxy/request_count

Mit Cloud Operations können Sie Messwertdaten nach Labels filtern und gruppieren. Einige Labels sind vordefiniert und andere werden explizit durch Hybrid hinzugefügt. Im Abschnitt Verfügbare Messwerte weiter unten werden alle verfügbaren Hybridmesswerte und alle Labels aufgeführt, die speziell für einen Messwert hinzugefügt wurden, den Sie zum Filtern und Gruppieren verwenden können.

Messwerte ansehen

Das folgende Beispiel zeigt, wie Messwerte in Cloud Operations aufgerufen werden:
  1. Öffnen Sie den Monitoring Metrics Explorer in einem Browser. Wenn Sie sich stattdessen bereits in der Cloud Operations-Konsole befinden, wählen Sie Metrics Explorer aus.
  2. Suchen Sie unter Ressourcentyp und Messwert finden den Messwert, den Sie untersuchen möchten. Wählen Sie einen bestimmten Messwert aus, der unter Verfügbare Messwerte aufgeführt ist, oder suchen Sie nach einem Messwert.

  3. Wählen Sie den gewünschten Messwert aus.
  4. Wenden Sie Filter an. Die Filteroptionen für jeden Messwert sind unter Verfügbare Messwerte aufgeführt.
  5. Cloud Operations zeigt das Diagramm für den ausgewählten Messwert an.
  6. Klicken Sie auf Speichern.

Dashboard erstellen

Dashboards sind eine der Möglichkeiten, mit denen Sie Messwertdaten ansehen und analysieren können, die relevant für Sie sind. Cloud Operations bietet vordefinierte Dashboards für die von Ihnen verwendeten Ressourcen und Dienste. Sie können auch benutzerdefinierte Dashboards erstellen.

Sie verwenden ein Diagramm, um einen Apigee-Messwert in Ihrem benutzerdefinierten Dashboard aufzurufen. Mit benutzerdefinierten Dashboards haben Sie die volle Kontrolle über die angezeigten Diagramme und deren Konfiguration. Weitere Informationen zum Erstellen von Diagrammen finden Sie unter Diagramme erstellen.

Das folgende Beispiel zeigt, wie Sie ein Dashboard in Cloud Operations erstellen und dann Diagramme hinzufügen, um Messwertdaten aufzurufen:

  1. Öffnen Sie den Monitoring Metrics Explorer in einem Browser und wählen Sie Dashboards aus.
  2. Wählen Sie + Dashboard erstellen aus.
  3. Geben Sie einen Namen für das Dashboard ein. Beispiel: Anfragetraffic des Hybridproxys
  4. Klicken Sie auf Bestätigen.
  5. Führen Sie für jedes Diagramm, das Sie dem Dashboard hinzufügen möchten, die folgenden Schritte aus:

    1. Wählen Sie im Dashboard Diagramm hinzufügen aus.
    2. Wählen Sie den gewünschten Messwert aus, wie oben unter Messwerte ansehen beschrieben.
    3. Füllen Sie das Dialogfeld aus, um das Diagramm zu definieren.
    4. Klicken Sie auf Speichern. Cloud Operations zeigt Daten für den ausgewählten Messwert an.

Verfügbare Messwerte

In den folgenden Tabellen werden Messwerte zur Analyse von Proxy-Traffic aufgeführt. Weitere Informationen zu den einzelnen Apigee-Messwerten finden Sie unter Google Cloud-Messwerte.

Proxy-, Ziel- und Server-Traffic-Messwerte

Open Telemetry erfasst und verarbeitet Messwerte (wie unter Messwerterfassung beschrieben) für Proxy-, Ziel- und Server-Traffic.

In der folgenden Tabelle werden die vom Open Telemetry-Collector verwendeten Messwerte beschrieben.

Messwertname Verwenden
/proxy/request_count Anzahl der Anfragen an den Apigee-Proxy, seitdem die letzte Stichprobe aufgezeichnet wurde.
/proxy/response_count Anzahl der vom Apigee API-Proxy gesendeten Antworten.
/proxy/latencies Verteilung der Latenzen, die vom Zeitpunkt des Empfangs der Anfrage durch den Apigee-Proxy bis zum Zeitpunkt des Sendens der Antwort vom Apigee-Proxy an den Client berechnet werden.
/proxyv2/request_count Die Gesamtzahl der erhaltenen API-Proxy-Anfragen.
/proxyv2/response_count Die Gesamtzahl der empfangenen API-Proxy-Antworten.
/proxyv2/latencies_percentile Perzentil aller API-Richtlinienantworten auf eine Anfrage.
/target/request_count Anzahl der Anfragen, die seit der letzten aufgezeichneten Stichprobe an das Apigee-Ziel gesendet wurden.
/target/response_count Anzahl der Antworten, die seit der letzten aufgezeichneten Stichprobe vom Apigee-Ziel empfangen wurden.
/target/latencies Verteilung der Latenzen, die ab dem Zeitpunkt berechnet werden, an dem die Anfrage an das Apigee-Ziel gesendet wurde, bis zu dem Zeitpunkt, an dem die Antwort vom Apigee-Proxy empfangen wurde. Die Zeit umfasst nicht den Apigee-API-Proxy-Overhead.
/targetv2/request_count Die Gesamtzahl der Anfragen, die an das Ziel des Proxys gesendet wurden.
/targetv2/response_count Die Gesamtzahl der Antworten, die vom Ziel des Proxys empfangen wurden.
/server/fault_count

Die Gesamtzahl der Fehler für die Serveranwendung.

Die Anwendung kann beispielsweise apigee-runtime, apigee-synchronizer oder apigee-udca sein. Verwenden Sie das Label pod_name, um Ergebnisse nach Anwendung zu filtern.

/server/nio Dies ist ein Messwert vom Typ „gauge“, der nach dem Label state gefiltert werden kann, um Details für verschiedene Labels abzurufen. Die Werte stehen für verschiedene System- und E/A-Vorgänge. Labels wie accepted, accepted_total, close_failed, close_success, conn_pending, connected, connected_total, max_conn und timeouts beziehen sich auf Socket- und Verbindungsvorgänge. Die verbleibenden Labels beziehen sich auf andere Systemvorgänge.
/server/num_threads Die Anzahl der aktiven Nicht-Daemon-Threads auf dem Server.
/server/request_count

Die Gesamtzahl der Anfragen, die von der Serveranwendung empfangen wurden.

Die Anwendung kann beispielsweise apigee-runtime, apigee-synchronizer oder apigee-udca sein. Verwenden Sie das Label pod_name, um Ergebnisse nach Anwendung zu filtern.

/server/response_count

Gesamtzahl der von der Serveranwendung gesendeten Antworten.

Die Anwendung kann beispielsweise apigee-runtime, apigee-synchronizer oder apigee-udca sein. Verwenden Sie das Label pod_name, um Ergebnisse nach Anwendung zu filtern.

/server/latencies

Latenz ist die Latenz in Millisekunden, die von der Serveranwendung verursacht wird.

Die Anwendung kann beispielsweise apigee-runtime, apigee-synchronizer oder apigee-udca sein. Verwenden Sie das Label pod_name, um Ergebnisse nach Anwendung zu filtern.

/upstream/request_count

Die Anzahl der Anfragen, die von der Serveranwendung an die vorgelagerte Anwendung gesendet werden.

Bei apigee-synchronizer ist die Steuerungsebene beispielsweise vorgelagert. Daher ist upstream/request_count für apigee-synchronizer ein Messwert, der die Anfragen angibt, die apigee-synchronizer an die Steuerungsebene gesendet hat.

/upstream/response_count

Die Anzahl der Antworten, die von der Serveranwendung von seiner vorgelagerten Anwendung empfangen wurden.

Bei apigee-synchronizer ist die Steuerungsebene beispielsweise vorgelagert. upstream/response_count für apigee-synchronizer ist also ein Messwert, der die Anfragen angibt, die apigee-synchronizer von der Steuerungsebene erhalten hat.

/upstream/latencies

Die Latenz in Millisekunden, die durch die vorgelagerte Serveranwendung anfällt.

Bei apigee-synchronizer ist die Steuerungsebene beispielsweise vorgelagert. upstream/latencies für apigee-synchronizer ist also ein Messwert, der die Latenz auf der Steuerungsebene angibt.

UDCA-Messwerte

Open Telemetry erfasst und verarbeitet Messwerte (wie unter Messwerterfassung beschrieben) für den UDCA-Dienst wie bei anderen Hybriddiensten.

In der folgenden Tabelle werden die Messwerte beschrieben, die der Open Telemetry-Collector in den UDCA-Messwertdaten verwendet.

Messwertname Verwenden
/udca/server/local_file_oldest_ts

Der Zeitstempel in Millisekunden seit dem Start der Unix-Epoche für die älteste Datei im Dataset.

Dieser wird alle 60 Sekunden berechnet und spiegelt den Status nicht in Echtzeit wider. Wenn der UDCA aktuell ist und bei der Berechnung dieses Messwerts keine Dateien zum Hochladen warten, lautet der Wert 0.

Wenn dieser Wert kontinuierlich ansteigt, bleiben alte Dateien auf dem Laufwerk.

/udca/server/local_file_latest_ts

Der Zeitstempel in Millisekunden seit Beginn der Unix-Epoche, für die neueste Datei auf dem Laufwerk nach Status.

Dieser wird alle 60 Sekunden berechnet und spiegelt den Status nicht in Echtzeit wider. Wenn der UDCA aktuell ist und bei der Berechnung dieses Messwerts keine Dateien zum Hochladen warten, lautet der Wert 0.

/udca/server/local_file_count

Die Anzahl der Dateien auf dem Laufwerk im Datenerfassungs-Pod.

Im Idealfall liegt der Wert nahe 0. Ein konstant hoher Wert gibt an, dass Dateien nicht hochgeladen werden oder dass der UDCA sie nicht schnell genug hochladen kann.

Dieser Wert wird alle 60 Sekunden berechnet und spiegelt nicht den Status des UDCA in Echtzeit wider.

/udca/server/total_latencies

Das Zeitintervall in Sekunden zwischen der erstellten Datendatei und der erfolgreich hochgeladenen Datendatei.

Die Buckets sind 100 ms, 250 ms, 500 ms, 1 s, 2 s, 4 s, 8 s, 16 s, 32 s und 64 s.

Histogramm für die Gesamtlatenz vom Zeitpunkt der Dateierstellung bis zum erfolgreichen Upload.

/udca/server/upload_latencies

Die Gesamtzeit in Sekunden, die vom UDCA für das Hochladen einer Datendatei aufgewendet wurde.

Die Buckets sind 100 ms, 250 ms, 500  ms, 1 s, 2 s, 4 s, 8 s, 16 s, 32 s und 64 s.

Die Messwerte zeigen ein Histogramm für die gesamte Upload-Latenz an, einschließlich aller vorgelagerten Aufrufe.

/udca/upstream/http_error_count

Die Gesamtzahl der beim UDCA aufgetretenen HTTP-Fehler. Dieser Messwert ist hilfreich, um zu bestimmen, welcher Teil der externen UDCA-Abhängigkeiten aus welchem Grund fehlschlagen.

Diese Fehler können für verschiedene Dienste (getDataLocation, Cloud storage, Token generator) und für verschiedene Datasets (z. B. api und trace) mit unterschiedlichen Antwortcodes auftreten.

/udca/upstream/http_latencies

Die vorgelagerte Latenz von Diensten in Sekunden.

Die Buckets sind 100 ms, 250 ms, 500 ms, 1 s, 2 s, 4 s, 8 s, 16 s, 32 s und 64 s.

Histogramm für die Latenz von vorgelagerten Diensten.

/udca/upstream/uploaded_file_sizes

Die Größe der Datei, die in Apigee-Dienste hochgeladen wird, in Byte.

Die Buckets sind 1 KB, 10 KB, 100 KB, 1 MB, 10 MB, 100 MB und 1 GB.

Histogramm für die Dateigröße nach Dataset, Organisation und Umgebung.

/udca/upstream/uploaded_file_count Eine Anzahl der Dateien, die der UDCA in die Apigee-Dienste hochgeladen hat.

Hinweis:

  • Der Dataset-Wert event sollte weiterhin wachsen.
  • Der Dataset-Wert api sollte weiterhin wachsen, wenn „org/env“ konstanten Traffic hat.
  • Der Dataset-Wert trace sollte sich erhöhen, wenn Sie die Apigee-Trace-Tools zum Debuggen oder Prüfen Ihrer Anfragen verwenden.
/udca/disk/used_bytes

Der Speicherplatz, der von den Datendateien auf dem Laufwerk des Datenerfassungs-Pods belegt wird, in Byte.

Eine Erhöhung dieses Werts im Laufe der Zeit:

  • ready_to_upload impliziert, dass der Agent hinterherhinkt.
  • failed impliziert, dass sich Dateien auf dem Laufwerk anhäufen und nicht hochgeladen werden. Dieser Wert wird alle 60 Sekunden berechnet.
/udca/server/pruned_file_count Anzahl der Dateien, die gelöscht wurden, da ihre Gültigkeitsdauer (Time To Life, TTL) einen festgelegten Schwellenwert überschritten hat. Das Dataset kann API, Trace und andere enthalten und der Status kann UPLOADED, FAILED oder DISCARDED sein.
/udca/server/retry_cache_size

Anzahl der Dateien, die der UDCA pro Dataset versucht erneut hochzuladen.

Nach drei Wiederholungsversuchen wird die Datei vom UDCA in das Unterverzeichnis /failed verschoben und aus dem Cache entfernt. Eine Erhöhung dieses Werts im Laufe der Zeit bedeutet, dass der Cache nicht gelöscht wird, was dann geschieht, wenn Dateien nach drei Wiederholungsversuchen in das Unterverzeichnis /failed verschoben werden.

Cassandra-Messwerte

Open Telemetry erfasst und verarbeitet Messwerte (wie unter Messwerterfassung beschrieben) für Cassandra wie bei anderen Hybriddiensten.

In der folgenden Tabelle werden die Messwerte beschrieben, die der Open Telemetry-Collector in den Cassandra-Messwertdaten verwendet.

Messwertname (ohne Domain) Verwenden
/cassandra/process_max_fds Maximale Anzahl geöffneter Dateideskriptoren.
/cassandra/process_open_fds Geöffnete Dateideskriptoren.
/cassandra/jvm_memory_pool_bytes_max Maximale JVM-Speichernutzung für den Pool.
/cassandra/jvm_memory_pool_bytes_init Anfängliche JVM-Speichernutzung für den Pool.
/cassandra/jvm_memory_bytes_max Maximale JVM-Heap-Speichernutzung.
/cassandra/process_cpu_seconds_total Verbrauchte Nutzer- und System-CPU-Zeit in Sekunden.
/cassandra/jvm_memory_bytes_used JVM-Heap-Speichernutzung.
/cassandra/compaction_pendingtasks Offene Verdichtungen für Cassandra-SSTables. Weitere Informationen finden Sie unter Verdichtung.
/cassandra/jvm_memory_bytes_init Anfängliche JVM-Heap-Speichernutzung.
/cassandra/jvm_memory_pool_bytes_used JVM-Pool-Speichernutzung.
/cassandra/jvm_memory_pool_bytes_committed Zugesicherte JVM-Pool-Speichernutzung.
/cassandra/clientrequest_latency Latenz der Leseanfrage im 75. Perzentilbereich in Mikrosekunden.
/cassandra/jvm_memory_bytes_committed Zugesicherte JVM-Heap-Speichernutzung.

Mit Cassandra-Messwerten arbeiten

Apigee empfiehlt die folgenden Messwerte, die für Ihre Cassandra-Datenbank wichtig zu überwachen sind:

  • Cassandra-Anfragerate: Verwenden Sie diesen Messwert, um die Cassandra-Lese- und Schreibanfragerate zu überwachen.
    Messwert: apigee.googleapis.com/cassandra/clientrequest_latency
    Ressourcenlabels: project_id, location, cluster_name, namespace_name, pod_name, container_name
    Messwertlabels: scope, unit

    Verwenden Sie diese Labels, um die spezifische Ressource zu filtern, oder für das Gruppieren.

    Wenden Sie den folgenden Filter an, um die Cassandra-Leseanfragerate zu überwachen.

    Filter: metric.scope == 'Read'
    metric.unit == 'OneMinuteRate'

    Wenden Sie den folgenden Filter an, um die Cassandra-Schreibanfragerate zu überwachen.

    Filter: metric.scope == 'Write'
    metric.unit == 'OneMinuteRate'
  • Cassandra-Anfragelatenz: Verwenden Sie diesen Messwert, um die Cassandra-Lese- und Schreibanfragelatenz zu überwachen. Dies ist der gleiche Messwert wie die Anfragerate, apigee.googleapis.com/cassandra/clientrequest_latency unter Anwendung unterschiedlicher Filter.

    Wenden Sie den folgenden Filter an, um die Cassandra-Leseanfragelatenz zu überwachen.

    Filter: metric.scope == 'Read'
    metric.unit == '99thPercentile' oder '95thPercentile' oder '75thPercentile'

    Wenden Sie den folgenden Filter an, um die Cassandra-Schreibanfragelatenz zu überwachen.

    Filter: metric.scope == 'Write'
    metric.unit == '99thPercentile' oder '95thPercentile' oder '75thPercentile'
  • Cassandra-Pod-CPU-Anfrageauslastung
    Messwert: kubernetes.io/container/cpu/request_utilization (GKE on Google Cloud)

    Weitere Informationen finden Sie unter Kubernetes-Messwerte.

    kubernetes.io/anthos/container/cpu/request_utilization (Google Distributed Cloud)
    Ressourcenlabels: project_id, location, cluster_name, namespace_name, pod_name, container_name

    Verwenden Sie diese Labels, um die spezifische Ressource zu filtern, oder für das Gruppieren.

  • Cassandra-Datenvolumenauslastung
    Messwert: kubernetes.io/pod/volume/utilization (GKE on Google Cloud)

    Weitere Informationen finden Sie unter Kubernetes-Messwerte.

    kubernetes.io/anthos/pod/volume/utilization (Google Distributed Cloud)
    Ressourcenlabels: project_id, location, cluster_name, namespace_name, pod_name
    Messwertlabels: volume_name

    Verwenden Sie diese Labels, um die spezifische Ressource zu filtern, oder für das Gruppieren.

Empfehlungen zum Skalieren des Cassandra-Clusters

Die folgenden Richtlinien können als empfohlener Cluster für die Entscheidung dienen, Ihren Cassandra-Cluster zu skalieren. Im Allgemeinen gilt: Wenn Lese- oder Schreibanfragen konsistent eine Latenz des 99. Perzentils zeigen oder die Latenz kontinuierlich ansteigt und Sie entsprechende Spitzen bei der CPU-Anfrageauslastung und den Lese- oder Schreibanfrageraten feststellen, kann davon ausgegangen werden, dass Ihr Cassandra-Cluster unter Stress steht. Sie sollten den Cluster möglicherweise hochskalieren. Weitere Informationen finden Sie unter Cassandra skalieren.

MesswertGrenzwertTriggerdauer
kubernetes.io/pod/volume/utilization85 %5 Min.
kubernetes.io/container/cpu/request_utilization85 %3 Min.
Read request Latency 99thPercentile5s3 Min.
Write request Latency 99thPercentile5s3 Min.