首页 技术 正文
技术 2022年11月19日
0 收藏 354 点赞 4,256 浏览 1638 个字

什么是 SLOWLOG

Slow log 是 Redis 用来记录查询运行时间的日志系统。

查询运行时间指的是不包含像client响应(talking)、发送回复等 IO 操作,而单单是运行一个查询命令所耗费的时间。

另外,slow log 保存在内存里面,读写速度很快,因此你能够放心地使用它,不必操心由于开启 slow log
而损害 Redis 的速度。

设置 SLOWLOG

Slow log 的行为由两个配置參数(configuration
parameter)指定。能够通过改写 redis.conf 文件或者用 CONFIG  和 CONFIG 命令对它们动态地进行改动。

第一个选项是 slowlog-log-slower-then ,它决定要对运行时间大于多少微秒(microsecond,1秒
= 1,000,000 微秒)的查询进行记录。

比方运行下面命令将让 slow log 记录全部查询时间大于等于
100 微秒的查询:

CONFIG
slowlog-log-slower-then 

而下面命令记录全部查询时间大于 1000
微秒的查询:

CONFIG
slowlog-log-slower-then 

还有一个选项是 slowlog-max-len ,它决定
slow log 最多能保存多少条日志, slow log 本身是一个 LIFO 队列,当队列大小超过 slowlog-max-len 时,最旧的一条日志将被删除。而最新的一条日志增加到
slow log ,以此类推。

下面命令让 slow log 最多保存 1000
条日志:

CONFIG
slowlog-max-len 

使用 CONFIG 命令能够查询两个选项的当前值:

redis> CONFIG GET slowlog-log-slower-than
1) "slowlog-log-slower-than"
2) "1000"redis> CONFIG GET slowlog-max-len
1) "slowlog-max-len"
2) "1000"

查看 slow log

要查看 slow log ,能够使用 SLOWLOG 或者 SLOWLOG
number
 命令,前者打印全部 slow log ,最大长度取决于 slowlog-max-len 选项的值,而 SLOWLOG
number
 则仅仅打印指定数量的日志。

最新的日志会最先被打印:

redis> SLOWLOG GET
1) 1) (integer) 12 # 唯一性(unique)的日志标识符
2) (integer) 1324097834 # 被记录命令的运行时间点,以 UNIX 时间戳格式表示
3) (integer) 16 # 查询运行时间。以微秒为单位
4) 1) "CONFIG" # 运行的命令,以数组的形式排列
2) "GET" # 这里完整的命令是 CONFIG GET slowlog-log-slower-than
3) "slowlog-log-slower-than"2) 1) (integer) 11
2) (integer) 1324097825
3) (integer) 42
4) 1) "CONFIG"
2) "GET"
3) "*"3) 1) (integer) 10
2) (integer) 1324097820
3) (integer) 11
4) 1) "CONFIG"
2) "GET"
3) "slowlog-log-slower-then"# ...

日志的唯一 id 仅仅有在 Redis server重新启动的时候才会重置,这样能够避免对日志的反复处理(比方你可能会想在每次发现新的慢查询时发邮件通知你)。

查看当前日志的数量

使用命令 SLOWLOG 能够查看当前日志的数量。

请注意这个值和 slower-max-len 的差别,它们一个是当前日志的数量,一个是同意记录的最大日志的数量。

redis> SLOWLOG LEN
(integer) 14

清空日志

使用命令 SLOWLOG
RESET
 能够清空 slow log 。

redis> SLOWLOG LEN
(integer) 14redis> SLOWLOG RESET
OKredis> SLOWLOG LEN
(integer) 0
相关推荐
python开发_常用的python模块及安装方法
adodb:我们领导推荐的数据库连接组件bsddb3:BerkeleyDB的连接组件Cheetah-1.0:我比较喜欢这个版本的cheeta…
日期:2022-11-24 点赞:878 阅读:9,082
Educational Codeforces Round 11 C. Hard Process 二分
C. Hard Process题目连接:http://www.codeforces.com/contest/660/problem/CDes…
日期:2022-11-24 点赞:807 阅读:5,557
下载Ubuntn 17.04 内核源代码
zengkefu@server1:/usr/src$ uname -aLinux server1 4.10.0-19-generic #21…
日期:2022-11-24 点赞:569 阅读:6,406
可用Active Desktop Calendar V7.86 注册码序列号
可用Active Desktop Calendar V7.86 注册码序列号Name: www.greendown.cn Code: &nb…
日期:2022-11-24 点赞:733 阅读:6,179
Android调用系统相机、自定义相机、处理大图片
Android调用系统相机和自定义相机实例本博文主要是介绍了android上使用相机进行拍照并显示的两种方式,并且由于涉及到要把拍到的照片显…
日期:2022-11-24 点赞:512 阅读:7,815
Struts的使用
一、Struts2的获取  Struts的官方网站为:http://struts.apache.org/  下载完Struts2的jar包,…
日期:2022-11-24 点赞:671 阅读:4,898