首頁  >  文章  >  資料庫  >  Redis中slowlog有什麼用

Redis中slowlog有什麼用

PHPz
PHPz轉載
2023-05-29 17:29:211122瀏覽

Redis採用slowlog來記錄查詢執行時間的日誌系統。注意,這個查詢執行時間指的是不包括像客戶端回應(talking)、發送回覆等 IO 操作,而單單是執行一個查詢指令所耗費的時間。 

Redis中slowlog有什麼用

slowlog 保存在記憶體裡面,讀寫速度非常快,因此我們可以放心地使用它,不必擔心因為開啟 slowlog 而損害 Redis 的速度。

slowlog 有兩個重要的配置,我們先透過 CONFIG GET slowlog-* 指令來查看現有的配置。

Redis中slowlog有什麼用

slowlog-log-slower-than表示慢查詢的閾值,以微秒為單位。如果查詢命令的執行時間超過設定的限制閾值,則該命令將記錄在慢查詢日誌中。記錄所有指令,當slowlog-log-slower-than=0。當slowlog-log-slower-than的值小於等於0時,將不會記錄任何指令。 slowlog-log-slower-than 的預設值為 10000 (10毫秒,1秒 = 1,000毫秒 = 1,000,000微秒)。

slowlog-max-len 代表慢速查詢日誌最大條數。這是一個先進先出佇列的儲存結構,當慢查詢日誌條目數量達到上限時,最早記錄的日誌條目將被銷毀。 slowlog-max-len 的預設值為 128,儲存在記憶體內,所以重啟 redis 會清空慢查詢日誌。

設定slowlog-log-slower-than 和slowlog-max-len 的指令非常簡單,如下:

Redis中slowlog有什麼用

使用SLOWLOG LEN 指令,查詢目前的慢查詢日誌記錄數。

Redis中slowlog有什麼用

當我們只需要查詢前幾個慢查詢記錄時,可以使用 SLOWLOG GET [n] 指令。

Redis中slowlog有什麼用

SLOWLOG GET [n] 若不加 n ,則取得全部慢查詢記錄。

清空慢查詢日誌使用 SLOWLOG RESET。請注意,不要將 slowlog-log-slower-than 設定得太大,因為過大的設定可能會導致沒有記錄被記錄下來。

以上是Redis中slowlog有什麼用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:yisu.com。如有侵權,請聯絡admin@php.cn刪除