Unterstützte Monitoring-Messwerte

Auf dieser Seite werden die für Memorystore for Valkey verfügbaren Cloud Monitoring-Messwerte aufgeführt und es wird beschrieben, was die einzelnen Messwerte messen.

Cloud Monitoring-Messwerte

Messwerte auf Instanzebene

Diese Messwerte bieten einen allgemeinen Überblick über den Gesamtzustand und die Leistung der Instanz. Sie geben Aufschluss über die Gesamtkapazität und ‑auslastung der Instanz und helfen Ihnen, potenzielle Engpässe oder Bereiche mit Verbesserungspotenzial zu erkennen.

Messwertname Beschreibung
memorystore.googleapis.com/instance/clients/average_connected_clients Durchschnittliche aktuelle Anzahl von Clientverbindungen auf allen Knoten in der Instanz.
memorystore.googleapis.com/instance/clients/maximum_connected_clients Maximale aktuelle Anzahl von Clientverbindungen für einen einzelnen Knoten in der Instanz.
memorystore.googleapis.com/instance/clients/maximum_connection_duration Maximale Dauer einer Clientverbindung für einen einzelnen Knoten in der Instanz.
memorystore.googleapis.com/instance/clients/total_connected_clients Aktuelle Anzahl der Clientverbindungen zur Instanz.
memorystore.googleapis.com/instance/stats/total_connections_received_count Anzahl der Clientverbindungen auf Instanzebene, die in der letzten Minute erstellt wurden.
memorystore.googleapis.com/instance/stats/total_rejected_connections_count Anzahl der abgelehnten Verbindungen aufgrund der Beschränkung „maxclients“.
memorystore.googleapis.com/instance/commandstats/total_usec_count Die insgesamt pro Befehl verbrauchte Zeit.
memorystore.googleapis.com/instance/commandstats/total_calls_count Gesamtzahl der Aufrufe für diesen Befehl in einer Minute.
memorystore.googleapis.com/instance/cpu/average_utilization Durchschnittliche CPU-Auslastung aller Knoten in der Instanz zwischen 0,0 und 1,0.
memorystore.googleapis.com/instance/cpu/maximum_utilization Maximale CPU-Auslastung für einen einzelnen Knoten in der Instanz zwischen 0,0 und 1,0.
memorystore.googleapis.com/instance/stats/average_expired_keys Durchschnittliche Anzahl von Schlüsselablaufereignissen für die primären Knoten in der Instanz.
memorystore.googleapis.com/instance/stats/maximum_expired_keys Maximale Anzahl von Schlüsselablaufereignissen für einen einzelnen Knoten in der Instanz für den primären.
memorystore.googleapis.com/instance/stats/total_expired_keys_count Die Gesamtzahl der Schlüsselablaufereignisse für primäre Knoten in der Instanz.
memorystore.googleapis.com/instance/stats/average_evicted_keys Durchschnittliche Anzahl der aufgrund der Speicherkapazität entfernten Schlüssel auf allen primären Knoten in der Instanz.
memorystore.googleapis.com/instance/stats/maximum_evicted_keys Maximale Anzahl der entfernten Schlüssel für einen einzelnen Knoten in der Instanz aufgrund der Speicherkapazität für den primären Knoten.
memorystore.googleapis.com/instance/stats/total_evicted_keys_count Anzahl der aufgrund der Speicherkapazität entfernten Schlüssel auf allen primären Knoten in der Instanz.
memorystore.googleapis.com/instance/keyspace/total_keys Anzahl der in der Instanz gespeicherten Schlüssel.
memorystore.googleapis.com/instance/stats/average_keyspace_hits Durchschnittliche Anzahl erfolgreicher Lookups von Schlüsseln auf allen Knoten in der Instanz.
memorystore.googleapis.com/instance/stats/maximum_keyspace_hits Maximale Anzahl erfolgreicher Schlüssel-Lookups für einen einzelnen Knoten in der Instanz.
memorystore.googleapis.com/instance/stats/total_keyspace_hits_count Anzahl der erfolgreichen Schlüssel-Lookups für die Instanz.
memorystore.googleapis.com/instance/stats/average_keyspace_misses Durchschnittliche Anzahl der fehlgeschlagenen Lookups von Schlüsseln auf allen Knoten in der Instanz.
memorystore.googleapis.com/instance/stats/maximum_keyspace_misses Maximale Anzahl fehlgeschlagener Lookups von Schlüsseln für einen einzelnen Knoten in der Instanz.
memorystore.googleapis.com/instance/stats/total_keyspace_misses_count Gesamtzahl der fehlgeschlagenen Lookups von Schlüsseln für die Instanz.
memorystore.googleapis.com/instance/memory/average_utilization Durchschnittliche Arbeitsspeicherauslastung auf allen Knoten in der Instanz. Der Wert liegt zwischen 0,0 und 1,0.
memorystore.googleapis.com/instance/memory/maximum_utilization Die maximale Speicherauslastung für einen einzelnen Knoten in der Instanz zwischen 0,0 und 1,0.
memorystore.googleapis.com/instance/memory/total_used_memory Gesamte Arbeitsspeichernutzung der Instanz.
memorystore.googleapis.com/instance/memory/size Speichergröße der Instanz.
memorystore.googleapis.com/instance/replication/average_ack_lag Durchschnittliche Replikationsverzögerung (in Sekunden) von Replikaten auf allen Knoten in der Instanz.

