Linux 脚本检测服务端口可用性并发送企业微信通知
检测服务端口是否可用
在 Linux 环境中,您可以使用以下脚本检测服务端口是否可用,并发送通知到企业微信机器人:
# 定义变量
server_ip='localhost'
server_port='9040'
check_url='http://${server_ip}:${server_port}/healthInfo'
result=$(curl --connect-timeout 3 '${check_url}' 2>&1)
TRUEINFO=$(echo $result | sed 's/<\/br>/
/g')
ERROINFO=$(echo $result | sed 's/.*Connection timed out.*/警告:$APP_NAME 服务端口检测超时,请排查!/')
curl -H 'Content-Type: application/json;charset=utf-8' -d '{"msgtype": "markdown","markdown": {"content":"# [开发环境]-[JAVA后端]-[f存活探测]
>## 请注意:过量的变更内容会导致输出为空.
$TRUEINFO "}}' 'https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=04a90303-2a83-4fd3-b315-9b12cf25484a'
curl -H 'Content-Type: application/json;charset=utf-8' -d '{"msgtype": "markdown","markdown": {"content":"# [开发环境]-[JAVA后端]-[f存活探测]
>## 请注意:过量的变更内容会导致输出为空.
$ERRINFO "}}' 'https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=04a90303-2a83-4fd3-b315-9b12cf25484a'
将以上代码添加到 /opt/*/operate.sh 脚本中第四行,注意不能删除原脚本中第四行内容。
请注意:
- 以上代码仅供参考,具体实现需要根据实际情况进行修改。
- 变量
server_ip和server_port需要根据服务的实际 IP 和端口进行修改。 check_url为检测服务可用性的 URL 地址,可以根据实际情况进行修改。result变量为curl命令的输出结果,通过sed命令对其进行处理,得到TRUEINFO和ERROINFO两个变量,分别为服务可用和不可用的输出信息。- 最后,使用
curl命令将信息发送到企业微信机器人中,实现通知功能。
相关知识:
curl命令用于从 URL 获取数据,并支持多种选项和参数,例如--connect-timeout用于设置连接超时时间。sed命令用于文本处理,可以用于替换、删除、插入等操作。- 企业微信机器人可以通过自定义 webhook 地址接收消息,并进行处理。
其他建议:
- 可以将脚本添加到系统定时任务中,定期执行检测。
- 可以根据实际需要修改通知内容和方式。
- 可以使用更复杂的脚本逻辑来实现更复杂的检测和通知功能。
原文地址: https://www.cveoy.top/t/topic/mKMD 著作权归作者所有。请勿转载和采集!