首页/数据/Redis 进阶速查/从日志定位问题的顺序
性能与排障129 条

从日志定位问题的顺序

Redis 日志(logfile 配置路径)按时间线记录启动、持久化、复制与警告;排查时先看告警行(# 标记),再回溯上下文,与指标时间轴对齐。

Redis 进阶速查数据更新于 2026-10-13

从日志定位问题的方法

Redis 日志由 logfile 指定路径(未配置时输出到标准输出,容器环境里很常见),按时间线记录启动、持久化、主从复制与各类告警。排查时先看带警告标记的行,再回溯上下文,然后把日志时间与监控指标对齐,才能还原完整的事件顺序。

基本信息

位置logfile 配置的路径,未配置则输出到标准输出
重点内容告警行、持久化事件、复制状态变化
日志级别loglevel 可选 debug、verbose、notice、warning
轮转Redis 自身不做日志轮转,需要系统侧配合
使用方式按时间定位事件,再与指标和变更记录对齐

典型使用场景

  • 启动异常:端口占用、配置项无效、内存相关警告都在启动阶段出现
  • 持久化问题:保存失败与后台重写的起止都有明确记录
  • 复制异常:全量同步、断连与重连在日志里按顺序出现
  • 内存告警:启动时关于内存超额提交与透明大页的提示
  • 性能事件:把后台任务时间点与延迟曲线对照
  • 变更追溯:配置改动时间与变更记录互相印证

定位手法

定位手法
redis-cli CONFIG GET logfile                 # 日志输出位置(空表示标准输出)
redis-cli CONFIG GET loglevel                # 当前日志级别
grep -E 'WARNING|^[0-9]+:M ' /var/log/redis/redis-server.log | tail -20  # 先看告警行
grep -E 'Background saving|Ready to accept|REPLICA sync' /var/log/redis/redis-server.log | tail  # 关键状态行
tail -f /var/log/redis/redis-server.log      # 排查期临时跟踪现场
redis-cli INFO persistence                   # 与日志中的持久化事件对照
redis-cli INFO replication                   # 与日志中的复制事件对照

关键日志行

日志内容含义排查方向
Ready to accept connections实例启动完成确认启动时间与配置加载结果
WARNING overcommit_memory is set to 0内存超额提交未开启后台保存可能失败或被拒绝
Background saving startedRDB 保存开始与延迟尖峰时间点对照
REPLICA sync started开始主从同步判断是全量还是部分重同步
Can't save in background后台保存失败检查磁盘空间与权限
日志和指标要成对使用:日志给出事件与原因,指标给出数量与趋势,只看一边很难确认影响范围。
Redis 不负责日志轮转:长期运行要配置系统侧的轮转策略,否则磁盘被慢慢写满,排查时反而制造新的故障。

易错点

  • 只看日志不看指标,现象链条断裂,无法判断影响面
  • 轮转策略设置不合理,关键时间窗的记录被覆盖,事后无从追溯
  • 把日志级别长期设为 debug,磁盘 I/O 与存储占用明显上升
  • 容器里日志输出到标准输出却没接采集,实例重启后记录全部丢失

数据来源与参考

  • Redis 官方文档:日志与排查
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