Die Replikationsverzögerung (in Sekunden) gibt an, wie weit Replikate hinter den primären Instanzen zurückliegen.
memorystore.googleapis.com/instance/replication/maximum_ack_lag Maximale Replikationsbestätigungsverzögerung (in Sekunden) für ein einzelnes Replikat in der Instanz.

Die Replikationsbestätigungsverzögerung (in Sekunden) gibt an, wie weit Replikationsbestätigungen hinter den primären Instanzen zurückliegen.
memorystore.googleapis.com/instance/replication/average_offset_diff Durchschnittliche Differenz des Replikationsbestätigungs-Offsets (in Byte) für alle Knoten in der Instanz.

Die Differenz des Replikationsbestätigungs-Offsets gibt die Anzahl der Byte an, die nicht zwischen Replikaten und ihren primären Instanzen repliziert wurden.
memorystore.googleapis.com/instance/replication/maximum_offset_diff Maximale Differenz des Replikations-Offsets (in Byte) für einen einzelnen Knoten in der Instanz.

Die Differenz des Replikations-Offsets gibt die Anzahl der Byte an, die nicht zwischen einem Replikat und seiner primären Datenbank repliziert wurden.
memorystore.googleapis.com/instance/stats/total_net_input_bytes_count Anzahl der eingehenden Netzwerkbytes, die von den Instanzendpunkten empfangen wurden.
memorystore.googleapis.com/instance/stats/total_net_output_bytes_count Anzahl der ausgehenden Netzwerk-Bytes, die von den Instanzendpunkten gesendet wurden.

Messwerte auf Knotenebene

Diese Messwerte bieten detaillierte Informationen zum Status und zur Leistung einzelner Knoten in der Instanz. Sie helfen Ihnen, Probleme mit Knoten zu beheben und die Leistung von Knoten zu optimieren.

