You need to enable JavaScript to run this app.
导航

查询慢日志

最近更新时间2024.05.10 10:17:07

首次发布时间2021.11.04 14:15:17

缓存数据库 Redis 版支持日志管理功能,您可以在控制台上查看或导出指定时间内的慢日志详情(如慢查询语句、执行时长等)。本文介绍如何查询慢日志。

功能介绍

缓存数据库 Redis 版会将执行时长超过指定阈值的请求记录在慢日志中,您可以在 Redis 控制台上中查看数据节点(即 Server 节点)和代理节点(即 Proxy 节点)的慢日志详情。其中:

  • 数据节点慢日志

    • 数据节点慢日志中展示的执行时长仅包含命令在数据节点中的执行时间。数据节点与代理或客户端的通信时间,以及命令在单线程队列上的排队延迟等时间均未包含在该执行时长中。
    • 缓存数据库 Redis 版支持自定义数据节点的慢日志相关参数:
      • slowlog-log-slower-than:设置慢日志中的执行时长阈值。单位:微秒。取值范围:10000~1000000。默认值:20000 微秒(即 20 毫秒)。
      • slowlog-max-len:设置最大慢日志条目数。默认值:128。
  • 代理节点慢日志

    • 代理节点慢日志中展示的执行时长不仅包含了命令在数据节点中的执行时间,还包含了数据节点与代理或客户端的通信时间,以及命令在单线程队列上的排队延迟等时间。
    • Block 类命令的执行时长、通信时长和等待时长超过了阈值也不会被记录到慢日志中。Block 类命令包含下表中的所有命令。
      命令族具体命令
      ListBLPOP、BRPOP、BRPOPLPUSH
      Sorted SetBZPOPMIN、BZPOPMAX
      StreamXREAD、XREADGROUP
    • 缓存数据库 Redis 版支持通过 proxy-slowlog-slower-than 参数,来自定义代理节点上慢日志的执行时长阈值。单位:微秒。取值范围:50000~2000000。默认值:500000 微秒(即 500 毫秒)。
    • 缓存数据库 Redis 版未限制代理节点的慢日志保留条目数。您可以查询最近 3 天内的慢日志详情。

慢日志参数的设置方法,请参见调整慢日志参数

操作步骤

  1. 登录 Redis 控制台
  2. 在顶部菜单栏的左上角,选择实例所属的项目和地域。
  3. 实例列表页,单击目标实例名称。
  4. 在实例详情页,选择日志管理页签。
  5. 慢日志页签下,您可以在列表左上角先指定节点类型和查询时间范围,也可以在列表中根据节点 ID 筛选出需要的慢日志查询结果进行查看。

    说明

    • 默认展示全部数据节点的慢日志。不同节点的请求被记录为慢日志的执行时长阈值不同,其中:
      • 数据节点(Server 节点):执行时长超过 slowlog-log-slower-than 参数值(默认值为 20 毫秒)的请求即会被记录在数据节点的慢日志中。
      • 代理节点(Proxy 节点):执行时长超过 proxy-slowlog-slower-than 参数值(默认值为 500 毫秒)的请求即会被记录在代理节点的慢日志中。
    • 仅支持查看最近 3 天内的慢日志详情。
    • 查询结果中会展示慢请求的节点ID执行开始时间执行时长(μs)语句。代理节点的慢日志列表中还会展示请求所涉及的库名客户端地址账号详情。
    • 您可以将符合筛选条件的慢日志查询结果导出到本地进行管理,具体操作步骤,请参见导出慢日志

相关 API

API
描述
DescribeSlowLogs调用 DescribeSlowLogs 接口查看目标实例在指定时间段内的慢日志详情。