Skip to content

轮询检测Apache状态并启用钉钉报警

shell
#!/bin/bash

shell_user="root"
shell_domain="apache"

shell_list="/root/ip_list"
shell_row=`cat $shell_list |wc -l`


function trans_text(){
text=$1

curl 'https://oapi.dingtalk.com/robot/send?access_token=b4fcf5862088a1bc7f2bf66a' -H'Content-Type: application/json' -d'{ #指定钉钉机器人hook地址
            "msgtype": "text",
            "text": {
            "content": "'"$text"'"
        },
}'
}


function apache_check_80(){
    ip=$1
    URL="http://$ip/index.html"
    HTTP_CODE=`curl -o /dev/null -s -w "%{http_code}" "${URL}"`
    if [ $HTTP_CODE != 200 ]
        thentrans_text "
================================================================= \\n
$ip Apache 服务器状态异常,网页返回码: '"$HTTP_CODE"' 请及时处理 ! \\n
================================================================= \\n"
    fi
}

while true
do

shell_list="/root/ip_list"
shell_row=`cat $shell_list |wc -l`
    for temp in `seq 1 $shell_row`
    do
            Ip_Addr=`cat $shell_list |head -n $temp |tail -n 1`
        apache_check_80 $Ip_Addr
    done

    sleep 10
done