HOTKEYS
热键跟踪命令的容器。
语法
HOTKEYS
引入版本:8.6.0
复杂度摘要:—
这是热键跟踪命令的容器命令,提供了一种在指定跟踪时间段内识别 Redis 服务器内热键的方法。
此上下文中的热键由两个指标定义: * 跟踪期间花在该键上的 CPU 时间占总时间的百分比。 * 跟踪期间 Redis 使用的网络字节总数中用于键的网络字节(输入 + 输出)的百分比。
使用
一般工作流程是用户启动应该运行一段时间的热键跟踪过程。键的指标记录在概率数据结构内,之后用户就可以获取前 K 个指标。
可用子命令:
HOTKEYS START- 启动指定指标的热键跟踪。HOTKEYS STOP- 停止热键跟踪但保留数据。HOTKEYS GET- 返回跟踪结果和元数据。HOTKEYS RESET- 释放用于跟踪的资源。
示例
以下示例通过 CPU 时间和网络字节来跟踪键,在跟踪处于活动状态时读取结果,然后停止跟踪并释放其资源。
redis-py 和 go-redis 集群客户端以及 redis-rs 异步集群连接不支持 HOTKEYS。使用这些客户端,可以直接连接到单个节点。
> HOTKEYS START METRICS 2 CPU NET COUNT 10
OK
> GET product:1
"Laptop"
> GET product:1
"Laptop"
> GET product:2
"Phone"
> HOTKEYS GET
1) 1) "tracking-active"
2) (integer) 1
3) "sample-ratio"
4) (integer) 1
5) "selected-slots"
6) 1) 1) (integer) 0
2) (integer) 16383
7) "all-commands-all-slots-us"
8) (integer) 27
9) "net-bytes-all-commands-all-slots"
10) (integer) 119
11) "collection-start-time-unix-ms"
12) (integer) 1791553768375
13) "collection-duration-ms"
14) (integer) 44
15) "total-cpu-time-user-ms"
16) (integer) 2
17) "total-cpu-time-sys-ms"
18) (integer) 0
19) "total-net-bytes"
20) (integer) 119
21) "by-cpu-time-us"
22) 1) "product:1"
2) (integer) 24
3) "product:2"
4) (integer) 3
23) "by-net-bytes"
24) 1) "product:1"
2) (integer) 80
3) "product:2"
4) (integer) 39
> HOTKEYS STOP
OK
> HOTKEYS RESET
OK
资料来源:Redis 官方 HOTKEYS 文档;中文内容参考 Redis 文档许可。