DBAtlas · Atlas für Datenbankbetrieb

Löschungen und Ablauf von Keys mit Keyspace Notifications überwachen

RedisWartung

Befehl

CONFIG GET notify-keyspace-events
# E: keyevent channel, x: expire events, g: generic commands (DEL, EXPIRE, RENAME):
CONFIG SET notify-keyspace-events Exg
# Listen to expire and del events in db 0:
redis-cli -h redis1 -p 6379 --csv PSUBSCRIBE '__keyevent@0__:expired' '__keyevent@0__:del'
# Turn off:
CONFIG SET notify-keyspace-events ""

Was es tut

Veröffentlicht Ereignisse zu Keys (expire, del, set usw.) in Pub/Sub-Kanälen, sodass du live verfolgen kannst, welcher Key wann gelöscht wurde oder abgelaufen ist.

Wann einsetzen

Um nachzuweisen, welcher Befehl oder Ablauf Keys entfernt, wenn sie 'von selbst verschwinden', oder um Abläufe zu versorgen, die von Ablauf-Events abhängen (Session-Ende).

Vorsicht

Events erzeugen CPU- und Netzwerklast; 'A' (alle Klassen) ist auf ausgelasteten Systemen besonders teuer, aktiviere daher nur die benötigten Klassen und schalte sie danach ab. Pub/Sub ist Fire-and-Forget: Ein nicht verbundener Subscriber verpasst das Event, und nichts wird gespeichert. Das Event expired wird erzeugt, wenn der Key tatsächlich gelöscht wird (beim Zugriff oder durch den Expire-Zyklus im Hintergrund), nicht zum TTL-Zeitpunkt.

In DBAtlas öffnen →

Verwandte Einträge