mcpField
R
redis-observability

redis-observability

github.com/redis云与 DevOps1712.3k 次安装7 周前更新
代码仓库

关于 redis-observability

redis-observability 是面向 Redis 运维与开发人员的监控和诊断指南,汇总需关注的指标、告警条件及内置排查命令。

主要功能

  1. 01整理 Redis 关键监控指标
  2. 02给出指标告警条件
  3. 03汇总内置诊断命令
  4. 04涵盖慢查询与内存排查
  5. 05介绍 Redis Insight 的交互式诊断

适用场景

  1. 01为 Redis 实例配置监控与告警
  2. 02排查延迟、内存或连接问题
  3. 03分析 FT.SEARCH 或管道性能
  4. 04将 Redis 指标接入监控系统

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/redis/agent-skills --skill redis-observability

安装后在 Claude Code 中输入/redis-observability确认已加载。

附带文件references/commands.mdreferences/metrics.md

详细介绍

Redis 可观测性

要监控什么、要运行什么,以及要对什么告警。涵盖每个 Redis 部署都应监控的指标,以及用于临时诊断的内置命令。

适用场景

  • 为 Redis 实例设置监控或告警。
  • 诊断 Redis 性能回退(高延迟、内存压力、连接风暴)。
  • 分析缓慢的 FT.SEARCH 或流水线。
  • 将 Redis 指标接入 Prometheus、Datadog、CloudWatch 或类似系统。

1. 监控这些指标

这些指标来自 INFO,应导出到监控系统。

指标含义告警条件
used_memory当前内存用量> maxmemory 的 80%
connected_clients开放的连接数突增或骤降
blocked_clients等待阻塞操作的客户端数持续 > 0
instantaneous_ops_per_sec当前吞吐量显著下降
keyspace_hits / keyspace_misses缓存命中率命中率 < 80%
rejected_connections达到 maxclients 上限> 0
rdb_last_save_time上次持久化快照的时间相对于 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%}")

参见 references/metrics.md。

2. 用于调试的内置命令

发现异常时,可以使用这些命令。

主题命令
慢命令SLOWLOG GET 10 / SLOWLOG LEN / SLOWLOG RESET
服务器快照INFO all(或 INFO memory / INFO stats / INFO clients / INFO replication)
内存诊断MEMORY DOCTOR / MEMORY STATS / MEMORY USAGE <key>
连接CLIENT LIST / CLIENT INFO
RQE / SearchFT.INFO <idx> / FT.PROFILE <idx> SEARCH QUERY "..."

事件排查时最有用的两个命令:

  • SLOWLOG GET:查找执行时间超过 slowlog-log-slower-than 阈值(默认 10ms)的查询。输出会显示确切的命令及其耗时(微秒)。
  • MEMORY DOCTOR:用于排查内存压力,会用一段简短说明总结当前内存用量的异常之处。
for entry in redis.slowlog_get(10):
    print(f"{entry['duration']}μs  {entry['command']}")

参见 references/commands.md。

3. Redis Insight

对于交互式使用(运行查询、浏览键、分析索引),Redis Insight 是官方 GUI。它会以可视化方式呈现相同的 SLOWLOG / INFO / FT.PROFILE 数据,并包含用于自然语言查询的 Redis Copilot。它适用于开发和事件响应,但不能替代将指标导出到监控系统。

参考资料

评论

支持 Markdown