Skip to main content

Redis Monitoring

Redis gets its own view in the Databases module, built around what actually matters for an in-memory key-value store: keyspace and hit ratio, per-command latency, memory and fragmentation, and replication. These are questions a relational "top queries" view can't answer — so Redis has a purpose-built flow.

Open Databases in the sidebar and switch to the Redis tab.

Redis tab — instances with role, keyspace size, hit ratio, and operation rates


The Redis instance list​

The Redis tab lists every monitored instance with key-value-native signals:

ColumnWhat it shows
INSTANCEInstance name, with a Redis icon and ip:port · N nodes subtext
AVAILABILITYUp / Down live status
ROLEmaster / replica
TYPEStandalone / Cluster / Sentinel
OPERATIONS — QUERIES /sCommands per second
OPERATIONS — READS /sRead commands per second
OPERATIONS — WRITES /sWrite commands per second
KEYSPACE — KEYSTotal keys held
KEYSPACE — HIT RATIOShare of key lookups served from memory
CONNECTIONS — USED / AVAILABLE / TOTALClient connection state
RESOURCES — USED MEM / USED CPUMemory and CPU utilisation

Use the Search Instances by Name box to find an instance, then click a row to open it.

Hit ratio is the headline

For a cache, HIT RATIO is the single most important number on this list. A ratio that drops means more requests are missing the cache and falling through to your primary datastore — often the first visible sign of an eviction or memory-pressure problem.


Instance detail​

Opening an instance shows a breadcrumb of Databases › Redis › instance with quick badges for role, type, and version (e.g. master · standalone · v7.2.4), and four tabs:


Overview​

Redis Overview — headline KPIs and keyspace / client charts

The Overview tab is the instance's health at a glance. Seven KPI cards sit across the top:

CardWhat it tells you
Ops / secTotal commands per second
Hit RatioShare of lookups served from memory
Memory UsedCurrent memory footprint
CPU UsageCPU utilisation
ClientsConnected clients
KeysTotal keys held
P99 Cmd99th-percentile command latency

Below the cards, a set of live stat charts tracks the instance's behaviour over the window — the fastest way to see how a number got to where it is, not just its current value:

ChartWhat it plots
Throughput (ops/sec)Commands processed over time
Memory (used / rss / peak)Logical usage, OS-resident memory, and the high-water mark together
CPU Usage (%)Split into user and sys
Keyspace (hits/s · misses/s)Cache hits against misses — the shape of your hit ratio
Clients (connected / blocked)Client count and how many are blocked waiting
Network I/O (kbps)Bytes in and out
These charts are the "why" behind the KPIs

The cards tell you what the instance looks like right now; these charts tell you how it got there. A hit ratio that reads 100% but whose Keyspace chart shows a rising misses line is trending the wrong way — you'd never see that from the card alone.


Performance​

Redis Performance — top commands by latency and the slow log

The Performance tab is where you find which commands cost you. KPI cards summarise throughput and slow-command pressure — Total Processed, Reads / Writes, Errors, Slow entries, Slow p95, and Slow max — over two detailed tables.

Top Commands — every command type, ranked:

ColumnWhat it shows
COMMANDThe Redis command (GET, HSET, EXPIRE, …)
CALLSHow many times it was called in the window
PER CALLMean time per call
P50Median command latency
P9999th-percentile command latency
SHAREThis command's share of total command time

Slow Log — individual slow commands captured by Redis:

ColumnWhat it shows
IDSlow-log entry ID
COMMANDThe exact command that ran slowly
DURATIONHow long it took — sortable, and colour-coded by severity so the worst offenders stand out at a glance
CLIENT ADDRThe client that issued it
WHENWhen it happened

Sort by DURATION to bring the slowest commands to the top — the colour coding (faster → slower) makes the outliers obvious without reading the numbers. Use the Search command / client box to filter to a specific command or client, and export the slow log to CSV to share or attach to an incident.

