23 慢查询日志
Redis的慢查询日志,用于记录执行时间超过给定时长的命令请求,用户可以通过这个日志来监视和优化查询速度。
服务器有两个选项和慢查询有关:
slowlog-log-slower-than,指定执行时间超过多少微妙的命令请求会被记录到日志上。slowlog-max-len,指定服务器上最多保存多少条慢查询日志。数量超过,则先入先出。
SLOWLOG GET可以查看服务器保存的慢查询日志。
23.1 慢查询日志的保存
1 | struct redisServer { |
23.2 慢查询日志的阅览与删除
1 | def SLOTLOG_GET(number=None): |
23.3 添加新日志
每次命令执行前后,程序都会记录时间戳,两者之差就是命令执行的耗时。服务器会把这个时长传递给函数slowlogPushEntryIfNeeded,它负责检查是否需要创建慢查询日志:
- 如果执行时长超过
slowlog-log-slower-than选项,为其创建新日志,添加到slowlog链表的表头。 - 如果慢查询日志的长度超过了
slowlog-max-len的限制,那么将多余的日志从slowlog链表删除。
导航
上一章:22. 二进制位数组
下一章:24. 监视器
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Estom的博客!









