一、前置说明
ds配置好工作流后,比较重要的一个就是上线后的监控报警服务,如果你是基于企微作为协同办公的,WeChat群组预警必须是要安排上的,文章基于自建应用配合群组方式构建预警群,接入后,任务成功或者异常,会通过企微应用在群组内发消息通知,废话不多说,开干!
二、企微前置准备
1、企业id
企业微信登录管理后台
https://work.weixin.qq.com/wework_admin/frame
点击【我的企业】- 获取企业ID,如图所示
2、秘钥
这里可以通过获取自建应用来加入群聊,秘钥即为应用的Secret,获取方式为【企微管理后台】-【应用管理】-【自建应用】,具体如下
点击查看,会下发到管理员企微通知上;另外注意应用的可见范围,最好是全员可见,坑之一
3、群聊ID
一、配置应用可信ip
在获取chatid之前,我们必须确保当前服务器ip在可信ip之列,具体配置【应用管理】-【应用详情】-【企业可信IP】
这里默认你是经过服务器授权的,即已经完成【网页授权及JS-SDK】,否则是不允许配置企业可信ip的
注意这里的IP是公网IP,win的话可以百度输入ip,直接查看的到,如果是云服务器可以去后台查看公网ip
二、获取chatid
目前企微只支持通过api方式创建的群聊有chatid,另外创建群聊也需要获取具体加入群聊用户的userid,下面通过Linux的curl方式获取chatid,win可使用postman等工具。具体分三步,
- 获取token
https://developer.work.weixin.qq.com/document/path/91039
#corpid 上文的企业ID
#corpsecret 上文的Secret
curl --location https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=ID&corpsecret=SECRET
- 手机号获取用户ID
https://developer.work.weixin.qq.com/document/path/95402
curl --location 'https://qyapi.weixin.qq.com/cgi-bin/user/getuserid?access_token=YOU_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
"mobile": "16666666666"
}'
- 获取chatid
创建群聊会话 - 接口文档 - 企业微信开发者中心
原接口里的chatid为非必填项,在这里尽量自定义,随机的结果比较长,放到DS会报错,这个坑要避
curl --location 'https://qyapi.weixin.qq.com/cgi-bin/appchat/create?access_token=YOU_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
"name" : "数据预警",
"owner" : "USERID",
"userlist" : ["USERID1", "USERID2"],
"chatid" : "datawarn001"
}'
上述获取完成后可以去DS配置告警组了,go
三、DS配置告警服务
管理员账户登录【安全中心】-【告警实例管理】
新建WeChat告警实例,注意这里的发送类型选择GROUP CHAT/群聊
配置好之后新建shell类型任务测试可用性
这里运行任务记得修改【通知策略】为失败发或者成功失败都发,小细节,然后选择你刚刚新建的报警组
具体通知如下