您的位置 首页 java

java接入钉钉机器人实现告警通知

我们平时开发接口时,遇到接口异常,我们希望能第一时间得知。

以往的经验我们是通过邮件等方式告知相对于的人员。

用邮件的方式得知异常信息。

随着智能手机的发展,现在大多数的告警可以发送到相关的app上了。

目前常用的是发送到 微信 钉钉 这两款应用。

下面我们来看看放在钉钉,看看钉钉是怎么通过群机器人来发送告警信息的。

群机器人是钉钉群的高级扩展功能,群机器人可以将第三方服务的信息聚合到群聊中,实现自动化的信息同步。

借助钉钉机器人,通过调用官方提供的API,我们可以很方便地将异常告警信息通知到到相应的人员 。

java接入钉钉机器人实现告警通知

群机器人支持Webhook协议的自定义接入,支持更多可能性,我们可以通过自定义机器人聚合到钉钉群实现提醒功能。

下面来看看 java 接入钉钉机器人实现告警通知的步骤。

首先,我们要新建一个钉钉群,群成员至少需要3个人,建立好群后,创建一个机器人。

如图:

java接入钉钉机器人实现告警通知

建立成功后,这时钉钉会分配给我们一个链接,

 /robot/send?access_token=  

这个链接包含了access_token相关信息,我们把这个链接拷贝下来,放到我们的程序中来。

 import com.alibaba.fast JSON .JSONObject;
import org. apache .http.client.HttpClient;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.HttpClients;


import java.io.IO Exception ;
/**
* @CreateTime: 2022-01-15 23:40
* @Description: 钉钉机器人风险告警通知工具类
*/public class DingTalkUtil {
public  static  final String url = "/robot/send?access_token=";
public static  void  sendDingTalk(String path, String msg) throws IOException {
 HttpClient  httpClient = HttpClients.createDefault();
HttpPost httpPost = new HttpPost(url);
httpPost.addHeader("Content-Type", "application/json;  charset =utf-8");
JSONObject bodys = new JSONObject();
bodys.put("msgtype", "text");
JSONObject text = new JSONObject();
text.put("content",  msg );
bodys.put("text", text);
JSONObject at = new JSONObject();
at.put("isAtAll", false);
bodys.put("at", at);
StringEntity se = new StringEntity(bodys.toJSONString()," utf -8");
httpPost.setEntity(se);
httpClient.execute(httpPost);
}  

方法中用来的类,在 pom 文件添加依赖

 <dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.76</version>
</dependency>  

在我们需要告警的地方调用DingTalkUtil.sendDingTalk这个方法,就能实现了告警通知。

好了,关于java接入钉钉机器人实现告警通知就先简单写到这里。由于笔者知识及水平有限,文中错漏之处在所难免,如有不足之处,欢迎交流。

文章来源:智云一二三科技

文章标题:java接入钉钉机器人实现告警通知

文章地址:https://www.zhihuclub.com/193547.shtml

关于作者: 智云科技

热门文章

网站地图