新路 2020-06-03
将失败的请求存入xml格式的文件中
选择想要的信息,信息太多是无用的,处理也不方便
#!/bin/bash # 文件路径 dir="/opt/monitorScript/mtl_pc.jmx" # jmter路径 jmterdir="/opt/jmeter5.1.1" ## 日志存储地址 log="/tmp" ## 设置时间 time=`date +%Y%m%d%H%M%S` ## 设置操作函数 function operate(){ /opt/jmeter5.1.1/bin/jmeter.sh -n -t $dir>>/tmp/mtl.log } ## 判断xml日志文件是否存在,不存在, if [ -f $log/mtl_pc.xml ];then mv $log/mtl_pc.xml $log/mtl_pc_$time.xml operate else operate fi ## 定义接口名称 lb=`cat $log/mtl_pc.xml |xml2|grep "@lb"|awk -F "=" ‘{print $2}‘|tail -1` ## 获取接口地址 URL=`cat $log/mtl_pc.xml|xml2|grep "java.net.URL" |tail -1` url=`echo ${URL#*=}` ## 获取异常信息 failureMessage=`cat $log/mtl_pc.xml|xml2|grep "failureMessage"|awk -F ‘=‘ ‘{print $2}‘|sed "s/‘//g"|tail -2` ## failureMessagenum=`cat $log/mtl_pc.xml|xml2|grep "failureMessage"|wc -l` ## 设置函数,发送钉钉群 function SendMessageToDingding(){ Dingding_Url="https://oapi.dingtalk.com/robot/send?access_token=8ba7c120854ac253d7affa1f0b10e1e34aa5ad3ccd467694148533797f471ec9" curl "${Dingding_Url}" -H ‘Content-Type: application/json‘ -d "{ ‘msgtype‘: ‘text‘, ‘text‘: { ‘content‘: ‘接口场景:摩天轮线上业务监控\n接口名称:$lb\n接口地址:$url\n接口异常:$failureMessage\n‘ } }" } if [ $failureMessagenum -ge 3 ];then SendMessageToDingding else echo "成功" fi ~