fix: 代码名称优化 #huacheng
This commit is contained in:
@@ -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
|
||||||
*/
|
*/
|
||||||
@@ -107,9 +108,9 @@ public class DispatchAlarm {
|
|||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
// 若是恢复告警 需对监控状态进行恢复
|
// 若是恢复告警 需对监控状态进行恢复
|
||||||
if (alert.getStatus() == CommonConstants.ALERT_STATUS_CODE_RESTORED) {
|
if (alert.getStatus() == CommonConstants.ALERT_STATUS_CODE_RESTORED) {
|
||||||
monitorService.updateMonitorStatus(alert.getMonitorId(), CommonConstants.AVAILABLE_CODE);
|
monitorService.updateMonitorStatus(alert.getMonitorId(), CommonConstants.AVAILABLE_CODE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// 告警落库
|
// 告警落库
|
||||||
alertService.addAlert(alert);
|
alertService.addAlert(alert);
|
||||||
@@ -122,22 +123,37 @@ 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 告警信息
|
||||||
*/
|
*/
|
||||||
private void sendFlyBookAlert(NoticeReceiver receiver, Alert alert) {
|
private void sendFlyBookAlert(NoticeReceiver receiver, Alert alert) {
|
||||||
FlyBookWebHookDto flyBookWebHookDto = new FlyBookWebHookDto();
|
FlyBookWebHookDto flyBookWebHookDto = new FlyBookWebHookDto();
|
||||||
@@ -184,8 +200,9 @@ public class DispatchAlarm {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 通过钉钉机器人发送告警信息
|
* 通过钉钉机器人发送告警信息
|
||||||
* @param receiver 通知配置信息
|
*
|
||||||
* @param alert 告警信息
|
* @param receiver 通知配置信息
|
||||||
|
* @param alert 告警信息
|
||||||
*/
|
*/
|
||||||
private void sendDingTalkRobotAlert(NoticeReceiver receiver, Alert alert) {
|
private void sendDingTalkRobotAlert(NoticeReceiver receiver, Alert alert) {
|
||||||
DingTalkWebHookDto dingTalkWebHookDto = new DingTalkWebHookDto();
|
DingTalkWebHookDto dingTalkWebHookDto = new DingTalkWebHookDto();
|
||||||
@@ -217,12 +234,13 @@ public class DispatchAlarm {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 通过企业微信发送告警信息
|
* 通过企业微信发送告警信息
|
||||||
* @param receiver 通知配置信息
|
*
|
||||||
* @param alert 告警信息
|
* @param receiver 通知配置信息
|
||||||
|
* @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")
|
||||||
@@ -231,16 +249,16 @@ public class DispatchAlarm {
|
|||||||
if (alert.getPriority() < CommonConstants.ALERT_PRIORITY_CODE_WARNING) {
|
if (alert.getPriority() < CommonConstants.ALERT_PRIORITY_CODE_WARNING) {
|
||||||
content.append("告警级别 : <font color=\"warning\">")
|
content.append("告警级别 : <font color=\"warning\">")
|
||||||
.append(CommonUtil.transferAlertPriority(alert.getPriority())).append("</font>\n");
|
.append(CommonUtil.transferAlertPriority(alert.getPriority())).append("</font>\n");
|
||||||
}else {
|
} else {
|
||||||
content.append("告警级别 : <font color=\"comment\">")
|
content.append("告警级别 : <font color=\"comment\">")
|
||||||
.append(CommonUtil.transferAlertPriority(alert.getPriority())).append("</font>\n");
|
.append(CommonUtil.transferAlertPriority(alert.getPriority())).append("</font>\n");
|
||||||
}
|
}
|
||||||
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 {
|
||||||
@@ -273,10 +291,10 @@ public class DispatchAlarm {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private void sendEmailAlert(final NoticeReceiver receiver,final Alert alert){
|
private void sendEmailAlert(final NoticeReceiver receiver, final Alert alert) {
|
||||||
try{
|
try {
|
||||||
MimeMessage mimeMessage = javaMailSender.createMimeMessage();
|
MimeMessage mimeMessage = javaMailSender.createMimeMessage();
|
||||||
MimeMessageHelper messageHelper = new MimeMessageHelper(mimeMessage,true,"UTF-8");
|
MimeMessageHelper messageHelper = new MimeMessageHelper(mimeMessage, true, "UTF-8");
|
||||||
messageHelper.setSubject("TanCloud探云-监控告警");
|
messageHelper.setSubject("TanCloud探云-监控告警");
|
||||||
//设置发件人Email
|
//设置发件人Email
|
||||||
messageHelper.setFrom(emailFromUser);
|
messageHelper.setFrom(emailFromUser);
|
||||||
@@ -286,10 +304,10 @@ public class DispatchAlarm {
|
|||||||
//构建邮件模版
|
//构建邮件模版
|
||||||
String process = mailService.buildAlertHtmlTemplate(alert);
|
String process = mailService.buildAlertHtmlTemplate(alert);
|
||||||
//设置邮件内容模版
|
//设置邮件内容模版
|
||||||
messageHelper.setText(process,true);
|
messageHelper.setText(process, true);
|
||||||
javaMailSender.send(mimeMessage);
|
javaMailSender.send(mimeMessage);
|
||||||
}catch (Exception e){
|
} catch (Exception e) {
|
||||||
log.error("[邮箱告警] error,Exception information={}",e.getMessage());
|
log.error("[邮箱告警] error,Exception information={}", e.getMessage());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -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消息
|
||||||
Reference in New Issue
Block a user