在 CentOS 中查看 Redis 日志的常用方法
一、快速定位日志路径
- 通过 Redis 命令行查询日志文件路径与级别:
- 查看日志文件:redis-cli config get logfile
- 查看日志级别:redis-cli config get loglevel
- 查看配置文件中的日志配置(常见路径为:/etc/redis/redis.conf):
- 定位配置:cat /etc/redis/redis.conf | grep -E ‘^logfile|^loglevel’
- 常见默认日志目录为:/var/log/redis/,常见文件名:redis.log 或 redis-server.log。
二、常用查看命令
- 实时查看最新日志(最常用):tail -f /var/log/redis/redis-server.log
- 查看最后 N 行(例如 200 行):tail -n 200 /var/log/redis/redis-server.log
- 分页查看大文件:less /var/log/redis/redis-server.log(按 q 退出)
- 过滤关键字(例如仅看错误):grep -i “error” /var/log/redis/redis-server.log
- 按时间范围查看(例如今天):grep “$(date +%Y-%m-%d)” /var/log/redis/redis-server.log
- 如果日志输出到了系统日志(journald),可用:journalctl -u redis -f(按 Ctrl+C 退出)。
三、日志级别与动态修改
- 可用日志级别:debug、verbose、notice、warning(生产常用 notice 或 warning)
- 动态查看当前级别:redis-cli config get loglevel
- 动态调整级别(例如设为 debug):redis-cli config set loglevel debug
- 通过配置文件永久修改(编辑 /etc/redis/redis.conf):
- 设置级别:loglevel notice
- 指定文件:logfile “/var/log/redis/redis-server.log”
- 使配置生效:
- 若以 systemd 管理:systemctl restart redis
- 若以传统方式运行:重启 Redis 进程。
四、常见问题与排查要点
- 权限不足无法读取日志:使用 sudo 或切换到有权限的用户(如 root)。
- 日志文件或目录不存在:
- 检查 logfile 配置是否指向正确路径;
- 确认目录存在且 Redis 有写权限(如:/var/log/redis/,若不存在需先创建并赋权)。
- 配置修改后未生效:确认是否执行了 systemctl restart redis,或 Redis 是否以非配置方式启动。
- 排查技巧:优先用 tail -f 观察启动与异常堆栈;用 grep 过滤 error/warn 关键字快速定位问题。