zl程序教程

您现在的位置是:首页 >  数据库

当前栏目

Redis命令监控与简单分析

Redis监控命令 分析 简单
2023-09-27 14:24:14 时间

Redis命令监控与简单分析


前言

为了能够快速识别分析redis的命令
自己在环境上面进行了一些简单的跟踪以及脚本
这里不全是进行metrics, 细致到具体的命令分析

脚本部分-1

mkdir -p /redismonitor/ 
cd /redismonitor/ 
find . -mtime +10 -iname *redis_monitor.log.tar.gz -exec rm -rf {} \; 
sleep 10
kill -9 `ps -ef |grep redis-cli |grep monitor |grep -v grep | awk '{print $2}'`
for i in `ls *monitor.log ` ; do tar -czvf ${i}.tar.gz $i ; rm -rf ${i} ; done
sleep 10
nohup /bin/redis-cli monitor > /redismonitor/`date +%Y%m%d%H`_redis_monitor.log & 

删除十天前的备份.
将上一天的文件打包成tar包并且执行删除验文件操作.
执行monitor监控redis, 存储文日期时间的文件.

脚本部分-2

cd /redismonitor
cat `date +%Y%m%d`01_redis_monitor.log |egrep '"SCAN" "0"' >/redismonitor/`date +%Y%m%d%H`_redis_monitor_scan.log
cat `date +%Y%m%d`01_redis_monitor.log | awk '{print $4}' |awk -F "\"" '{print $2}' |sort |uniq -c |sort -k1h  >/redismonitor/`date +%Y%m%d%H`_redis_monitor_type.log
/bin/redis-cli dbsize >/redismonitor/`date +%Y%m%d%H`_redis_monitor_dbsize.log

分析所有的scan命令.
分析所有的指令类型并且进行排序.
分析当前redis的键值对数量.

非自动执行的脚本

cat 2023041201_redis_monitor.log |grep -in "\"match\" \"functionDistributedCacheName" > scanfunctionDistributedCacheName.log

分析scan命令分组情况.

计划任务处理

1 1 * * * /deploy/redismo
1 */2 * * * /deploy/redismocheck

每天凌晨一点一份开始监控.
每两个小时查看一下redis信息 归集出接过来.