fix: 代码名称优化 #huacheng

This commit is contained in:
huacheng
2022-04-05 22:11:24 +08:00
parent e99dd2e870
commit 4ad7972956
2 changed files with 58 additions and 32 deletions

View File

@@ -7,7 +7,7 @@ import com.usthe.common.entity.alerter.Alert;
import com.usthe.alert.service.AlertService; import com.usthe.alert.service.AlertService;
import com.usthe.manager.pojo.dto.DingTalkWebHookDto; import com.usthe.manager.pojo.dto.DingTalkWebHookDto;
import com.usthe.manager.pojo.dto.FlyBookWebHookDto; import com.usthe.manager.pojo.dto.FlyBookWebHookDto;
import com.usthe.manager.pojo.dto.WeWorkWebHookDto; import com.usthe.manager.pojo.dto.WxWorkWebHookDto;
import com.usthe.common.util.CommonConstants; import com.usthe.common.util.CommonConstants;
import com.usthe.common.entity.manager.Monitor; import com.usthe.common.entity.manager.Monitor;
import com.usthe.common.entity.manager.NoticeReceiver; import com.usthe.common.entity.manager.NoticeReceiver;
@@ -31,6 +31,7 @@ import java.util.List;
/** /**
* 告警信息入库分发 * 告警信息入库分发
*
* @author tom * @author tom
* @date 2021/12/10 12:58 * @date 2021/12/10 12:58
*/ */
@@ -122,20 +123,35 @@ public class DispatchAlarm {
for (NoticeReceiver receiver : receivers) { for (NoticeReceiver receiver : receivers) {
switch (receiver.getType()) { switch (receiver.getType()) {
// todo 短信通知 // todo 短信通知
case 0: break; case 0:
case 1: sendEmailAlert(receiver, alert); break; break;
case 2: sendWebHookAlert(receiver, alert); break; case 1:
case 3: sendWeChatAlert(receiver, alert); break; sendEmailAlert(receiver, alert);
case 4: sendWeWorkRobotAlert(receiver, alert); break; break;
case 5: sendDingTalkRobotAlert(receiver, alert); break; case 2:
case 6: sendFlyBookAlert(receiver,alert); break; sendWebHookAlert(receiver, alert);
default: break; break;
case 3:
sendWeChatAlert(receiver, alert);
break;
case 4:
sendWeWorkRobotAlert(receiver, alert);
break;
case 5:
sendDingTalkRobotAlert(receiver, alert);
break;
case 6:
sendFlyBookAlert(receiver, alert);
break;
default:
break;
} }
} }
} }
/** /**
* 通过飞书发送告警信息 * 通过飞书发送告警信息
*
* @param receiver 接收人 * @param receiver 接收人
* @param alert 告警信息 * @param alert 告警信息
*/ */
@@ -184,6 +200,7 @@ public class DispatchAlarm {
/** /**
* 通过钉钉机器人发送告警信息 * 通过钉钉机器人发送告警信息
*
* @param receiver 通知配置信息 * @param receiver 通知配置信息
* @param alert 告警信息 * @param alert 告警信息
*/ */
@@ -217,12 +234,13 @@ public class DispatchAlarm {
/** /**
* 通过企业微信发送告警信息 * 通过企业微信发送告警信息
*
* @param receiver 通知配置信息 * @param receiver 通知配置信息
* @param alert 告警信息 * @param alert 告警信息
*/ */
private void sendWeWorkRobotAlert(NoticeReceiver receiver, Alert alert) { private void sendWeWorkRobotAlert(NoticeReceiver receiver, Alert alert) {
WeWorkWebHookDto weWorkWebHookDTO = new WeWorkWebHookDto(); WxWorkWebHookDto wxWorkWebHookDTO = new WxWorkWebHookDto();
WeWorkWebHookDto.MarkdownDTO markdownDTO = new WeWorkWebHookDto.MarkdownDTO(); WxWorkWebHookDto.MarkdownDTO markdownDTO = new WxWorkWebHookDto.MarkdownDTO();
StringBuilder content = new StringBuilder(); StringBuilder content = new StringBuilder();
content.append("<font color=\"info\">[TanCloud探云告警通知]</font>\n告警目标对象 : <font color=\"info\">") content.append("<font color=\"info\">[TanCloud探云告警通知]</font>\n告警目标对象 : <font color=\"info\">")
.append(alert.getTarget()).append("</font>\n") .append(alert.getTarget()).append("</font>\n")
@@ -237,10 +255,10 @@ public class DispatchAlarm {
} }
content.append("内容详情 : ").append(alert.getContent()); content.append("内容详情 : ").append(alert.getContent());
markdownDTO.setContent(content.toString()); markdownDTO.setContent(content.toString());
weWorkWebHookDTO.setMarkdown(markdownDTO); wxWorkWebHookDTO.setMarkdown(markdownDTO);
String webHookUrl = WeWorkWebHookDto.WEBHOOK_URL + receiver.getWechatId(); String webHookUrl = WxWorkWebHookDto.WEBHOOK_URL + receiver.getWechatId();
try { try {
ResponseEntity<String> entity = restTemplate.postForEntity(webHookUrl, weWorkWebHookDTO, String.class); ResponseEntity<String> entity = restTemplate.postForEntity(webHookUrl, wxWorkWebHookDTO, String.class);
if (entity.getStatusCode() == HttpStatus.OK) { if (entity.getStatusCode() == HttpStatus.OK) {
log.debug("Send weWork webHook: {} Success", webHookUrl); log.debug("Send weWork webHook: {} Success", webHookUrl);
} else { } else {

View File

@@ -7,6 +7,7 @@ import lombok.NoArgsConstructor;
/** /**
* 企业微信机器人请求消息体 * 企业微信机器人请求消息体
*
* @author 花城 * @author 花城
* @version 1.0 * @version 1.0
* @date 2022/2/21 6:55 下午 * @date 2022/2/21 6:55 下午
@@ -15,15 +16,22 @@ import lombok.NoArgsConstructor;
@Builder @Builder
@AllArgsConstructor @AllArgsConstructor
@NoArgsConstructor @NoArgsConstructor
public class WeWorkWebHookDto { public class WxWorkWebHookDto {
public static final String WEBHOOK_URL = "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key="; public static final String WEBHOOK_URL = "https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=";
/**
* markdown格式
*/
private static final String MARKDOWN = "markdown"; private static final String MARKDOWN = "markdown";
/**
* 文本格式
*/
private static final String TEXT = "TEXT";
/** /**
* 消息类型 * 消息类型
*/ */
private String msgtype = MARKDOWN; private String msgType = MARKDOWN;
/** /**
* markdown消息 * markdown消息