Redis SHOWLOG 命令

返回上一级

Redis SLOWLOG 命令可以查看 slow log

( Redis >= 2.2.12 )

  • SLOWLOG GET 打印所有 slow log ,最大长度取决于 slowlog-max-len 选项的值
  • SLOWLOG GET number 只打印指定数量的日志

什么是 SLOWLOG

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

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

另外,slow log 保存在内存里面,读写速度非常快,因此你可以放心地使用它,不必担心因为开启 slow log 而损害 Redis 的速度

设置 SLOWLOG

Slow log 的行为由两个配置参数(configuration parameter)指定,可以通过改写 redis.conf 文件或者用 CONFIG GETCONFIG SET 命令对它们动态地进行修改。

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

比如执行以下命令将让 slow log 记录所有查询时间大于等于 200 微秒的查询:

CONFIG SET slowlog-log-slower-than 200

而以下命令记录所有查询时间大于 2000 微秒的查询:

CONFIG SET slowlog-log-slower-than 2000

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

以下命令让 slow log 最多保存 2000 条日志:

CONFIG SET slowlog-max-len 2000

使用 CONFIG GET 命令可以查询两个选项的当前值:

127.0.0.1:6379> CONFIG GET slowlog-log-slower-than
1) "slowlog-log-slower-than"
2) "2000"

127.0.0.1:6379> CONFIG GET slowlog-max-len
1) "slowlog-max-len"
2) "2000"

语法

redis SHOWLOG 命令语法如下:

127.0.0.1:6379> SLOWLOG subcommand [argument]

返回值

取决于不同命令,返回不同的值。

范例

查看日志信息:

127.0.0.1:6379> SHOWLOG get 2
1) 1) (integer) 50
   2) (integer) 1503397963
   3) (integer) 17889
   4) 1) "SYNC"
2) 1) (integer) 49
   2) (integer) 1503396847
   3) (integer) 18260
   4) 1) "FLUSHALL"

查看当前日志的数量:

127.0.0.1:6379> SLOWLOG LEN
(integer) 51

使用命令 SLOWLOG RESET 可以清空 slow log

127.0.0.1:6379> SLOWLOG LEN
(integer) 51
127.0.0.1:6379> SLOWLOG RESET
OK
127.0.0.1:6379> SLOWLOG LEN
(integer) 0

返回上一级

Redis 基础教程

关于   |   FAQ   |   我们的愿景   |   广告投放   |  博客

  简单教程,简单编程 - IT 入门首选站

Copyright © 2013-2022 简单教程 twle.cn All Rights Reserved.