通过端口监控服务是否掉线(shell脚本)

#!/bin/bash
check_port() {                        
    if [[ -z "$(lsof -i:$1)" ]]; then
        echo "$2"
    fi
}                                            # 这里通过lsof监听端口,如果没有请用yum安装lsof

dingpush() {
    text="$1已掉线"
    data='{"msgtype": "markdown","markdown": {"title":"测试环境","text":"服务器121:'$text' "},"at":{"isAtAll":true}}'
    curl --request POST \
     --url '这里填写你自己的钉钉机器人的api地址' \
     --header 'content-type: application/json' \
     --data "$data"
}


while true; do
    report_meal=$(check_port 5010 "报餐 ")   # 这里调用check_port函数判断各个系统的
    fsrv=$(check_port 8585 "图片 ")          # 端口是否在被使用,端口号作为变量$1,
    enhow=$(check_port 5050 "官网 ")         # 系统名称作为变量$2
    shc2=$(check_port 5005 "ERP ")
    status="$report_meal$fsrv$enhow$shc2"    # status拼接所有系统的掉线信息发送钉钉
    if [[ ! -z "$status" ]]; then            # 如果没有掉线信息,则不触发钉钉告警
        dingpush $status
    fi

    sleep 30                                 # 30s运行一次
done

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值