Messwertname Beschreibung
memorystore.googleapis.com/instance/node/clients/connected_clients Die Anzahl der Clients, die mit dem Instanzknoten verbunden sind.
memorystore.googleapis.com/instance/node/clients/blocked_clients Die Anzahl der Clientverbindungen, die vom Instanzknoten blockiert werden.
memorystore.googleapis.com/instance/node/server/uptime Die Betriebszeit des Instanzknotens.
memorystore.googleapis.com/instance/node/stats/connections_received_count Die Anzahl der Clientverbindungen, die von Memorystore for Valkey in der letzten Minute auf dem Instanzknoten erstellt wurden.
memorystore.googleapis.com/instance/node/stats/rejected_connections_count Die Anzahl der Verbindungen, die von Memorystore for Valkey abgelehnt werden, weil der Instanzknoten das Limit für „maxclients“ erreicht.
memorystore.googleapis.com/instance/node/commandstats/usec_count Die für jeden Befehl im Instanzknoten benötigte Zeit.
memorystore.googleapis.com/instance/node/commandstats/calls_count Die Anzahl der Aufrufe für diesen Befehl auf dem Instanzknoten in einer Minute.
memorystore.googleapis.com/instance/node/cpu/utilization Die CPU-Auslastung für den Instanzknoten (zwischen 0,0 und 1,0).
memorystore.googleapis.com/instance/node/stats/expired_keys_count Die Anzahl der Ablaufereignisse im Instanzknoten.
memorystore.googleapis.com/instance/node/stats/evicted_keys_count Die Anzahl der entfernten Schlüssel nach Instanzknoten.
memorystore.googleapis.com/instance/node/keyspace/total_keys Die Anzahl der Schlüssel, die in Memorystore for Valkey im Instanzknoten gespeichert werden.
memorystore.googleapis.com/instance/node/stats/keyspace_hits_count Anzahl der erfolgreichen Lookups von Schlüsseln im Instanzknoten.
memorystore.googleapis.com/instance/node/stats/keyspace_misses_count Anzahl der fehlgeschlagenen Lookups von Schlüsseln im Instanzknoten.
memorystore.googleapis.com/instance/node/memory/utilization Die Arbeitsspeicherauslastung für den Instanzknoten (zwischen 0,0 und 1,0).
memorystore.googleapis.com/instance/node/memory/usage Die Arbeitsspeichernutzung des Instanzknotens.
memorystore.googleapis.com/instance/node/stats/net_input_bytes_count Die Anzahl der eingehenden Netzwerkbytes, die der Instanzknoten empfängt.
memorystore.googleapis.com/instance/node/stats/net_output_bytes_count Die Anzahl der ausgehenden Netzwerk-Byte, die der Instanzknoten sendet.
memorystore.googleapis.com/instance/node/replication/offset Die Replikations-Offset-Bytes des Instanzknotens.
memorystore.googleapis.com/instance/node/server/healthy Ermittelt, ob ein Instanzknoten verfügbar ist und ordnungsgemäß funktioniert. Dieser Messwert befindet sich im Vorschaumodus.

Messwerte für die regionsübergreifende Replikation

In diesem Abschnitt werden Messwerte für die regionenübergreifende Replikation aufgeführt.

Messwertname Beschreibung
memorystore.googleapis.com/instance/cross_instance_replication/secondary_replication_links Dieser Messwert gibt die Anzahl der Shard-Verknüpfungen zwischen der primären und der sekundären Instanz an. In einer regionenübergreifenden Replikationsgruppe meldet eine primäre Instanz die Anzahl der regionenübergreifenden Replikationsverbindungen, die sie mit den sekundären Instanzen in der Gruppe hat. Für jede sekundäre Instanz sollte diese Zahl der Anzahl der Shards entsprechen. Wenn die Anzahl unter die Anzahl der Shards fällt, gibt dieser Messwert die Anzahl der Shards an, als die Replikation zwischen dem Replikator und dem Follower beendet wurde. Im Idealfall entspricht dieser Messwert der Anzahl der Shards für die primäre Instanz.
memorystore.googleapis.com/instance/cross_instance_replication/secondary_maximum_replication_offset_diff Diese Messgröße gibt den maximalen Replikations-Offset-Unterschied zwischen den primären und sekundären Shards an.
memorystore.googleapis.com/instance/cross_instance_replication/secondary_average_replication_offset_diff Diese Messgröße gibt den durchschnittlichen Unterschied beim Replikations-Offset zwischen den primären und sekundären Shards an.

