您的位置:首页 > 数据库 > Redis

redis 慢查询日志

2016-07-19 22:10 344 查看

Slowlog

命令用于读取和重新设置redis慢查询日志.

概述

redis 慢查询日志, 是系统记录那些超过指定查询时间的日志. 执行的时间不包括和客户端的IO操作,和响应时间等, 而只是实际redis执行命令的时间(只是线程执行命令时,阻塞不能在接受处理其他请求花费的时间)

慢查询日志有两个参数:

slowlog-log-slower-than: 单位微妙,指定redis执行命令的最大时间,超过将记录到慢查询日志中,

不接受负值,如果设置为0,每条命令都要记录到慢查询日志中.

slowlog-max-len: 设置慢查询日志长度,如果慢查询日志已经到最大值,如果有新命令需要记录,就将最老那条记录删除.

读取慢查询日志

慢查询日志是会存储在内存中, 没有文件存储慢查询日志内容. 所以在获取慢查询日志时候,会响应非常快. 对性能影响很小.

获取慢查询日志可以使用 slowlog get 命令, 将会所有的慢查询记录. 获取指定数量的慢查询使用:

slowlog get N

实例

redis 127.0.0.1:6379> slowlog get 2
1) 1) (integer) 14
2) (integer) 1309448221
3) (integer) 15
4) 1) "ping"
2) 1) (integer) 13
2) (integer) 1309448128
3) (integer) 30
4) 1) "slowlog"
2) "get"
3) "100"


slowlog get 返回值说明

返回的每个慢查询实体,都由四个字段组成

第一个字段是每个慢查询唯一标识。

处理完命令后的,Unix 时间戳

执行改名了所需要的时间,单位微妙

命令的参数列表,是个数组类型

每个慢查询实体的ID都是唯一的,而且不会被重新设置,只会在redis重启后才会重置它.

查看当前慢查询日志长度

Slowlog len

清空慢查询日志内容

SLOWLOG RESET
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  redis