Why you should not use MONITOR in production
MONITOR streams every command Redis runs to the connected client. It is useful for a few minutes of debugging — and dangerous as a standing production habit. Official Redis benchmarks show a single MONITOR client can reduce throughput by more than 50%.
What MONITOR actually costs
Redis must format and send every command to MONITOR clients. Under load that competes with serving your app.
Arguments are visible on the wire — sessions, tokens, and PII can leak into the MONITOR stream (AUTH is redacted; most other args are not).
More MONITOR clients make the hit worse. Leaving it running overnight is a self-inflicted outage pattern.
KEYS vs SCAN (same class of footgun)
KEYS walks the whole keyspace and blocks the event loop until it finishes — fine on a toy DB, hostile on production cardinality.
SCAN, HSCAN, SSCAN, and ZSCAN are incremental. Still rate-limit them under load; Baltan’s agent bounds SCAN so diagnosis does not become another incident.
If you are hunting key names for TTL coverage or big keys, prefer SCAN + MEMORY USAGE over KEYS * or MONITOR.
Safer tools than MONITOR
SLOWLOG — commands that exceeded your latency threshold, without streaming the whole workload.
Latency monitoring / LATENCY DOCTOR — spike analysis with near-zero overhead when configured thoughtfully.
INFO memory/stats + bounded SCAN / MEMORY USAGE — structure and size signals without dumping values.
How Baltan observes Redis instead
Baltan never runs MONITOR. The agent is a periodic read-only sidecar: INFO, SLOWLOG, CLIENT LIST, MEMORY, rate-limited SCAN.
You get health, findings, and “Why is Redis slow?” from evidence — without opening 6379 to the internet and without reading key values.
That is the observability posture Redis’s own docs push toward: targeted debugging tools, not a permanent command tap.
FAQ
Is Redis MONITOR ever OK?
Short, intentional debugging on a non-critical instance can be fine. Leaving MONITOR connected to a busy primary is how teams create their own outage.
What should I use instead of MONITOR?
SLOWLOG for expensive commands, INFO for memory and stats, and rate-limited SCAN / MEMORY USAGE for key shape — or a read-only agent that packages those safely.
Is KEYS safer than MONITOR?
No. KEYS is another production latency footgun. Use SCAN (and the hash/set/zset variants) instead.