Messwerte für Sicherungen

In diesem Abschnitt werden Messwerte für Sicherungen und Importe aufgeführt.

Messwerte auf Instanzebene

Messwertname Beschreibung
memorystore.googleapis.com/instance/backup/last_backup_start_time Startzeit des letzten Sicherungsvorgangs.
memorystore.googleapis.com/instance/backup/last_backup_status Der Status des letzten Sicherungsvorgangs. Die Status sind 1 (Erfolg) und 0 (Fehler).
memorystore.googleapis.com/instance/backup/last_backup_duration Die Dauer des letzten Sicherungsvorgangs in Millisekunden.
memorystore.googleapis.com/instance/backup/last_backup_size Die Größe des letzten Back-ups in Byte.
memorystore.googleapis.com/instance/import/last_import_start_time Die Startzeit des letzten Importvorgangs.
memorystore.googleapis.com/instance/import/last_import_duration Die Dauer des letzten Importvorgangs in Millisekunden.

Messwerte zur Persistenz

In diesem Abschnitt werden Persistenz-Messwerte aufgeführt und Beispielanwendungsfälle für Persistenzmesswerte beschrieben.

Messwerte für die RDB-Persistenz

Messwerte auf Instanzebene

Messwertname Beschreibung
memorystore.googleapis.com/instance/persistence/load_count Die kumulative Anzahl der Ladevorgänge für die AOF- oder RDB-Persistenz in der gesamten Instanz.
memorystore.googleapis.com/instance/persistence/rdb_saves_count Die kumulative Anzahl der RDB-Snapshots (auch als save bezeichnet), die für Ihre Instanz erstellt werden. Dieser Messwert hat das Feld status_code. Wenn Sie prüfen möchten, ob ein Snapshot fehlgeschlagen ist, können Sie das Feld status_code nach dem folgenden Fehler filtern: 3 - INTERNAL ERROR.
memorystore.googleapis.com/instance/persistence/rdb_last_success_ages Das Alter eines Verteilungssnapshots für alle Knoten in der Instanz. Die Verteilung sollte Werte mit einer geringeren oder gleichen Verzögerungszeit als die Snapshot-Häufigkeit aufweisen.
memorystore.googleapis.com/instance/persistence/rejected_writes_count Die kumulative Anzahl der abgelehnten Schreibbefehle für die Instanz aufgrund eines Fehlers beim Speichern.

Messwerte auf Knotenebene

Messwertname Beschreibung
memorystore.googleapis.com/instance/node/persistence/rdb_bgsave_in_progress Auf dem Instanzknoten wird gerade ein RDB BGSAVE ausgeführt. TRUE bedeutet, dass der Speichervorgang läuft.
memorystore.googleapis.com/instance/node/persistence/rdb_last_bgsave_status Der Erfolg des letzten BGSAVE auf dem Instanzknoten. TRUE bedeutet, dass ein erfolgreicher BGSAVE auftritt. Wenn kein bgrewrite vorhanden ist, wird möglicherweise der Standardwert TRUE verwendet.
memorystore.googleapis.com/instance/node/persistence/rdb_saves_count Der Messwert gibt die kumulative Anzahl der RDB-Speichervorgänge an, die auf dem Instanzknoten ausgeführt wurden.
memorystore.googleapis.com/instance/node/persistence/rdb_last_save_age Die Zeit (in Sekunden) seit dem letzten erfolgreichen Snapshot.
memorystore.googleapis.com/instance/node/persistence/rdb_next_save_time_until Die verbleibende Zeit (in Sekunden) bis zum nächsten Snapshot.
memorystore.googleapis.com/instance/node/persistence/current_save_keys_total Die Anzahl der Schlüssel im RDB-Speichervorgang, der auf dem Instanzknoten ausgeführt wird.

Messwerte für die AOF-Persistenz

Messwerte auf Instanzebene

