Ubuntu Redis日志如何查看与分析
导读:Ubuntu Redis 日志查看与分析 一 定位日志位置 常见路径与目录 配置文件:/etc/redis/redis.conf 日志文件:/var/log/redis/redis-server.log 数据目录:/var/lib/re...
Ubuntu Redis 日志查看与分析
一 定位日志位置
- 常见路径与目录
- 配置文件:/etc/redis/redis.conf
- 日志文件:/var/log/redis/redis-server.log
- 数据目录:/var/lib/redis/
- 服务单元:常见为 redis.service(使用 systemd 管理)
- 如何确认你的实例的实际配置
- 查看服务启动参数,确认配置文件路径:
- 命令:
systemctl cat redis.service | grep ExecStart
- 命令:
- 在配置文件中查找日志路径与日志级别:
- 命令:
grep -E '^(logfile|loglevel)' /etc/redis/redis.conf
- 命令:
- 查看服务启动参数,确认配置文件路径:
- 系统差异与历史版本
- Ubuntu 14.04 上常见日志为:/var/log/redis/redis-server.log 或 /var/log/redis_6379.log
- 部分一键安装或自定义端口可能使用:/var/log/redis/redis_6379.log
- 若仍找不到,可全盘搜索日志文件:
- 命令:
sudo find /var/log -name "*redis*"或sudo find / -path /sys -prune -o -path /proc -prune -o -name "*redis*"
- 命令:
二 查看与检索日志
- 实时查看
- 命令:
sudo tail -f /var/log/redis/redis-server.log
- 命令:
- 分页与检索
- 分页查看:
sudo less /var/log/redis/redis-server.log - 检索关键字:在 less 中按 / 输入关键字(如 ERROR、Warning、OOM、maxmemory),按 n/N 跳转
- 分页查看:
- 历史轮转文件
- 列表:
ls -lh /var/log/redis/ - 解压查看:
sudo gunzip /var/log/redis/redis-server.log.1.gz & & sudo tail /var/log/redis/redis-server.log.1
- 列表:
- 结合 systemd 查看服务日志(适用于 Ubuntu 15.04+)
- 命令:
sudo journalctl -u redis.service -f(实时),或sudo journalctl -u redis.service --since "2025-12-22 00:00:00"(按时间)
- 命令:
三 日志级别与输出方式
- 支持的日志级别(由低到高)
- debug、verbose、notice、warning
- 生产常用:notice;排障可临时提升到 debug/verbose
- 查看与修改
- 配置文件方式:编辑 /etc/redis/redis.conf
- 示例:
loglevel notice(默认),或loglevel debug(排障时) - 修改后重启:
sudo systemctl restart redis.service
- 示例:
- 动态方式(无需重启):
redis-cli CONFIG SET loglevel verbose
- 配置文件方式:编辑 /etc/redis/redis.conf
- 输出目的地
- 文件输出由 logfile 指定;若未显式配置,可能仅写入 journald(此时用
journalctl -u redis.service查看更完整)
- 文件输出由 logfile 指定;若未显式配置,可能仅写入 journald(此时用
四 常见故障与日志分析要点
- 启动失败
- 关键词:Error: Cannot bind to IP address
- 检查项:配置中的 bind 地址、端口是否被占用(
ss -lntp | grep 6379)、是否已有实例占用
- 内存与逐出策略
- 关键词:OOM command not allowed when used memory > ‘maxmemory’
- 检查项:配置 maxmemory 与 maxmemory-policy(如 allkeys-lru、volatile-lru)
- 持久化异常
- 关键词:Background save started by pid …、RDB: …: Invalid RDB format
- 检查项:磁盘空间、目录权限(/var/lib/redis)、RDB/AOF 配置与文件系统健康
- 复制与集群
- 关键词:Replication backlog created、Error condition on socket for SYNC: Connection refused
- 检查项:主从网络连通性、认证、复制偏移与复制槽位状态
- 慢查询
- 关键词:Slow query(若已开启慢查询日志)
- 检查项:慢查询阈值 slowlog-log-slower-than、慢日志长度 slowlog-max-len,结合业务优化命令与索引/结构
五 高效分析的小技巧
- 快速定位当天错误:
sudo grep -i -E 'error|warning|fail|oom' /var/log/redis/redis-server.log | tail -50 - 按时间窗口查看:
sudo journalctl -u redis.service --since "2025-12-22 10:00:00" --until "2025-12-22 12:00:00" - 解压并分析历史轮转:
sudo gunzip -c /var/log/redis/redis-server.log.1.gz | grep -i 'error' | head - 实时监控命令流量(辅助定位问题来源):
redis-cli monitor(仅在排障时短时开启,避免性能影响) - 变更日志级别后验证:
redis-cli CONFIG GET loglevel或观察新日志是否更详细
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Ubuntu Redis日志如何查看与分析
本文地址: https://pptw.com/jishu/778020.html