Latency vs share

A command with a high P99 but low SHARE hurts a few requests badly; one with a moderate P99 but high SHARE is quietly dominating your Redis time budget. Optimise the high-SHARE commands first for the biggest overall win.


Data & Memory​

Redis Data & Memory — memory breakdown, allocator internals, and per-DB keyspace

The Data & Memory tab explains where memory is going and how the keyspace is structured — the two things that decide whether Redis stays fast or starts evicting. Six cards head the tab: Memory Used, Frag Ratio, Total Keys, Hit Ratio, Expired, and Evicted.

Memory panel — a breakdown of what's consuming memory:

  • Used / RSS / Peak — logical usage, OS-resident memory, and the high-water mark
  • Dataset — memory holding your actual data
  • Overhead / Startup — Redis's own bookkeeping
  • Replication buffers — memory backing replication
  • Clients (normal / replica) — memory held by client buffers
  • Lua / Functions / Scripts — memory used by server-side scripting

Allocator panel — the memory allocator's own view:

  • Allocator active / allocated / resident
  • Frag ratio / bytes — fragmentation, the classic cause of "used memory looks fine but RSS is huge"
  • RSS overhead ratio
  • Active defrag — whether online defragmentation is active or idle

Keyspace table — per logical database:

ColumnWhat it shows
DBLogical database number
KEYSKeys in that database
WITH EXPIRYKeys that carry a TTL
PERSIST %Share of keys with no expiry
AVG TTLAverage time-to-live

A Summary panel rounds it out with keys-with-expiry, persisted keys, expired subkeys, and Pub/Sub channel / pattern / client counts.

Reading a fragmentation problem

If Frag Ratio is well above 1.0 while Memory Used looks reasonable, the OS is holding far more memory than your data needs. That's fragmentation — and it's exactly what Active defrag exists to reclaim.


Replication​

Redis Replication — replica table, master offsets, and sync state

The Replication tab answers "are my replicas keeping up?" Four cards head it — Role, Connected Replicas, Repl Offset Lag, and Backlog.

Replicas table — one row per connected replica:

ColumnWhat it shows
REPLICAReplica address
STATEReplication state
OFFSETReplica's replication offset
LAGHow far behind the master it is
LAST ACKTime since the replica last acknowledged

Two supporting panels add the master's perspective:

  • Master — master replication offset, backlog size / histlen, backlog first-byte offset, and replication I/O (in / out).
  • Sync — full syncs, partial syncs (ok / err), master link state, and whether a sync is in progress.
The replication detail only appears with replicas connected

The Replicas table and the Master / Sync panels — including the master link state — are only shown when the instance actually has replicas attached. A standalone instance with none shows a clear "No replicas connected" state instead of empty tables, so an unattached instance never looks like a broken one.

Partial vs full syncs

A healthy replication setup resyncs partially — cheaply catching up from the backlog. A rising full syncs count means replicas are falling out of the backlog window and doing expensive full resyncs, which is worth investigating (often a backlog sized too small for the write rate).


Common workflows​

"Redis latency spiked"​

  1. Open the instance → Performance.
  2. Scan Top Commands by P99 and SHARE — a single command usually stands out.
  3. Check the Slow Log for individual slow commands and the CLIENT ADDR issuing them.

"We're seeing evictions / cache misses"​

  1. Open Data & Memory and compare Memory Used against the instance's max memory.
  2. Check Evicted and Expired, and the Keyspace table's PERSIST % — a large persistent keyspace with no TTLs is a common cause of memory pressure.
  3. If Frag Ratio is high, fragmentation (not data) is consuming RSS — see the Allocator panel.

"A replica looks behind"​

  1. Open Replication and check the replica's LAG and LAST ACK.
  2. Compare the master OFFSET with each replica's OFFSET in the table.
  3. A climbing full syncs count in the Sync panel points at a backlog too small for the write rate.

Next steps​