问答详情
源自:1-2 nginx监控脚本

脚本分享额

老师的脚本能不能分享一下,方便分析学习

提问者:snow5hao 2016-02-25 09:43

个回答

  • mokeHappy
    2016-03-09 20:23:35
    已采纳

    利用操作系统命令
    网络命令: ping nslookup, nm-tool, tracertroute,
          dig, telnet, nc,curl
    监控命令 : ps,netstat,pgrep
    进程是否存在
    端口是否存在

    利用客户端命令,工具
      应用客户端:mysql,ab,mongo,php,jstack
       第三方工具包:nginxstatus, nagios-libexec
       集成命令(考虑可行性,安全性)

       服务端接口支持:
       1.nginx - http_stub_status_module
       2.nutcracker监控集群(redis,memcache) 状态
       3.Mongodb



       curl -m 5 -s -w %{http_code} http://10.156.11.173/ngx_status

       -o /dev/null --去掉一些输出


       Resettem=${tput sgr0}
       Nginxserver='http://10.156.11.173/nginx_status'

       Check_Nginx_Server(){
          Status_code=$(curl -m 5 -s -w %{http_code} ${Nginxserver} -o /dev/null)
          if[ $Status_code -eq 000 -o $Status_code -ge 500 ];then
            echo -e '\E[32m' "check http server error! Response status
        code is' $Status_code
           else
             Http_content=$(curl -s ${Nginxserver})
         echo -e '\E[ 32m' "check http server ok! \n"
         $Resettem $Http_content
              fi
       }

       Check_Nginx_Server


       --执行脚本
       sh check_server.sh
       cd monitor_man

       vim check_server.sh