Labsco
redis logo

redis-observability

✓ Official82

by redis · part of redis/agent-skills

Redis observability guidance — which metrics to monitor (memory, connections, hit ratio, ops/sec, rejected connections), which built-in commands to reach for during incident triage (SLOWLOG, INFO, MEMORY DOCTOR, CLIENT LIST, FT.PROFILE), and when to use the Redis Insight GUI. Use when setting up monitoring or alerts for a Redis instance, diagnosing a performance regression, profiling a slow FT.SEARCH query, or wiring Redis metrics into Prometheus, Datadog, or similar.

🧩 One of 7 skills in the redis/agent-skills package — works on its own, and pairs well with its siblings.

This is the playbook your agent receives when the skill activates — you don't need to read it to use the skill, but it's here to audit before installing.

Redis Observability

What to watch, what to run, and what to alert on. Covers the metrics every Redis deployment should monitor and the built-in commands for ad-hoc diagnosis.

When to apply

  • Setting up monitoring or alerts for a Redis instance.
  • Diagnosing a Redis performance regression (high latency, memory pressure, connection storms).
  • Profiling a slow FT.SEARCH or pipeline.
  • Wiring Redis metrics into Prometheus, Datadog, CloudWatch, or similar.

1. Monitor these metrics

These come from INFO and should be exported to your monitoring system.

MetricWhat it tells youAlert when
used_memoryCurrent memory usage> 80% of maxmemory
connected_clientsOpen connectionsSudden spikes or drops
blocked_clientsClients waiting on blocking ops> 0 sustained
instantaneous_ops_per_secCurrent throughputSignificant drops
keyspace_hits / keyspace_missesCache hit ratioHit ratio < 80%
rejected_connectionsHit maxclients cap> 0
rdb_last_save_timeLast persistence snapshotToo old vs. RPO
info = redis.info()
hit_ratio = info["keyspace_hits"] / max(1, info["keyspace_hits"] + info["keyspace_misses"])
print(f"Memory:    {info['used_memory_human']}")
print(f"Clients:   {info['connected_clients']}")
print(f"Ops/sec:   {info['instantaneous_ops_per_sec']}")
print(f"Hit ratio: {hit_ratio:.1%}")

See references/metrics.md.

2. Built-in commands for debugging

Reach for these when something looks off.

TopicCommand
Slow commandsSLOWLOG GET 10 / SLOWLOG LEN / SLOWLOG RESET
Server snapshotINFO all (or INFO memory / INFO stats / INFO clients / INFO replication)
Memory diagnosticsMEMORY DOCTOR / MEMORY STATS / MEMORY USAGE <key>
ConnectionsCLIENT LIST / CLIENT INFO
RQE / SearchFT.INFO <idx> / FT.PROFILE <idx> SEARCH QUERY "..."

The two most useful for incident triage:

  • SLOWLOG GET to find queries that exceeded the slowlog-log-slower-than threshold (10ms by default). The output shows the exact command and duration in microseconds.
  • MEMORY DOCTOR for memory pressure — it returns a one-paragraph summary of what's unusual about memory usage right now.
for entry in redis.slowlog_get(10):
    print(f"{entry['duration']}μs  {entry['command']}")

See references/commands.md.

3. Redis Insight

For interactive use (running queries, browsing keys, profiling indexes), Redis Insight is the official GUI. It surfaces the same SLOWLOG / INFO / FT.PROFILE data visually and includes Redis Copilot for natural-language queries. Useful during development and incident response; not a replacement for exporting metrics to your monitoring system.

References