wzh789 发表于 2018-11-13 12:25:42

nginx编译安装 zabbix自定义监控nginx-Chauncey

# cat /opt/nginx_TCP_status.sh  
#!/bin/bash
  
tcp_status_fun(){
  
TCP_STAT=$1
  
#netstat -n | awk '/^tcp/ {++state[$NF]} END {for(key in state) print key,state}' > /tmp/netstat.tmp
  
ss -ant | awk 'NR>1 {++s[$1]} END {for(k in s) print k,s}' > /tmp/netstat.tmp
  
TCP_STAT_VALUE=$(grep "$TCP_STAT" /tmp/netstat.tmp | cut -d ' ' -f2)
  
if [ -z $TCP_STAT_VALUE ];then
  
TCP_STAT_VALUE=0
  
fi
  
echo $TCP_STAT_VALUE
  
}
  
nginx_status_fun(){
  
NGINX_PORT=$1
  
NGINX_COMMAND=$2
  
nginx_active(){
  
      /usr/bin/curl "http://192.168.174.137:"$NGINX_PORT"/status/" 2>/dev/null| grep 'Active' | awk '{print $NF}'
  
      }
  
nginx_reading(){
  
      /usr/bin/curl "http://192.168.174.137:"$NGINX_PORT"/status/" 2>/dev/null| grep 'Reading' | awk '{print $2}'
  
       }
  
nginx_writing(){
  
      /usr/bin/curl "http://192.168.174.137:"$NGINX_PORT"/status/" 2>/dev/null| grep 'Writing' | awk '{print $4}'
  
       }
  
nginx_waiting(){
  
      /usr/bin/curl "http://192.168.174.137:"$NGINX_PORT"/status/" 2>/dev/null| grep 'Waiting' | awk '{print $6}'
  
       }
  
nginx_accepts(){
  
      /usr/bin/curl "http://192.168.174.137:"$NGINX_PORT"/status/" 2>/dev/null| awk NR==3 | awk '{print $1}'
  
       }
  
nginx_handled(){
  
      /usr/bin/curl "http://192.168.174.137:"$NGINX_PORT"/status/" 2>/dev/null| awk NR==3 | awk '{print $2}'
  
       }
  
nginx_requests(){
  
      /usr/bin/curl "http://192.168.174.137:"$NGINX_PORT"/status/" 2>/dev/null| awk NR==3 | awk '{print $3}'
  
       }
  
case $NGINX_COMMAND in
  
active)
  
nginx_active;
  
;;
  
reading)
  
nginx_reading;
  
;;
  
writing)
  
nginx_writing;
  
;;
  
waiting)
  
nginx_waiting;
  
;;
  
accepts)
  
nginx_accepts;
  
;;
  
handled)
  
nginx_handled;
  
;;
  
requests)
  
nginx_requests;
  
esac
  
}
  
main(){
  
case $1 in
  
tcp_status)
  
tcp_status_fun $2;
  
;;
  
nginx_status)
  
nginx_status_fun $2 $3;
  
;;
  
*)
  
echo $"Usage: $0 {tcp_status key|nginx_status key}"
  
esac
  
}
  
main $1 $2 $3


页: [1]
查看完整版本: nginx编译安装 zabbix自定义监控nginx-Chauncey