Redis慢日志查詢(xún)系統(tǒng)slowlog
一撕予、什么是SlowLog
SlowLog是Redis用來(lái)記錄慢查詢(xún)執(zhí)行時(shí)間的日志系統(tǒng)司致。由于SlowLog只保存在內(nèi)存中鸥昏,所以SlowLog的效率非常高存和,
所以你不用擔(dān)心會(huì)影響到你Redis的性能問(wèn)題爽哎。SlowLog是Redis 2.2.12版本之后才引入的一條命令蜓席。
二、SlowLog設(shè)置
SlowLog兩種設(shè)置方式如下:
1课锌、redis.conf配置文件設(shè)置
在配置文件redis.conf中設(shè)置:
slowlog-log-slower-than 10000
slowlog-max-len 128
其中slowlog-log-slower-than表示slowlog的劃定界限厨内,只有query執(zhí)行時(shí)間大于slowlog-log-slower-than的才會(huì)定義成慢查詢(xún),才會(huì)被slowlog進(jìn)行記錄渺贤。slowlog-log-slower-than設(shè)置的單位是微秒雏胃,默認(rèn)是10000微秒,也就是10毫秒志鞍。
slowlog-max-len表示慢查詢(xún)最大的條數(shù)瞭亮,當(dāng)slowlog超過(guò)設(shè)定的最大值后,會(huì)將最早的slowlog刪除固棚,是個(gè)FIFO隊(duì)列统翩。
2、使用config方式動(dòng)態(tài)設(shè)置slowlog
如下此洲,可以通過(guò)config方式動(dòng)態(tài)設(shè)置slowlog:
- 查看當(dāng)前slowlog-log-slower-than設(shè)置
127.0.0.1:6379> CONFIG GET slowlog-log-slower-than
1) "slowlog-log-slower-than"
2) "10000"
- 設(shè)置slowlog-log-slower-than為100ms
127.0.0.1:6379> CONFIG SET slowlog-log-slower-than 100000
OK
- 設(shè)置slowlog-max-len為1000
127.0.0.1:6379> CONFIG SET slowlog-max-len 1000
OK
參考http://redisdoc.com/server/slowlog.html
三厂汗、SlowLog 查看
1、查看slowlog總條數(shù)
127.0.0.1:6379> SLOWLOG LEN
(integer) 4
2黍翎、查看slowlog
127.0.0.1:6379> SLOWLOG GET
1) 1) (integer) 25
2) (integer) 1440057769
3) (integer) 6
4) 1) "SLOWLOG"
2) "LEN"
2) 1) (integer) 24
2) (integer) 1440057756
3) (integer) 36
4) 1) "CONFIG"
2) "GET"
3) "slowlog-log-slower-than"
3) 1) (integer) 23
2) (integer) 1440057752
3) (integer) 11
4) 1) "CONFIG"
2) "SET"
3) "slowlog-log-slower-than"
4) "1"
4) 1) (integer) 22
2) (integer) 1440057493
3) (integer) 27
4) 1) "CONFIG"
2) "GET"
3) "slowlog-log-slower-than"
5) 1) (integer) 21
2) (integer) 1440057133
3) (integer) 7
4) 1) "monitor"
如果要獲取指定的條數(shù)可以使用SLOWLOG GET N命令
127.0.0.1:6379> SLOWLOG GET 1
1) 1) (integer) 26 ? ? ? ? ? ?// slowlog唯一編號(hào)id
2) (integer) 1440057815 ? ?// 查詢(xún)的時(shí)間戳
3) (integer) 47 ? ? ? ? ? ?// 查詢(xún)的耗時(shí)(微秒),如表示本條命令查詢(xún)耗時(shí)47微秒
4) 1) "SLOWLOG" ? ? ? ? ? ?// 查詢(xún)命令艳丛,完整命令為 SLOWLOG GET匣掸,slowlog最多保存前面的31個(gè)key和128字符
2) "GET"