Unterstützte Monitoring-Messwerte

Auf dieser Seite werden die für Memorystore for Valkey verfügbaren Cloud Monitoring-Messwerte aufgelistet 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. So können Sie die Gesamtkapazität und -auslastung der Instanz besser nachvollziehen und potenzielle Engpässe oder Verbesserungsmöglichkeiten erkennen.

Messwertname Beschreibung
memorystore.googleapis.com/instance/clients/average_connected_clients Durchschnittliche aktuelle Anzahl der Clientverbindungen auf allen Knoten in der Instanz.
memorystore.googleapis.com/instance/clients/maximum_connected_clients Die aktuelle maximale 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 Die Gesamtzahl 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 des Limits „maxclients“.
memorystore.googleapis.com/instance/commandstats/total_usec_count Die insgesamt verbrauchte Zeit pro Befehl.
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 von 0,0 bis 1,0.
memorystore.googleapis.com/instance/cpu/maximum_utilization Maximale CPU-Auslastung für einen einzelnen Knoten in der Instanz von 0,0 bis 1,0.
memorystore.googleapis.com/instance/stats/average_expired_keys Durchschnittliche Anzahl der Schlüsselablaufereignisse für die Primärschlüssel aller 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ärschlüssel.
memorystore.googleapis.com/instance/stats/total_expired_keys_count Gesamtzahl der Schlüsselablaufereignisse auf allen primären Knoten der Instanz.
memorystore.googleapis.com/instance/stats/average_evicted_keys Durchschnittliche Anzahl der aufgrund der Arbeitsspeicherkapazität entfernten Schlüssel auf allen primären Knoten 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 Arbeitsspeicherkapazität für den Primärspeicher.
memorystore.googleapis.com/instance/stats/total_evicted_keys_count Anzahl der aufgrund der Arbeitsspeicherkapazität auf allen primären Knoten der Instanz entfernten Schlüssel.
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 der erfolgreichen Schlüsselsuche auf allen Knoten in der Instanz.
memorystore.googleapis.com/instance/stats/maximum_keyspace_hits Maximale Anzahl erfolgreicher Schlüsselabfragen für einen einzelnen Knoten in der Instanz.
memorystore.googleapis.com/instance/stats/total_keyspace_hits_count Anzahl der erfolgreichen Schlüsselabfragen für die Instanz.
memorystore.googleapis.com/instance/stats/average_keyspace_misses Durchschnittliche Anzahl der fehlgeschlagenen Schlüsselsuche auf allen Knoten in der Instanz.
memorystore.googleapis.com/instance/stats/maximum_keyspace_misses Maximale Anzahl fehlgeschlagener Schlüsselabfragen für einen einzelnen Knoten in der Instanz.
memorystore.googleapis.com/instance/stats/total_keyspace_misses_count Gesamtzahl der fehlgeschlagenen Schlüsselsuche für die Instanz.
memorystore.googleapis.com/instance/memory/average_utilization Durchschnittliche Arbeitsspeicherauslastung auf allen Knoten der Instanz. Der Wert liegt zwischen 0,0 und 1,0.
memorystore.googleapis.com/instance/memory/maximum_utilization Maximale Arbeitsspeicherauslastung für einen einzelnen Knoten in der Instanz von 0,0 bis 1,0.
memorystore.googleapis.com/instance/memory/total_used_memory Gesamte Arbeitsspeichernutzung der Instanz.
memorystore.googleapis.com/instance/memory/size Arbeitsspeichergröße der Instanz.
memorystore.googleapis.com/instance/replication/average_ack_lag Durchschnittliche Replikationsverzögerung (in Sekunden) der Replikate auf allen Knoten in der Instanz.

Die Replikationsverzögerung (in Sekunden) gibt an, wie weit die 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 die Replikationsbestätigungen hinter den primären Instanzen zurückliegen.
memorystore.googleapis.com/instance/replication/average_offset_diff Durchschnittliche Differenz des Replikationsbestätigungs-Offset (in Byte) für alle Knoten in der Instanz.

Der Replikationsbestätigungs-Offset ist die Anzahl der Byte, die nicht zwischen den Replikaten und ihren primären Instanzen repliziert wurden.
memorystore.googleapis.com/instance/replication/maximum_offset_diff Maximale Replikationsoffset-Abweichung (in Byte) für einen einzelnen Knoten in der Instanz.

