Holen Sie sich den vollständigen letzten Befehl des Clients (einschließlich Schlüssel) von Redis

416
Jeremiah

Die Client-Liste von Redis gibt Ihnen den letzten vom Client ausgegebenen Befehl. Sie erhalten nicht den Schlüssel, auf dem der letzte Befehl ausgegeben wurde. Was ich möchte, ist der Listenschlüssel, den ein Kunde ausführt BLPOP.

Gibt es eine Möglichkeit, dies zu bekommen?

0

1 Antwort auf die Frage

1
Itamar Haber

Obwohl es eine gute introspektive Funktionalität wäre, gibt es sie in Redis ATM nicht. Stattdessen können Sie versuchen, den Befehl während des Fluges abzufangen, um zu verstehen, was Ihr Kunde tut.

Die unkomplizierte Art und Weise, dies zu tun, ist MONITOR(von einer anderen Verbindung) auszuführen, bevor der Client den BLPOPBefehl ausgibt, um diese Informationen abzurufen. Beachten Sie, dass dies MONITORAuswirkungen auf die Leistung hat, so dass Sie dies in der Produktion unterlassen sollten.

Ich hatte Angst davor. Danke für Ihre Antwort! Ich erwäge auch, neben dem Push-Befehl eine pub / sub-Nachricht hinzuzufügen, um die Protokollierung / Überwachung zu verbessern. Jeremiah vor 8 Jahren 0