Messwertname Beschreibung
memorystore.googleapis.com/instance/persistence/aof_fsync_lags Dieser Messwert zeigt eine Verteilung der Verzögerung (vom Schreiben der Daten bis zur Synchronisierung des dauerhaften Speichers) für alle Knoten in der Instanz. Es wird nur für Instanzen mit appendfsync=everysec ausgegeben. Im Idealfall sollte die Verteilung Werte mit einer geringeren oder gleichen Verzögerungszeit als die AOF-Synchronisierungshäufigkeit aufweisen.
memorystore.googleapis.com/instance/persistence/aof_rewrite_count Dieser Messwert gibt an, wie oft ein Knoten für Ihre Instanz eine AOF-Neuschreibung ausgelöst hat. Dieser Messwert hat das Feld status_code. Wenn Sie prüfen möchten, ob AOF-Neuschreibvorgänge fehlschlagen, können Sie das Feld status_code nach dem folgenden Fehler filtern: 3 – INTERNAL_ERROR

Messwerte auf Knotenebene

Messwertname Beschreibung
memorystore.googleapis.com/instance/node/persistence/aof_last_write_status Dieser Messwert gibt an, ob der letzte AOF-Schreibvorgang auf dem Instanzknoten erfolgreich war. TRUE bedeutet Erfolg. Wenn kein Schreibvorgang erfolgt ist, kann der Wert standardmäßig auf TRUE gesetzt sein.
memorystore.googleapis.com/instance/node/persistence/aof_last_bgrewrite_status Dieser Messwert gibt an, ob der letzte AOF-bgrewrite-Vorgang auf dem Instanzknoten erfolgreich war. TRUE bedeutet Erfolg. Wenn kein bgrewrite stattgefunden hat, kann der Wert standardmäßig auf TRUE gesetzt sein.
memorystore.googleapis.com/instance/node/persistence/aof_fsync_lag Dieser Messwert zeigt die AOF-Verzögerung zwischen dem Arbeitsspeicher und dem persistenten Speicher im Instanzknoten an. Gilt nur für Instanzen, bei denen AOF aktiviert ist und appendfsync=EVERYSEC festgelegt ist.
memorystore.googleapis.com/instance/node/persistence/aof_rewrites_count Dieser Messwert gibt die Anzahl der AOF-Neuschreibvorgänge im Instanzknoten an. Wenn Sie prüfen möchten, ob AOF-Neuschreibvorgänge fehlschlagen, können Sie das Feld status_code nach dem folgenden Fehler filtern: 3 – INTERNAL_ERROR
memorystore.googleapis.com/instance/node/persistence/aof_fsync_errors_count Dieser Messwert gibt die Anzahl der AOF-fsync()-Aufruffehler an und gilt nur für AOF-aktivierte Instanzen, bei denen appendfsync=EVERYSEC|ALWAYS festgelegt ist.

Häufige Messwerte zur Persistenz

Messwerte, die sowohl für AOF- als auch für RDB-Persistenzmechanismen gelten.

Messwerte auf Knotenebene

Messwertname Beschreibung
memorystore.googleapis.com/instance/node/persistence/auto_restore_count Dieser Messwert gibt die Anzahl der Wiederherstellungen aus der Dumpdatei (AOF oder RDB) an. Wenn Sie prüfen möchten, ob Wiederherstellungen fehlschlagen, können Sie das Feld status_code nach dem folgenden Fehler filtern: 2 – INTERNAL_ERROR

Beispiele für Anwendungsfälle für Persistenzmesswerte

Prüfen, ob AOF-Schreibvorgänge zu Latenz und Arbeitsspeicherauslastung führen

Angenommen, Sie stellen eine erhöhte Latenz oder Speichernutzung auf Ihrer Instanz oder dem Knoten in der Instanz fest. In diesem Fall sollten Sie prüfen, ob die zusätzliche Nutzung mit der AOF-Persistenz zusammenhängt.

