zoukankan      html  css  js  c++  java
  • Redis之延迟监控

    延迟监控

    • 参考官方文档
    https://redis.io/topics/latency-monitor
    • 启用 redis 延迟监控
    CONFIG SET latency-monitor-threshold 100

    单位:毫秒,100表示一百毫秒。如果将 latency-monitor-threshold 的值设置为 0,则表示关闭延迟监控。

    • 子命令

    1)LATENCY LATEST

    返回所有事件的最新延迟样本

    2)LATENCY HISTORY event

    返回最多160条的给定 event 的延迟时间序列(延迟发生时的时间戳和延迟毫秒数)

    3)LATENCY RESET event

    重置一个或多个 events 的延迟时间序列数据为零,如果不指定参数 event,则表示重置所有的 events。

    4)LATENCY GRAPH event

    以文本图表方式展示

    5)LATENCY DOCTOR

    回复人类可读的延迟分析报告

    6)LATENCY HELP

    查看使用帮助

    • 支持的事件(events)
    命令名 命令说明
    command 常规命令
    fast-command 时间复杂度为“O(1)”和“O(log N)”的快命令
    fork 系统调用 fork
    aof-stat 系统调用 stat
    aof-write 系统调用 write
    aof-rename 系统调用 rename
    aof-fsync-always 设置“appendfsync allways”时的系统调用 fsync
    aof-write-active-child 子进程执行的系统调用 fsync
    rdb-unlink-temp-file 系统调用 unlink
    active-defrag-cycle 主动碎片整理周期
    aof-rewrite-diff-write
    aof-write-alone 主进程执行的 fsync 系统调用
    aof-write-pending-fsync
    expire-cycle 过期周期
    eviction-cycle 淘汰周期
    eviction-del
    • redis-cli 对延迟监控的支持

    与延迟监控有关的参数:

    参数名 参数说明
    --latency 以文本方式显示持续采样服务器延迟时间
    --latency-dist 以 256 色的频谱方式显示,如果和参数“--latency”同时使用,则被忽略
    --latency-history 持续采集并每隔一段时间(默认15秒,可参数“-i”设置其它值)输出一个记录

    采样的原理是向目标 redis-server 发向 PING 命令来获得延迟时间。

    慢日志查询

    1)启用慢日志

    CONFIG SET slowlog-log-slower-than 100

    单位:微秒(注意不是毫秒),100表示一百微秒,表示执行时长超过100微秒的命令才会被记录下来。如果值为负数则表示关闭记录慢日志,如果值为0表示记录所有命令的慢日志。

    记录慢日志不会有文件操作,所以对性能影响非常小,因此可考虑记录所有命令(将 slowlog-log-slower-than 值设置为 0 即可)。

    2)设置记录的慢日志数量

    CONFIG SET slowlog-max-len 10

    上述表示记录最近 10 条慢日志。

    3)查询慢日志

    SLOWLOG GET

    不带参数返回所有的(配置 slowlog-max-len 决定)慢日志,可指定参数只返回最新的 N 条慢日志,如最新的 10 条:

    SLOWLOG GET 10

    4)查询当前慢日志条数

    SLOWLOG LEN
  • 相关阅读:
    linux sed命令详解
    SQL注入基础知识
    DC-7
    DC-6
    DC-5
    DC-4
    DC-3
    DC-2
    pentestlabs
    任意文件读取和下载
  • 原文地址:https://www.cnblogs.com/aquester/p/13571263.html
Copyright © 2011-2022 走看看