当前位置: 代码网 > it编程>数据库>Redis > Redis慢日志的实现示例

Redis慢日志的实现示例

2024年05月26日 Redis 我要评论
slowlog 是用来读取和重置 redis 慢查询日志的命令,redis 2.2.12 版本开始支持1.redis 慢查询日志概述客户端从发送命令到获取返回结果经过了以下几个步骤:1. 客户端发送命

slowlog 是用来读取和重置 redis 慢查询日志的命令,redis 2.2.12 版本开始支持

1.redis 慢查询日志概述

客户端从发送命令到获取返回结果经过了以下几个步骤:

1. 客户端发送命令

2. 该命令进入 redis 队列排队等待执行

3. redis 开始执行命令 - redis 命令执行完成

4. 命令执行结果返回给客户端

redis 慢查询日志统计的时间,只包含第三步的 redis 命令从开始执行到执行完成的时间。

2.慢查询日志的两个配置项

slowlog-log-slower-than

  • redis 慢查询日志的时间阈值,单位微妙。

  • 1) 值为正数,执行时间大于该值设置的微秒时才记录到慢日志中。默认 10000 微秒(0.01 秒)。

  • 2) 值为负数,禁用慢查询日志。

  • 3) 值为 0,所有命令都记录到慢日志中

slowlog-max-len

  • 慢查询日志长度,最小值为零。默认 128

  • 当记录新命令并且当前慢日志已达到最大长度时,最旧的一条记录将被删除。

可以通过编辑 redis.conf 或者使用 config get/set 命令来进行配置

127.0.0.1:6379> config get slowlog-log-slower-than
1) "slowlog-log-slower-than"
2) "10000"
127.0.0.1:6379> config get slowlog-max-len
1) "slowlog-max-len"
2) "128"
127.0.0.1:6379> config set slowlog-log-slower-than 0
ok
127.0.0.1:6379> config set slowlog-max-len 10
ok

3.读取慢日志记录

慢查询日志是记录在内存中的,记录速度非常快。

可以使用 slowlog get n 命令来读取慢日志,查询最近的 n 条记录。

该命令默认请求条数为 10 ,即 slowlog get 等价于 slowlog get 10

参数为 -1 时会获取整个慢日志信息。

日志输出格式

127.0.0.1:6379> slowlog get 2
1) 1) (integer) 13
   2) (integer) 1629523068
   3) (integer) 6
   4) 1) "get"
      2) "a"
   5) "127.0.0.1:43942"
   6) "lnrcoder"

1)每条日志唯一标识符

2)命令执行时的时间戳

3)命令执行消耗的时间,单位微秒

4)执行的命令数组

5)客户端地址和端口 (仅 4.0 以上版本支持)

6)客户端名称 (仅 4.0 以

127.0.0.1:6379> slowlog len
(integer) 10
127.0.0.1:6379> slowlog reset
ok
127.0.0.1:6379> slowlog len
(integer) 0

上版本支持,默认名称为空,需要通过 client setname 命令进行设置)

4.查询慢日志记录长度

使用 slowlog len 可以获取慢日志记录的长度。

127.0.0.1:6379> slowlog len
(integer) 2

5.重置慢日志

使用 slowlog reset 命令用来重置慢日志。使用该命令进行日志重置后,信息将永远丢失。

127.0.0.1:6379> slowlog len
(integer) 10
127.0.0.1:6379> slowlog reset
ok
127.0.0.1:6379> slowlog len
(integer) 0

到此这篇关于redis慢日志的实现示例的文章就介绍到这了,更多相关redis慢日志内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网! 

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com