企业微信消息告警服务器配置:零基础配置企业微信消息告警服务器

零基础配置企业微信消息告警服务器全流程

很多运维新手希望把服务器CPU高、磁盘满等异常信息推送到企业微信群,但不知道从哪下手。
本文就以企业微信消息告警服务器配置为主线,用最直白的方式带你一步步实现。

准备阶段:你需要的三样东西

  • 一台Linux服务器(本文以CentOS 7为例,Ubuntu也通用)
  • 企业微信账号(没有的话先注册团队版,免费)
  • 一个能联网的命令行环境(curl或python3均可)

确认服务器已安装curl:

curl --version

如果没有,用包管理器安装:

sudo yum install -y curl   # CentOS
sudo apt install -y curl   # Ubuntu

第一步:在企业微信后台创建机器人并获取Webhook地址

  1. 登录企业微信管理后台(https://work.weixin.qq.com/wework_admin/loginpage)
  2. 左侧菜单点击「应用管理」→「应用」→「创建应用」
  3. 应用类型选择「机器人」,填写名称(例如“服务器告警”),上传头像,选择可见范围(至少包含你自己或运维群)
  4. 创建成功后,进入应用详情页,点击「Webhook」旁边的「复制地址」按钮,得到类似这样的URL:
https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx

这个地址就是后续发送告警的唯一凭证,不要泄露给无关人员。

第二步:编写告警发送脚本(Shell版)

在你的服务器上创建一个脚本文件,比如 /usr/local/bin/send_wechat_alert.sh

#!/bin/bash
# 企业微信消息告警服务器配置 - 发送脚本

WEBHOOK_URL="替换为你的Webhook地址"
CONTENT="$1"   # 接收命令行第一个参数作为消息内容

if [ -z "$CONTENT" ]; then
    CONTENT="服务器默认测试告警,请忽略"
fi

curl -s -H "Content-Type: application/json" \
     -d "{\"msgtype\":\"text\",\"text\":{\"content\":\"$CONTENT\"}}" \
     $WEBHOOK_URL
注意:消息体必须严格按JSON格式,花括号和双引号都不能错。如果内容包含特殊字符,建议用Python或借助jq转义。

赋予执行权限:

chmod +x /usr/local/bin/send_wechat_alert.sh

第三步:编写监控脚本并加入定时任务

假设我们要监控根分区磁盘使用率,超过80%就发告警。
新建监控脚本 /usr/local/bin/check_disk.sh

#!/bin/bash
THRESHOLD=80
CURRENT=$(df / | awk 'NR==2 {print $5}' | sed 's/%//')

if [ "$CURRENT" -gt "$THRESHOLD" ]; then
    /usr/local/bin/send_wechat_alert.sh "服务器告警:根分区磁盘使用率已达 ${CURRENT}%"
fi

赋予执行权限后,加入crontab每5分钟检查一次:

crontab -e

添加一行:

*/5 * * * * /usr/local/bin/check_disk.sh >/dev/null 2>&1

避坑指南:新手最容易翻车的三个点

  1. Webhook地址拼写错误 – 复制时注意不要漏掉key=后面的完整参数,少了一位都不行。
  2. 消息JSON格式不正确 – 常见错误:字符串内未转义双引号、缺少花括号、UTF-8编码问题。建议先用固定消息手动测试:
   curl -s -H "Content-Type: application/json" -d '{"msgtype":"text","text":{"content":"测试消息"}}' 你的Webhook地址
  1. crontab环境变量问题 – 脚本中尽量使用绝对路径,不要在crontab里依赖相对路径或未加载的$PATH

验证告警是否生效

方法一:手动触发脚本

/usr/local/bin/send_wechat_alert.sh "手动测试,确认企业微信能收到"

如果企业微信群收到了消息,说明配置成功。

方法二:临时降低阈值验证

将监控脚本中的THRESHOLD改为50,然后手动制造一个高磁盘占用的文件(例如 dd if=/dev/zero of=/tmp/testfile bs=1M count=100),等待crontab执行一次,看是否收到告警。
测试完后记得删除临时文件并恢复阈值。

---

到这一步,你已经完成了企业微信消息告警服务器配置的核心流程。
以后想监控其他指标(内存、进程、日志关键字),只需要修改监控脚本中的检测逻辑,调用同一个发送脚本即可。
遇到异常时优先回看避坑指南,大部分问题都能快速定位。

分享到:
上一篇
钉钉机器人运维告警对接零基础教程
下一篇
邮件告警服务搭建运维通知:零基础搭建邮件告警服务
1
系统公告

高考专属福利来袭|凭准考证免费领香港 CN2 云服务器

值高考落幕之际,泽御云开启考生专属回馈 + 产品限时特惠双重活动,助力学子暑期学习建站 高考 考生专属福利 全体应届高考生,凭高考准考证即可免费申领【香港 CN2 轻量云服务器,4 核 4G AMD 处理器】,免费使用周期 30 天,可用于搭建个人站点、编程实操、技术实训,祝各位考生金榜题名,前程似锦! 泽御云资质齐全合规自营机房,线路覆盖香港 CN2、国内 BGP、内蒙电信、美国精品线路,售后全天候技术支持。 官方网站:www.zeyuyun.com,活动限时有效,优惠逾期不再保留。
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意