查看和管理 Redis 慢日志
Redis 企业软件 |
---|
Redis 慢日志是最好的之一 用于调试和跟踪 Redis 数据库的工具,尤其是当您 在 Redis作中遇到高延迟和高 CPU 使用率。 由于 Redis 基于单线程架构,因此 Redis 日志速度较慢 可能比多线程的慢速日志机制更有用 MySQL 等数据库系统日志查询速度较慢。
与引入锁开销的工具不同,这会使调试复杂化 process 中,Redis 慢日志在显示每个命令的实际处理时间方面非常有效。
Redis Software 慢日志增强功能
Redis 软件包括对标准 Redis 的增强 慢日志功能,允许您分析执行时间 复杂性。此增强功能可以帮助您更好地分析 Redis作,允许您比较 执行时间,观察到 CPU 使用率的峰值,以及 更多。
这对于 ZUNIONSTORE、ZINTERSTORE 和 ZRANGEBYSCORE 等复杂命令特别有用。
增强的 Redis Software 慢日志会将 Complexity info 字段添加到 output data 的 output data 中。
通过表中的相应命令查看复杂性信息数据 下面:
命令 | 感兴趣的价值 | 复杂性 |
---|---|---|
插入 | N - 列出 len | O(N) |
LREM系列 | N - 列出 len | O(N) |
LTRIM | N - 已删除的元素数 | O(N) |
发布 | N - 频道订阅者数量 M - 订阅模式的数量 |
O(N+M) |
PSUBSCRIBE | N - 客户端订阅的 模式数argc - 传递给命令的参数数 |
O(argc*N) |
PUNSUBSCRIBE 订阅 | N - 客户端订阅的模式数 M - 订阅模式 的总数argc - 传递给命令的参数数 |
O(argc*(N+M)) |
SDIFF | N - 所有集合中的元素总数 | O(N) |
SDIFFSTORE 公司 | N - 所有集合中的元素总数 | O(N) |
烧结 | N - 最小集合 中的元素数argc - 传递给命令的参数数 |
O(argc*N) |
SINTERSTORE 商店 | N - 最小集合 中的元素数argc - 传递给命令的参数数 |
O(argc*N) |
SMEMBERS | N - 集合中的元素数 | O(N) |
排序 | N - 无排序列表时 set/zset 中的元素数M- 结果中的元素数 |
O(N+M*log(M))O(N) |
SUNION (苏尼安) | N - 所有集合中的元素数 | O(N) |
SUNIONSTORE 苏宁店 | N - 所有集合中的元素数 | O(N) |
取消订阅 | N - 订阅所有通道的客户端总数 | O(N) |
扎德 | N - zset 中的元素数 | O(对数 (N)) |
ZCOUNT | N - zset 中的元素数M - 最小值和最大值之间的元素数 |
O(对数 (N)+M) |
津克比 | N - zset 中的元素数 | O(对数 (N)) |
ZINTERSTORE 公司 | N – 最小 zset 中的元素数 K – zsets 的数量 M – 结果集中的元素数 |
O(N*K)+O(M*log(M)) |
ZRANGE | N – zset 中的元素数M – 结果数 |
O(对数 (N)+M) |
ZRANGEBYSCORE | N – zset 中的元素数M – 结果数 |
O(对数 (N)+M) |
ZRANK | N – zset 中的元素数 | O(对数 (N)) |
ZREM 系列 | N – zset 中的元素数argc – 传递给命令的参数数 |
O(argc*log(N)) |
ZREMRANGEBYRANK | N – zset 中的元素数argc – 传递给命令的参数数 |
O(对数 (N)+M) |
ZREMRANGEBYSCORE | N – zset 中的元素数M – 删除的元素数 |
O(对数 (N)+M) |
兹雷夫兰奇 | N – zset 中的元素数M – 结果数 |
O(对数 (N)+M) |
兹雷夫兰克 | N – zset 中的元素数 | O(对数 (N)) |
ZUNION商店 | N – 所有 zsets 的元素计数之和 M – 结果的元素计数 |
O(N)+O(M*log(M)) |
查看慢日志
要查看 Redis Software 数据库的慢速日志条目,请使用以下方法之一:
-
集群管理器 UI:
-
要在集群管理器 UI 中访问慢日志,您的集群管理角色必须是 Admin、Cluster Member 或 DB Member。
-
从 Databases (数据库) 列表中选择一个数据库。
-
在数据库的 Configuration 屏幕上,选择 Slowlog 选项卡。
-
-
命令行:
redis-cli -h <endpoint> -p <port> SLOWLOG GET <count>
Change slow log threshold
The slow log includes all database commands that take longer than ten milliseconds (10,000 microseconds) by default. You can use redis-cli
to view or change this threshold.
To check the current threshold, run CONFIG GET
:
redis-cli -h <endpoint> -p <port> CONFIG GET slowlog-log-slower-than
To change the threshold, run CONFIG SET
:
redis-cli -h <endpoint> -p <port> CONFIG SET slowlog-log-slower-than <value_in_microseconds>
Change maximum entries
The slow log retains the last 128 entries by default. You can use redis-cli
to view or change the maximum number of entries.
To check the current maximum, run CONFIG GET
:
redis-cli -h <endpoint> -p <port> CONFIG GET slowlog-max-len
To change the maximum, run CONFIG SET
:
redis-cli -h <endpoint> -p <port> CONFIG SET slowlog-max-len <value>
On this page