Die Replikationsoffset-Abweichung ist die Anzahl der Byte, die nicht zwischen einem Replikat und seinen primären Datenbanken repliziert wurden.
memorystore.googleapis.com/instance/stats/total_net_input_bytes_count Anzahl der eingehenden Netzwerk-Byte, die von den Instanzendpunkten empfangen wurden.
memorystore.googleapis.com/instance/stats/total_net_output_bytes_count Anzahl der ausgehenden Netzwerk-Byte, die von den Instanzendpunkten gesendet wurden.

Messwerte auf Knotenebene

Diese Messwerte bieten detaillierte Informationen zum Status und zur Leistung einzelner Knoten innerhalb 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 Laufzeit des Instanzknotens.
memorystore.googleapis.com/instance/node/stats/connections_received_count Die Anzahl der Clientverbindungen, die Memorystore for Valkey in der letzten Minute auf dem Instanzknoten erstellt hat.
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 Zeit, die für jeden Befehl im Instanzknoten benötigt wird.
memorystore.googleapis.com/instance/node/commandstats/calls_count Die Anzahl der Aufrufe dieses Befehls auf dem Instanzknoten in einer Minute.
memorystore.googleapis.com/instance/node/cpu/utilization Die CPU-Auslastung des Instanzknotens (von 0,0 bis 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 vom Instanzknoten entfernten Schlüssel.
memorystore.googleapis.com/instance/node/keyspace/total_keys Die Anzahl der Schlüssel, die Memorystore for Valkey im Instanzknoten speichert.
memorystore.googleapis.com/instance/node/stats/keyspace_hits_count Die Anzahl der erfolgreichen Lookups von Schlüsseln im Instanzknoten.
memorystore.googleapis.com/instance/node/stats/keyspace_misses_count Die Anzahl der fehlgeschlagenen Lookups von Schlüsseln im Instanzknoten.
memorystore.googleapis.com/instance/node/memory/utilization Die Arbeitsspeicherauslastung des Instanzknotens (von 0,0 bis 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 Netzwerk-Byte, die der Instanzknoten empfängt.
memorystore.googleapis.com/instance/node/stats/net_output_bytes_count Die Anzahl der ausgehenden Netzwerk-Byte, die vom Instanzknoten gesendet werden.
memorystore.googleapis.com/instance/node/replication/offset Die Replikationsoffset-Byte des Instanzknotens.

Messwerte für die regionsübergreifende Replikation

In diesem Abschnitt sind 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-Links zwischen der primären und der sekundären Instanz an. Innerhalb 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 sinkt, gibt dieser Messwert die Anzahl der Shards an, bei der die Replikation zwischen dem Replikator und dem Follower gestoppt wurde. Im Idealfall entspricht dieser Messwert der Shard-Anzahl der primären Instanz.
memorystore.googleapis.com/instance/cross_instance_replication/secondary_maximum_replication_offset_diff Dieser Messwert gibt die maximale Differenz zwischen dem Replikationsoffset des primären und des sekundären Shards an.
memorystore.googleapis.com/instance/cross_instance_replication/secondary_average_replication_offset_diff Dieser Messwert gibt die durchschnittliche Differenz des Replikationsoffsets zwischen dem primären und dem sekundären Shard an.

Sicherungsmesswerte

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 Dauer des letzten Sicherungsvorgangs (in Millisekunden).
memorystore.googleapis.com/instance/backup/last_backup_size Die Größe der letzten Sicherung (in Byte).
memorystore.googleapis.com/instance/import/last_import_start_time Die Startzeit des letzten Importvorgangs.
memorystore.googleapis.com/instance/import/last_import_duration Dauer des letzten Importvorgangs in Millisekunden.

Messwerte zur Persistenz

In diesem Abschnitt werden Messwerte zur Nutzerbindung aufgeführt und Anwendungsfälle für diese Messwerte beschrieben.

Messwerte zur Persistenz von RDB

Messwerte auf Instanzebene

Messwertname Beschreibung
memorystore.googleapis.com/instance/persistence/load_count Die kumulative Anzahl der Ladevorgänge in der Instanz bei AOF- oder RDB-Persistenz.
memorystore.googleapis.com/instance/persistence/rdb_saves_count Die kumulative Anzahl der RDB-Snapshots (auch Speichern genannt), die in Ihrer Instanz erstellt wurden. 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 Verteilungs-Snapshots für alle Knoten in der Instanz. Die Werte der Verteilung sollten eine kürzere Verzögerung (oder dieselbe) wie die Snapshot-Frequenz haben.
memorystore.googleapis.com/instance/persistence/rejected_writes_count Die kumulative Anzahl der verweigerten Schreibbefehle in der Instanz aufgrund eines Fehlers bei der Persistenz.

Messwerte auf Knotenebene

Messwertname Beschreibung
memorystore.googleapis.com/instance/node/persistence/rdb_bgsave_in_progress Auf dem Instanzknoten wird ein RDB BGSAVE ausgeführt. TRUE bedeutet, dass der Speichervorgang läuft.
memorystore.googleapis.com/instance/node/persistence/rdb_last_bgsave_status Ob der letzte BGSAVE auf dem Instanzknoten erfolgreich war. TRUE bedeutet, dass eine erfolgreiche BGSAVE erfolgt. Wenn kein bgrewrite vorkommt, wird der Wert möglicherweise standardmäßig auf TRUE gesetzt.
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 in der RDB-Speicherung, die auf dem Instanzknoten ausgeführt wird.

Messwerte zur AOF-Persistenz

Messwerte auf Instanzebene

Messwertname Beschreibung
memorystore.googleapis.com/instance/persistence/aof_fsync_lags Dieser Messwert gibt die Verteilung der Verzögerung (vom Schreiben der Daten bis zur Synchronisierung mit dem dauerhaften Speicher) für alle Knoten in der Instanz an. Es wird nur für Instanzen mit appendfsync=everysec gesendet. Idealerweise sollten die Werte in der Verteilung eine kürzere Verzögerungszeit (oder dieselbe Zeit) als die AOF-Synchronisationshäufigkeit haben.
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-Umschreibungen 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 keine Schreibvorgänge stattgefunden haben, wird der Wert standardmäßig auf TRUE gesetzt.
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, ist der Standardwert möglicherweise TRUE.
memorystore.googleapis.com/instance/node/persistence/aof_fsync_lag Dieser Messwert gibt die AOF-Verzögerung zwischen Arbeitsspeicher und nichtflüchtigem Speicher im Instanzknoten an. Sie gilt nur für AOF-aktivierte Instanzen, bei denen appendfsync=EVERYSEC
memorystore.googleapis.com/instance/node/persistence/aof_rewrites_count Dieser Messwert gibt die Anzahl der AOF-Überschreibungen im Instanzknoten an. Wenn Sie prüfen möchten, ob AOF-Umschreibungen 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.

Gängige 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.

Anwendungsfälle für Messwerte zur Nutzerbindung

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

Angenommen, Sie stellen eine erhöhte Latenz oder Speichernutzung in Ihrer Instanz oder dem Knoten innerhalb 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-Neuschreiben vorübergehende Lastspitzen auslösen können, können Sie den Messwert aof_rewrites_count prüfen. Dieser gibt die kumulative Anzahl der AOF-Neuschreibungen während der Lebensdauer der Instanz oder des Knotens innerhalb der Instanz an. Angenommen, dieser Messwert zeigt, dass Steigerungen der Anzahl der Neuausschreibungen mit Latenzsteigerungen korrelieren. In diesem Fall können Sie das Problem beheben, indem Sie die Schreibrate verringern oder die Anzahl der Shards erhöhen, um die Häufigkeit der Überschreibungen zu reduzieren.

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

Angenommen, Sie stellen eine erhöhte Latenz oder Speichernutzung in Ihrer Instanz oder dem Knoten innerhalb 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 prüfen. Dieser gibt die kumulative Anzahl der RDB-Speichervorgänge während der Lebensdauer der Instanz oder des Knotens innerhalb der Instanz an. Angenommen, dieser Messwert zeigt, dass Steigerungen bei der Anzahl der RDB-Speichern mit einer Erhöhung der Latenz einhergehen. In diesem Fall können Sie das RDB-Snapshot-Intervall verkürzen, um die Häufigkeit der Überschreibungen zu verringern. Sie können die Instanz auch horizontal skalieren, um die Basislast zu reduzieren.

Messwerte für Memorystore for Valkey auswerten

Wie in der Liste oben zu sehen, sind viele der Messwerte in drei Kategorien unterteilt: „Durchschnitt“, „Maximum“ und „Summe“.

Für Memorystore for Redis bieten wir durchschnittliche und maximale Varianten desselben Messwerts an, damit Sie Hotspots für diese Messwertfamilie identifizieren können.

Der Wert Summe für den Messwert ist unabhängig und bietet eine separate Statistik, die nicht mit dem Hotspot-Ziel von Durchschnitt und Maximum zusammenhängt.

Durchschnittliche und maximale Messwerte

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 gibt es in Ihrer Instanz. Idealerweise sollte der Wert zwischen average_keyspace_hits und maximum_keyspace_hits liegen, da dies bedeutet, dass 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 Hotspots

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

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

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

Wir stellen Messwerte auf Knotenebene bereit, die sich zum Identifizieren von Hotspots innerhalb der Instanz eignen.