#!/bin/bash while [ 1 ] do pre_request_time_count=`cat /var/log/nginx/access.log |awk ‘{print $NF}‘|awk -F ‘"‘ ‘ $2>3 ‘|awk -F ‘"‘ ‘{print $2}‘|wc -l` # 取 request_tme 大于3秒的计数值 echo $pre_request_time_count sleep 300 last_request_time_count=`cat /var/log/nginx/access.log |awk ‘{print $NF}‘|awk -F ‘"‘ ‘ $2>3 ‘|awk -F ‘"‘ ‘{print $2}‘|wc -l` # 取5分钟后 request_time 大于3秒的计数值 echo $last_request_time_count if [ $pre_request_time_count -lt $last_request_time_count ]; then # 若计数值增加 , 则发送邮件关于 request_time 大于3秒的日志信息到相关收件人员 cat /var/log/nginx/access.log |awk ‘{print $0}‘|awk -F ‘"‘ ‘ $(NF-1)>3 ‘ | /bin/mail -s "dataline-prod nginx request_time 超过3秒" [email protected]&&***.cn 157[email protected]****.com fi done
并加入开机启动 :
[[email protected] ~]# cat /etc/rc.local sh /etc/zabbix/scripts/nginx_request_time.sh & > /dev/null 2>&1
邮件配置参考:
https://www.cnblogs.com/weifeng1463/p/7508485.html
原文地址:https://www.cnblogs.com/weifeng1463/p/9870110.html
时间: 2024-07-29 17:45:14