一、慢查詢說明
慢查詢?nèi)罩? 是系統(tǒng)記錄那些超過指定查詢時間的日志,查詢時間指的是單個命令占用CPU處理時間。不包括在隊列中等待的時間。僅僅指執(zhí)行該命令需要的時間。
二、三個命令
- slowlog get [n] 獲取慢查詢隊列
- slowlog len 獲取慢查詢隊列長度
- slowlog reset 清空慢查詢隊列
三、兩個配置
1. 兩個重要參數(shù)
慢查詢?nèi)罩居袃蓚€參數(shù):
- slowlog-log-slower-than: 單位微妙,指定redis執(zhí)行命令的最大時間,超過將記錄到慢查詢?nèi)罩局?
不接受負(fù)值,如果設(shè)置為0,每條命令都要記錄到慢查詢?nèi)罩局?(默認(rèn)值128) -
slowlog-max-len: 設(shè)置慢查詢?nèi)罩鹃L度,如果慢查詢?nèi)罩疽呀?jīng)到最大值,如果有新命令需要記錄,就將最老那條記錄刪除.(默認(rèn)值1000)
image.png
2. 動態(tài)配置
redis作為一個持久化服務(wù),一般開啟之后不會在對它進(jìn)行重啟操作。因此redis支持動態(tài)修改配置
命令為config set slowlog-max-len 1
和config set slowlog-log-slower-than 1000
四、通常配置
通常slowlog-max-len不要設(shè)置過大 默認(rèn)10ms ,設(shè)置為1ms
通常slowlog-log-slower-than 不要設(shè)置過小,通常設(shè)置1000