一、背景
因为需要做一个redis的慢日志平台用来收集慢日志,在shell和python写脚本中选择了python,库选择用redis库
二、基本使用
import redis
redis_conn= redis.Redis(host='ip', port= 6379)
print(redis_conn.slowlog_get(30))
三、心路历程
1.如何找到方法
在网上搜索了好久,也没有看到python获取慢日志的相关介绍,但是我们已经知道了python的redis库可以链接redis,那么我们在这里任意使用一个方法redis_conn.slowlog_get(30),然后使用ctrl+鼠标点击到方法的具体内容中,如下图
这样我们就进入到了client.py中,那么这里就是所有client.py的方法了,我们可以在这里搜索slowlog,看是否有相关的方法
2.slowlog_get的使用
源码如下图,可以看到传入的参数只有个num,跟redis里直接使用是一样的,不传参数的时候默认展示10条
3.输出结果的修正
当展示结果的时候发现结果集中没有ip和其他信息,所以这里就需要一些修正了,解析slowlog的方法是parse_slowlog_get,所以我们只需要在解析的方法中把我们想要的输出内容添加上去即可