本文主要是介绍轻量级监控平台之慢日志监控,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
轻量级监控平台之慢日志监控脚本
#!/bin/bash
#进程监控脚本
#功能需求: 上报机器内rcp,web服务的慢接口数据
. /etc/profile
. ~/.bash_profilepushurl="https://lightmonitorapi.test.cn/push/serviceslow"proNum=$(jps | grep -v Jps | cut -d' ' -f1)cd /opt/web/
webDir=$( ls )msg=""
for pid in $proNum
doserviceName=$(serivce list | grep "$pid" | cut -d' ' -f1)if [ -n "$serviceName" ];thenlogdir=$(find "/opt/serivce/log/"$serviceName -name "serivce_trace.log" -mmin -360)if [ -n "$logdir" ];thenctime=$(date " %m-%d %H:%M")slowinfo=$( grep "$ctime" "$logdir" | grep ExecuteTimeFilter | grep -E ",time:[2-9]{2,}|,time:[0-9]{4,}" | awk -F',' '{print $1","$4","$5}')msg=$msg$pid"-"$serviceName"-"$slowinfo"||"fielsefor fileName in $webDirdofileDir=$(ps -ef | grep -v grep | grep "$pid" | grep "$fileName" )if [ -n "$fileDir" ];thenlogdir=$(find "/opt/web/"$fileName"/logs/" -name "test.com_access.log.*" -mmin -360)if [ -n "$logdir" ];thenctime=$(date " %m-%d %H:%M")slowinfo=$(grep "$ctime" "$logdir" | awk -F' ' '{print $6",time="$7 }' | grep -E ",time=[0-9].[2-9]{2,}")msg=$msg$pid"-"$fileName"-"$slowinfo"||"fifidonefi
doneip=$(ip addr | grep 'BROADCAST' -A2 | tail -n1 | awk '{print $2}' | cut -f1 -d '/')ticket=$(cat /opt/shell/ticket.txt)curl $pushurl \-H "Accept: application/json" \-H 'Content-Type: application/json' \-d \ '{"ip": "'"${ip}"'", "ticket": "'"${ticket}"'", "data": "'"${msg}"'"}'
架构设计@工程设计@服务稳定性之路
这篇关于轻量级监控平台之慢日志监控的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!