离线数仓中使用的调度是dolphinscheduler,虽然可以直接配置企微通知到群,但是需要在公司申请权限比较繁琐,于是就是通过调用dolphinscheduler的接口,拿到任务执行的情况,而后在调用企业微信的接口,通过企业微信的接口通知到企微群里;
调用dolphinscheduler接口文档:
2.接口文档:
http://{api server ip}:12345/dolphinscheduler/doc.html?language=zh_CN&lang=cn
api server ip 就是你安装dolphinscheduler的api server的ip地址
在shell脚本中调用dolphinscheduler的接口就是通过curl 其中header中存放创建的认证token
curl -X GET -H "token":"4a22fbf33c6af98c7ae8c059beb09d81" \
"http://10.150.60.5:12345/dolphinscheduler/projects/885017613991936/process-instances?searchVal=&pageSize=10&pageNo=1&host=&stateType=&startDate=&endDate=&executorName=&_t=0.5091054026129096" \
| jq .'["data"].totalList[0].state'
对于curl的使用可以看下面的文章参考
对于如何在企微群通过机器人预警,可通过下面文档查找
同样对于实时任务预警也是调用flink提供的接口达到监控任务健康的状态,最后在通过一定的逻辑处理通过接口发送数据到企微中进行通知,当然也可以通知到邮箱了都是可以的;
当然里面也涉及到了对于获取到的JSON数据在shell脚本中的解析,使用的jq这个开源工具。jq使用手册 通过shell脚本解析JSON数据