LATENCY-HISTOGRAM(3valkey)
π LATENCY-HISTOGRAM(3valkey) π
okay bestie, we're in the Valkey Command Manual (section 3valkey) and today's main character is latency-histogram π
β¨ NAME β¨
latency-histogram β returns the cumulative distribution of latencies of a subset or all commands. fr fr, that's the whole vibe.
πΈ SYNOPSIS πΈ
LATENCY HISTOGRAM COMMAND [COMMAND...]
π¦ DESCRIPTION π¦
LATENCY HISTOGRAM hands you a cumulative distribution of commands' latencies, but make it histogram format. it's giving data visualization but in your terminal π
By default, you get all the available latency histograms back. but you can filter the reply by naming specific commands, so you're not drowning in numbers you didn't ask for.
Every histogram comes with these fields, no cap:
- the Command name
- the total calls for that command
- a map of time buckets, and here's the tea on those:
- each bucket is a latency range
- each bucket covers twice the previous bucket's range (yes, it doubles, growth mindset β¨)
- empty buckets are excluded from the reply, so no filler
- the tracked latencies live between 1 microsecond and roughly 1 second
- everything above 1 second counts as +Inf
- at max, there will be
log2(1,000,000,000)=30buckets
β οΈ This command requires the extended latency monitoring feature to be enabled, which is the default. If you need to enable it, callvalkey-config-set(7)CONFIG SET latency-tracking yes.
and if you wanna delete the latency histograms' data, that's valkey-config-resetstat(7) CONFIG RESETSTAT. bye bye data π
π REPLY π
RESP2
valkey-protocol(7) Array reply: a map where each key is a command name, and each value is a map with the total calls, and an inner map of the histogram time buckets.
RESP3
valkey-protocol(7) Map reply: a map where each key is a command name, and each value is a map with the total calls, and an inner map of the histogram time buckets.
(yes they're the same description, RESP2 vs RESP3 is just the shape of the container, iconic behavior π)
π₯ COMPLEXITY π₯
O(N) where N is the number of commands with latency information being retrieved. linear, not scary, we love that for us.
π ACL CATEGORIES π
@admin @dangerous @slow
(so likeβ¦ she's powerful. she's dangerous. she's slow. main character energy π )
β HISTORY β
- Available since: 7.0.0
π EXAMPLES π
127.0.0.1:6379> LATENCY HISTOGRAM set
1# "set" =>
1# "calls" => (integer) 100000
2# "histogram_usec" =>
1# (integer) 1 => (integer) 99583
2# (integer) 2 => (integer) 99852
3# (integer) 4 => (integer) 99914
4# (integer) 8 => (integer) 99940
5# (integer) 16 => (integer) 99968
6# (integer) 33 => (integer) 100000
look at those doubling bucket keys β 1, 2, 4, 8, 16, 33 β she's literally built different π§
π SEE ALSO π
acl(3valkey), acl-cat(3valkey), acl-deluser(3valkey), acl-dryrun(3valkey), acl-genpass(3valkey), acl-getuser(3valkey), acl-help(3valkey), acl-list(3valkey), acl-load(3valkey), acl-log(3valkey), acl-save(3valkey), acl-setuser(3valkey), acl-users(3valkey), acl-whoami(3valkey), bgrewriteaof(3valkey), bgsave(3valkey), command(3valkey), command-count(3valkey), command-docs(3valkey), command-getkeys(3valkey), command-getkeysandflags(3valkey), command-help(3valkey), command-info(3valkey), command-list(3valkey), commandlog(3valkey), commandlog-get(3valkey), commandlog-help(3valkey), commandlog-len(3valkey), commandlog-reset(3valkey), config(3valkey), config-get(3valkey), config-help(3valkey), config-resetstat(3valkey), config-rewrite(3valkey), config-set(3valkey), dbsize(3valkey), debug(3valkey), failover(3valkey), flushall(3valkey), flushdb(3valkey), info(3valkey), lastsave(3valkey), latency(3valkey), latency-doctor(3valkey), latency-graph(3valkey), latency-help(3valkey), latency-history(3valkey), latency-latest(3valkey), latency-reset(3valkey), lolwut(3valkey), memory(3valkey), memory-doctor(3valkey), memory-help(3valkey), memory-malloc-stats(3valkey), memory-purge(3valkey), memory-stats(3valkey), memory-usage(3valkey), module(3valkey), module-help(3valkey), module-list(3valkey), module-load(3valkey), module-loadex(3valkey), module-unload(3valkey), monitor(3valkey), psync(3valkey), replconf(3valkey), replicaof(3valkey), restore-asking(3valkey), role(3valkey), save(3valkey), shutdown(3valkey), slowlog(3valkey), slowlog-get(3valkey), slowlog-help(3valkey), slowlog-len(3valkey), slowlog-reset(3valkey), swapdb(3valkey), sync(3valkey), time(3valkey)
and that's the whole page bestie π«Ά this one's from version 9.0.0, dated 2025-10-21 β go forth and histogram your latencies, you absolute legend πβ¨
π¦ where this page comes from
- fedora 44: valkey-doc 9.0.3-2.fc44 Β· CC-BY-SA-4.0
- fedora 44: valkey-doc 9.0.6-1.fc44 Β· CC-BY-SA-4.0
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms