redis slowlog配置说明

    xiaoxiao2022-07-16  121

    导语

    类似于MySQL,Redis服务也有slow log,用来记录查询执行时间, 这里的执行时间仅仅指的是查询命令所消耗的时间,而不包括客户端响应等。 Redis的slow log是保存在内存中的,所以读写速度非常快, 不用担心因为开启slow log而对redis造成别的问题

    配置

    如果系统没有禁止`config`命令,则我们可以用config命令来操作, 而不用通过修改配置文件然后重启服务的方式

    首先查看系统是否开启了slow log

    ## 如果没有禁止config则如下 config get slowlog* ## 如果禁止了config 则查看配置文件是否配置过 cat /usr/local/redis/conf/6379.conf |grep slowlog

    config 配置

    ## 配置查询时间超过1毫秒的, 第一个参数单位是微秒 ## 保存200条慢查记录 config set slowlog-log-lower-than 1000 config set slowlog-max-len 200

    配置文件配置

    该方式需要重启redis服务

    ## vim /usr/local/redis/conf/6379.conf slowlog-log-lower-than 1000 slowlog-max-len 200

    验证

    如果没有禁止config命令,可以通过如下查看 slow log的配置

    config get slow* config get slowlog-log-slower-than config get slowlog-max-len

    具体的实例验证

    # 查看当前总的slowlog个数 192.168.254.50:6379> slowlog len (integer) 1 # 查看所有slowlog 192.168.254.50:6379> slowlog get 1) 1) (integer) 0 2) (integer) 1486526083 3) (integer) 150744 4) 1) "ZADD" 2) "FOLLOWER:2032177448" 3) "1.486526083072E12" 4) "2032442937" # 查看指定个数的slowlog,这里只有1个,故只查询1条 192.168.254.50:6379> slowlog get 1 1) 1) (integer) 0 2) (integer) 1486526083 3) (integer) 150744 4) 1) "ZADD" 2) "FOLLOWER:2032177448" 3) "1.486526083072E12" 4) "2032442937" # reset slow log 192.168.254.50:6379> SLOWLOG reset OK 192.168.254.50:6379> slowlog len (integer) 0 192.168.254.50:6379> slowlog get (empty list or set) 192.168.254.50:6379>

    参考

    http://redisdoc.com/server/slowlog.html

    http://roidba.blog.51cto.com/12318731/1877252

    扩展

    支持扩展安装特定redis版本的自动化脚本


    简书地址:redis slowlog配置说明


        公众号: DailyJobOps    

    最新回复(0)