Surveiller les événements de suppression et d'expiration de clés avec les keyspace notifications
RedisMaintenanceCommande
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 ""Ce que fait la commande
Publie les événements sur les clés (expire, del, set, etc.) dans des canaux pub/sub pour observer en direct quelle clé a été supprimée ou a expiré et quand.
Quand l'utiliser
Pour prouver quelle commande ou expiration supprime des clés quand elles « disparaissent toutes seules », ou pour alimenter des workflows qui dépendent des événements d'expiration (fermeture de session).
Attention
Les événements ajoutent une charge CPU et réseau ; 'A' (toutes les classes) est particulièrement coûteux sur les systèmes chargés, activez donc uniquement les classes nécessaires et désactivez-les ensuite. Le pub/sub est fire-and-forget : un abonné non connecté manque l'événement, et rien n'est persisté. L'événement expired est généré quand la clé est réellement supprimée (à l'accès ou par le cycle d'expiration en arrière-plan), pas au moment du TTL.