单机监控项
监控数据来源
info 命令 (官网 info)
建议监控属性
类型 | 属性 | 描述 |
---|---|---|
Server | 服务器信息 | |
Clients | 客户端信息 | |
connected_clients | 已连接客户端的数量 | |
client_longest_output_list | 当前所有输出缓冲区中队列队形个数的最大值 | |
client_biggest_input_buf | 当前所有输入缓冲区中占用的最大容量 | |
blocked_clients | 正在等待阻塞命令的客户端数量 | |
Memory | 内存信息 | |
used_memory | 由 Redis 分配器分配的内存总量, 以字节 (byte) 为单位 | |
used_memory_human | ||
used_memory_rss | 从操作系统的角度, 返回 Redis 已分配的内存总量 (俗称常驻集大小) | |
used_memory_rss_human | ||
used_memory_peak | ||
used_memory_peak_human | ||
used_memory_peak_perc | ||
used_memory_overhead | ||
used_memory_startup | ||
used_memory_dataset | ||
used_memory_dataset_perc | ||
total_system_memory | ||
total_system_memory_human | ||
used_memory_lua | ||
used_memory_lua_human | ||
maxmemory | ||
maxmemory_human | ||
maxmemory_policy | ||
mem_fragmentation_ratio | used_memory_rss 和 used_memory 之间的比率 | |
mem_allocator | ||
active_defrag_running | ||
lazyfree_pending_objects | ||
Persistence | 持久化信息 | |
loading | 是否在加载持久化文件, 0:否; 1:是 | |
Stats | 全局统计信息 | |
total_commands_processed | 采集周期内执行命令总数 | |
rejected_connections | 采集周期内拒绝连接总数 | |
expired_keys | 采集周期内过期 Key 总数 | |
evicted_keys | 采集周期内踢出 Key 总数 | |
keyspace_hits | 采集周期内 Key 命中总数 | |
keyspace_misses | 采集周期内 Key 拒绝总数 | |
keyspace_hit_ratio | 访问命中率 | |
Replication | 复制信息 | |
CPU | CPU 消耗信息 | |
used_cpu_sys | Redis 服务器耗费的系统 CPU | |
used_cpu_user | Redis 服务器耗费的用户 CPU | |
used_cpu_sys_children | 后台进程耗费的系统 CPU | |
used_cpu_user_children | 后台进程耗费的用户 CPU | |
Commandstats | 命令统计信息 | |
Keyspace | 数据库键统计信息 | |
db0 | ||
db1 | ||
db…N | keys=N,expires=N,avg_ttl=N (单位: 秒) | |
db15 |
内存消耗
重点关注 mem_fragmentation_ratio,
当其值 > 1 时, 说明 used_memory_rss - used_memory 多出的部分被内存碎片消耗掉了
当其值 < 1 时, 一般可能是 Redis 内存交换 (Swap) 到硬盘导致, 也需要关注到
参考
Open-Falcon Redis 监控脚本 redis-monitor
Open-Falcon Redis 监控脚本 redismon
慢查询 SLOWLOG
SLOWLOG GET [N]
例如:
SLOWLOG GET
SLOWLOG GET 100
...
redis-cli –stat 实时统计
redis-cli --stat
keys | mem | clients | blocked | requests | connections |
---|---|---|---|---|---|
0 | 807.92K | 1 | 0 | 4769 (+0) | 4 |
0 | 807.92K | 1 | 0 | 4770 (+1) | 4 |
0 | 807.92K | 1 | 0 | 4771 (+1) | 4 |
0 | 807.92K | 1 | 0 | 4772 (+1) | 4 |
redis-cli –bigkeys 采样分析大对象
redis-cli --bigkeys
该命令使用 scan 命令对 Redis 的键采样分析, 从中统计分析找到内存占用比较大的键值.
更多监控等待挖掘…
**持久化阻塞**
**连接拒绝**
**命中率**
**CPU**
**内存**
**网络**
**磁盘**
**等等**