Tak jak wspomniana druga odpowiedź, nie ma takiego powiadomienia.
W końcu Powiadomienie o przestrzeni klawiszy to powiadomienie o zdarzeniach na jednym klawiszu . Każde powiadomienie jest powiązane z kluczem. Dla keyspace
zdarzenie, nazwa klucza jest częścią nazwy kanału. Dla keyevent
zdarzenie, nazwa klucza to wiadomość.
PUBLISH [email protected]__:key_name comamnd
PUBLISH [email protected]__:command key_name
Każde polecenie, które wysyła powiadomienie, musi mieć jako argument klucz. np. del key
, set key val
. Jednak flushdb
polecenie nie ma klucza jako argumentu. Polecenie nie wpływa na pojedynczy klawisz. Zamiast tego usuwa wszystkie klucze z bazy danych. Więc nie ma takiego powiadomienia. W przeciwnym razie czego oczekujesz od kanału? Wszystkie klucze, które zostały usunięte? To nie jest dobry pomysł.
Możesz jednak zasymulować zdarzenie dla flushdb
- ustaw specjalny klucz, np.
flushdb-event
:set flushdb-event 0
- subskrybuj na odpowiednim kanale:
subscribe [email protected]__:flushdb-event
- ustaw specjalny klawisz przed wywołaniem
flushdb
:set flushdb-event 1
W ten sposób możesz uzyskać symulowaną flushdb
powiadomienie.