fix:修改webSocket推送信息格式为json并增加告警id

iec104
郭承 8 months ago
parent 32f0262673
commit b27c84c576

@ -34,6 +34,6 @@ public class TestController extends BasicController {
@GetMapping("sendMsg")
@ApiOperation("发送消息")
public void sendMsg(String msg) {
webSocketServer.sendMessage(msg);
webSocketServer.sendMessage(msg , null);
}
}

@ -0,0 +1,10 @@
package com.xydl.cac.model;
import lombok.Data;
@Data
public class MessageModel {
int type;
String content;
Integer warningId;
}

@ -1,14 +1,14 @@
package com.xydl.cac.socket;
import com.xydl.cac.model.MessageModel;
import com.xydl.cac.util.JSONUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component;
import javax.websocket.*;
import javax.websocket.server.ServerEndpoint;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.*;
@ServerEndpoint(value = "/websocket")
@Component
@ -29,12 +29,17 @@ public class WebSocketServer {
log.info("剩余socket连接数" + sessionPools.size());
}
public void sendMessage(String message) {
public void sendMessage(String message , Integer warningId) {
MessageModel msg = new MessageModel();
msg.setType(1);
msg.setContent(message);
msg.setWarningId(warningId);
String json = JSONUtil.object2Json(msg);
Iterator<Session> it = sessionPools.listIterator();
while (it.hasNext()) {
Session session = it.next();
try {
session.getBasicRemote().sendText(message);
session.getBasicRemote().sendText(json);
} catch (Exception ignore) {
}
}

@ -51,7 +51,7 @@ public class AmpliDownloadTask {
} catch (Exception e) {
log.error("AmpliDownloadTask.downloadAll error.", e);
String str = "SFTP下载文件异常: " + e.getMessage();
webSocketServer.sendMessage(str);
webSocketServer.sendMessage(str , null);
dingTalkPushUtil.pushText(str);
}
}
@ -77,7 +77,7 @@ public class AmpliDownloadTask {
log.error("AmpliDownloadTask.downloadServer error.", e);
String str = "SFTP下载文件异常: " + config.getName() + " " +
config.getIp() + " " + e.getMessage();
webSocketServer.sendMessage(str);
webSocketServer.sendMessage(str , null);
dingTalkPushUtil.pushText(str);
} finally {
sftpTool.disconnect();

@ -55,7 +55,7 @@ public class I2syncTask {
} catch (Exception e) {
log.error("I2syncTask.syncAll error.", e);
String str = "i2同步导出数据异常: " + e.getMessage();
webSocketServer.sendMessage(str);
webSocketServer.sendMessage(str , null);
dingTalkPushUtil.pushText(str);
}
}

@ -96,7 +96,7 @@ public class RuleCheckTask {
str = str + ", 最后采集时间:" + DateUtil.format(model.getLastDTime());
}
log.warn("触发规则告警: " + str);
webSocketServer.sendMessage(str);
webSocketServer.sendMessage(str , warning.getId());
dingTalkPushUtil.pushText(str);
}

Loading…
Cancel
Save