Redis中的慢日志

这篇文章主要介绍了Redis中的慢日志,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

Redis慢日志

redis慢日志是用于记录某些命令在执行时超过了预设定的时间,只要超过了一定的时间,redis就会将该条命令记录到redis-slowlog中。

查看slowlog的设置:

第一种查看redis的慢日志配置:

打开redis.conf文件进行查看和配置,如下图:

在上图中我们可以看到redis的slowlog(慢日志)的默认配置,其中有两个地方需要了解:

1. slowlog-log-slower-than: 这个配置表示执行时间,在redis执行命令时,只要有任何一条命令超过了设置的执行时间,redis就会将这条命令记录到慢日志中。

2. slowlog-max-len: 这个配置表示该日志的大小,redis的日志是一个FIFO队列,当该队列达到设定的长度大小之后,后面记录的日志会覆盖掉之前记录的日志。

第二种查看redis的慢日志配置:

使用命令 config get slowlog*,可以查看到当前redis的slowlog的配置信息:

127.0.0.1:6379> config get slowlog* 1) "slowlog-max-len" 2) "128" 3) "slowlog-log-slower-than" 4) "10"

查看rediso slowlog日志内容:

使用命令 slowlog get [n] 获取前n条慢查询日志,不指定长度获取全部。

127.0.0.1:6379> slowlog get 2 1) 1) (integer) 8 2) (integer) 1621174057 3) (integer) 32 4) 1) "keys" 2) "*" 5) "127.0.0.1:5684" 6) "" 2) 1) (integer) 7 2) (integer) 1621173719 3) (integer) 34 4) 1) "config" 2) "get" 3) "slowlog*" 5) "127.0.0.1:5684" 6) ""

 PS: redis的slowlog是记录在内存中的,所以就算是频繁触发slowlog日志,也不会对redis的性能造成影响。 

Redis慢日志相关命令配置

运行期配置:重启后失效

# 慢日志配置查看(模糊查询:慢日志时间,慢日志记录条数) config get *slowlog* # 查看指定条数的慢日志,返回最近的指定条数 slowlog get 2 # 设置慢日志 config set slowlog-log-slower-than 10000 (单位:微妙,默认值:10000 => 10毫秒) config set slowlog-max-len 128(默认值:保留128条慢日志) # 重置redis慢日志 slowlog reset # 查看符合过滤的慢日志条数 slowlog len # 慢日志帮助 slowlog help 

配置文件配置redis.conf:

slowlog-log-slower-than 10000 slowlog-max-len 128

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持0133技术站。

以上就是Redis中的慢日志的详细内容,更多请关注0133技术站其它相关文章!

赞(0) 打赏
未经允许不得转载:0133技术站首页 » 数据库