INFO-N9E短信告警配置
更新时间: 2025-10-28 16:00:37
阅读 15
INFO-N9E短信告警配置
适用模块/版本
N9E
具体说明
N9E 配置短信告警
使用示例
需要客户侧提供:
短信接口地址
auth-key
auth-name
1、在ops上机器使用以下命令测试网络是否通
curl -v -X POST "http://***" \
-H "Content-Type: application/json" \
-H "auth-key: ***" \
-H "auth-name: ***" \
-d '{
"phoneNumber": "188***",
"templateCode": "0",
"contents": ["1234", "5分钟"]
}'
可以发送成功往下进行,不成功联系客户打通网络权限
2、修改n9e短信相关配置
#修改相关配置,新增sms选项,ops机器
cd /home/easyops/easyops/n9e-current/n9eetc.temp/
vi webapi.conf

#新增sms.tpl
cd /home/easyops/easyops/n9e-current/n9eetc.temp/template
cp feishu.tpl sms.tpl
#完善send_sms方法
cd /home/easyops/easyops/n9e-current/n9eetc.temp/script/
vi notify.py
users = payload.get('event').get("notify_users_obj")
phones = []
for u in users:
if u.get("phone"):
phone = str(u.get("phone")).strip()
if phone:
phones.append(phone)
if not phones:
return
sms_content = payload.get('tpls').get("sms.tpl", "sms.tpl not found")
auth_key = "***"
auth_name = "***"
url = "http://***"
opener = urllib2.build_opener(urllib2.HTTPHandler())
method = "POST"
for phone in phones:
body = {
"phoneNumber": phone,
"templateCode": "0",
"contents": [sms_content],
"limit": True,
"second": 60
}
request = urllib2.Request(url, data=json.dumps(body))
request.add_header("Content-Type", "application/json;charset=utf-8")
request.add_header("auth-key", auth_key)
request.add_header("auth-name", auth_name)
request.get_method = lambda: method
try:
connection = opener.open(request)
print(connection.read())
except urllib2.HTTPError, error:
print(error)
4、重启N9E
cd /home/easyops/easyops/n9e-current
./stop.sh
./run.sh
将用户添加进团队

开启sms通知,因为是新增的,所有规则都要打开
注:可以克隆一条告警规则,将promql修改为相反的判断逻辑触发告警,或者把报警阈值调小,测试短信是否可以发送成功。发送不成功docker logs n9e相关容器查看报错日志。
作者:楚展航
文档反馈
以上内容对您是否有帮助?