Da Sie wissen, dass AOF-Überschreibungsvorgänge vorübergehende Lastspitzen auslösen können, können Sie den Messwert aof_rewrites_count untersuchen. Er gibt die kumulative Anzahl der AOF-Überschreibungen über die Lebensdauer der Instanz oder des Knotens in der Instanz an. Angenommen, dieser Messwert zeigt, dass Steigerungen bei der Anzahl der Umformulierungen mit Latenzerhöhungen einhergehen. In diesem Fall können Sie das Problem beheben, indem Sie die Schreibgeschwindigkeit reduzieren oder die Anzahl der Shards erhöhen, um die Häufigkeit von Überschreibungen zu verringern.

Prüfen, ob RDB-Speichervorgänge zu Latenz und Arbeitsspeicherauslastung führen

Angenommen, Sie stellen eine erhöhte Latenz oder Speichernutzung auf Ihrer Instanz oder dem Knoten in der Instanz fest. In diesem Fall sollten Sie prüfen, ob die zusätzliche Nutzung mit der RDB-Persistenz zusammenhängt.

Da Sie wissen, dass RDB-Speichervorgänge vorübergehende Lastspitzen auslösen können, können Sie den Messwert rdb_saves_count untersuchen. Er gibt die kumulative Anzahl der RDB-Speichervorgänge über die Lebensdauer der Instanz oder des Knotens in der Instanz an. Angenommen, dieser Messwert zeigt, dass eine Erhöhung der Anzahl der RDB-Speichervorgänge mit einer Erhöhung der Latenz einhergeht. In diesem Fall können Sie das RDB-Snapshot-Intervall verkürzen, um die Häufigkeit von Überschreibvorgängen zu verringern. Sie können die Instanz auch horizontal skalieren, um die Baseline-Last zu reduzieren.

Messwerte für Memorystore for Valkey interpretieren

Wie in der Liste oben zu sehen ist, haben viele Messwerte drei Kategorien gemeinsam: Durchschnitt, Maximum und Summe.

Für Memorystore for Valkey stellen wir durchschnittliche und maximale Varianten desselben Messwerts bereit, damit Sie beide verwenden können, um Hotspots für diese Messwertfamilie zu identifizieren.

Der Gesamtwert für den Messwert ist unabhängig und bietet separate Informationen, die nicht mit dem Hotspotting-Zweck von Durchschnitt und Maximum zusammenhängen.

Durchschnitts- und Maximalmesswerte

Angenommen, Sie vergleichen die Werte average_keyspace_hits und maximum_keyspace_hits für Ihre Instanz. Je größer der Unterschied zwischen den beiden Messwerten ist, desto mehr Hotspots für Treffer gibt es in Ihrer Instanz. Im Idealfall liegt der Wert zwischen average_keyspace_hits und maximum_keyspace_hits, da dies bedeutet, dass die Treffer gleichmäßiger auf Ihre Instanz verteilt sind.

Dieses Prinzip gilt für alle Messwerte, die die Varianten Durchschnitt und Maximum desselben Messwerts haben.

Beispiel für Hotspotting

Wenn Sie average_keyspace_hits und maximum_keyspace_hits für alle Shards in Ihrer Instanz vergleichen, können Sie feststellen, wo Hotspots auftreten. Angenommen, die Shards in einer Instanz mit 6 Shards haben die folgende Anzahl von Treffern:

  • Shard 1–2 Hits
  • Shard 2 – 2 Treffer
  • Shard 3 – 2 Treffer
  • Shard 4 – 2 Treffer
  • Shard 5 – 2 Treffer
  • Shard 6–8 Hits

In diesem Beispiel gibt average_keyspace_hits den Wert 3 und maximum_keyspace_hits den Wert 8 zurück. Das bedeutet, dass Shard 6 aktiv ist.

Wir stellen Messwerte auf Knotenebene bereit, die hilfreich sein können, um Hotspots in der Instanz zu identifizieren.