一. slow log慢查詢日志
slowlog是 Redis 用來記錄查詢執行時間的日志系統。
slowlog-log-slower-than設置慢操作的閾值,單位是微妙,默認是10000微妙,也就是10ms
slowlog-max-len設置保存個數
127.0.0.1:6379> config set slowlog-log-slower-than 500
基本語法 SLOWLOG subcommand [argument]
查看日志信息:slowlog get [數量]
輸出的四列的含義分別是:記錄的自增ID、命令執行時的時間戳、命令的執行耗時(ms)、命令的內容,只包括命令的執行時間
查看當前日志的數量:slowlog len
清空 slow log:SLOWLOG RESET
二. Redis延遲監控框架
Redis延遲監控框架
記錄執行時間大於或等於預定時間(毫秒)的操作,這個預定時間是通過latency-monitor-threshold配置來指定的,當設置為0時,這個監控系統處於停止狀態
啟動延時監控框架:CONFIG SET latency-monitor-threshold 100
查看最新的延時事件:
latency latest
127.0.0.1:6319> latency latest
1) 1) "command" #event name
2) (integer) 1480865648 #發生時間
3) (integer) 207 #耗時,毫秒
4) (integer) 239 #從redis啟動或上次latency reset以來,這種事件的最大延時記錄
查看延時事件的歷史信息:LATENCY HISTORY event-name
對於給定事件,命令將返回最多160個元素。 應用程序可能想要獲取原始數據以便執行監視,顯示圖形等。
127.0.0.1:6319> latency history command
1) 1) (integer) 1480865710
2) (integer) 207
2) 1) (integer) 1480865711
2) (integer) 217
3) 1) (integer) 1480865712
2) (integer) 198
統計數據歸零:
LATENCY RESET [event-name ... event-name]
以文本圖表形式展示延時事件:
LATENCY GRAPH event-name
三. latency監控器Redis服務器的延遲
基本的延遲檢查工具是 --latency 選項。 可檢測網絡延遲,使用此選項,CLI運行一個循環,將PING命令發送到Redis實例,並測量獲得答復的時間。這種情況每秒發生100次,統計信息在控制台中實時更新:
–latency 持續采樣服務器延遲時間,–latency-history則是持續采集並每隔一段時間(15秒)輸出一個記錄。
min:采樣最小值,milliseconds
max:最大值
avg:平均值
samples:非零采樣數
period:采樣時間,secondes
-i 使用時,設置命令執行間隔時間(單位秒,可以使用小數)