diff --git a/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/event/NotifierEvent.java b/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/event/NotifierEvent.java
new file mode 100644
index 000000000..7df53e460
--- /dev/null
+++ b/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/event/NotifierEvent.java
@@ -0,0 +1,44 @@
+package org.dromara.monitor.admin.event;
+
+import lombok.Data;
+
+import java.io.Serial;
+import java.io.Serializable;
+
+/**
+ * 通知事件
+ *
+ * @author AprilWind
+ */
+@Data
+public class NotifierEvent implements Serializable {
+
+ @Serial
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 实例注册名称
+ */
+ private String registName;
+
+ /**
+ * 实例状态名称
+ */
+ private String statusName;
+
+ /**
+ * 实例ID
+ */
+ private String instanceId;
+
+ /**
+ * 实例状态
+ */
+ private String status;
+
+ /**
+ * 服务URL
+ */
+ private String serviceUrl;
+
+}
diff --git a/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/CustomNotifier.java b/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/CustomNotifier.java
index 0094f72fa..e2b529449 100644
--- a/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/CustomNotifier.java
+++ b/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/CustomNotifier.java
@@ -6,6 +6,8 @@ import de.codecentric.boot.admin.server.domain.events.InstanceEvent;
import de.codecentric.boot.admin.server.domain.events.InstanceStatusChangedEvent;
import de.codecentric.boot.admin.server.notify.AbstractEventNotifier;
import lombok.extern.slf4j.Slf4j;
+import org.dromara.common.core.utils.SpringUtils;
+import org.dromara.monitor.admin.event.NotifierEvent;
import org.springframework.stereotype.Component;
import reactor.core.publisher.Mono;
@@ -38,46 +40,24 @@ public class CustomNotifier extends AbstractEventNotifier {
String status = ((InstanceStatusChangedEvent) event).getStatusInfo().getStatus();
// 获取服务URL
String serviceUrl = instance.getRegistration().getServiceUrl();
- String statusName = null;
-
- // 根据实例状态执行相应的操作
- switch (status) {
- // 服务上线(实例成功启动并可以正常处理请求)
- case STATUS_UP:
- statusName = "服务上线";
- break;
-
- // 服务离线(实例被手动或自动地从服务中移除)
- case STATUS_OFFLINE:
- statusName = "服务离线";
- break;
-
- // 服务受限(表示实例在某些方面受限,可能无法完全提供所有服务)
- case STATUS_RESTRICTED:
- statusName = "服务受限";
- break;
-
- // 停止服务状态(表示实例已被标记为停止提供服务,可能是计划内维护或测试)
- case STATUS_OUT_OF_SERVICE:
- statusName = "停止服务状态";
- break;
-
- // 服务下线(实例因崩溃、错误或其他原因停止运行)
- case STATUS_DOWN:
- statusName = "服务下线";
- break;
-
- // 服务未知异常(监控系统无法确定实例的当前状态)
- case STATUS_UNKNOWN:
- statusName = "服务未知异常";
- break;
-
- // 默认情况(没有匹配的状态)
- default:
- break;
- }
+ String statusName = switch (status) {
+ case STATUS_UP -> "服务上线"; // 实例成功启动并可以正常处理请求
+ case STATUS_OFFLINE -> "服务离线"; //实例被手动或自动地从服务中移除
+ case STATUS_RESTRICTED -> "服务受限"; //表示实例在某些方面受限,可能无法完全提供所有服务
+ case STATUS_OUT_OF_SERVICE -> "停止服务状态"; //表示实例已被标记为停止提供服务,可能是计划内维护或测试
+ case STATUS_DOWN -> "服务下线"; //实例因崩溃、错误或其他原因停止运行
+ case STATUS_UNKNOWN -> "服务未知异常"; //监控系统无法确定实例的当前状态
+ default -> "未知状态"; //没有匹配的状态
+ };
log.info("Instance Status Change: 状态名称【{}】, 注册名称【{}】, 实例ID【{}】, 状态【{}】, 服务URL【{}】",
statusName, registName, instanceId, status, serviceUrl);
+ NotifierEvent notifier = new NotifierEvent();
+ notifier.setRegistName(registName);
+ notifier.setStatusName(statusName);
+ notifier.setInstanceId(instanceId);
+ notifier.setStatus(status);
+ notifier.setServiceUrl(serviceUrl);
+ SpringUtils.context().publishEvent(notifier);
}
});
}
diff --git a/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/InfoNotifier.java b/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/InfoNotifier.java
new file mode 100644
index 000000000..455883e38
--- /dev/null
+++ b/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/InfoNotifier.java
@@ -0,0 +1,34 @@
+package org.dromara.monitor.admin.notifier;
+
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
+import org.dromara.monitor.admin.event.NotifierEvent;
+import org.springframework.context.event.EventListener;
+import org.springframework.scheduling.annotation.Async;
+import org.springframework.stereotype.Service;
+
+/**
+ * 信息通知
+ *
+ * @author AprilWind
+ */
+@RequiredArgsConstructor
+@Slf4j
+@Service
+public class InfoNotifier {
+
+ /**
+ * 异步处理通知事件的方法
+ *
+ * 该方法会处理 `NotifierEvent` 事件,执行通知相关的操作,如发送邮件或短信
+ *
+ * @param notifier 事件对象,包含了需要通知的详细信息,包括注册名称、状态名称、实例 ID、状态和服务 URL
+ */
+ @Async
+ @EventListener
+ public void infoNotification(NotifierEvent notifier) {
+ // 在这里添加处理通知事件的逻辑
+ // 例如,依据 notifier 对象的信息发送邮件或短信通知
+ }
+
+}
From e25083aea4008aab6f9be801b18d98e32dc6ad1b Mon Sep 17 00:00:00 2001
From: AprilWind <2100166581@qq.com>
Date: Thu, 25 Jul 2024 10:55:46 +0800
Subject: [PATCH 3/3] =?UTF-8?q?del=20=E5=88=A0=E9=99=A4=E6=97=A0=E7=94=A8?=
=?UTF-8?q?=E4=BE=9D=E8=B5=96?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
ruoyi-extend/ruoyi-monitor-admin/pom.xml | 5 ---
.../monitor/admin/event/NotifierEvent.java | 44 -------------------
.../admin/notifier/CustomNotifier.java | 9 ----
.../monitor/admin/notifier/InfoNotifier.java | 34 --------------
4 files changed, 92 deletions(-)
delete mode 100644 ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/event/NotifierEvent.java
delete mode 100644 ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/InfoNotifier.java
diff --git a/ruoyi-extend/ruoyi-monitor-admin/pom.xml b/ruoyi-extend/ruoyi-monitor-admin/pom.xml
index 0ed2d293c..91194c61b 100644
--- a/ruoyi-extend/ruoyi-monitor-admin/pom.xml
+++ b/ruoyi-extend/ruoyi-monitor-admin/pom.xml
@@ -39,11 +39,6 @@
lombok
-
- org.dromara
- ruoyi-common-core
-
-
diff --git a/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/event/NotifierEvent.java b/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/event/NotifierEvent.java
deleted file mode 100644
index 7df53e460..000000000
--- a/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/event/NotifierEvent.java
+++ /dev/null
@@ -1,44 +0,0 @@
-package org.dromara.monitor.admin.event;
-
-import lombok.Data;
-
-import java.io.Serial;
-import java.io.Serializable;
-
-/**
- * 通知事件
- *
- * @author AprilWind
- */
-@Data
-public class NotifierEvent implements Serializable {
-
- @Serial
- private static final long serialVersionUID = 1L;
-
- /**
- * 实例注册名称
- */
- private String registName;
-
- /**
- * 实例状态名称
- */
- private String statusName;
-
- /**
- * 实例ID
- */
- private String instanceId;
-
- /**
- * 实例状态
- */
- private String status;
-
- /**
- * 服务URL
- */
- private String serviceUrl;
-
-}
diff --git a/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/CustomNotifier.java b/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/CustomNotifier.java
index e2b529449..838eefc47 100644
--- a/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/CustomNotifier.java
+++ b/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/CustomNotifier.java
@@ -6,8 +6,6 @@ import de.codecentric.boot.admin.server.domain.events.InstanceEvent;
import de.codecentric.boot.admin.server.domain.events.InstanceStatusChangedEvent;
import de.codecentric.boot.admin.server.notify.AbstractEventNotifier;
import lombok.extern.slf4j.Slf4j;
-import org.dromara.common.core.utils.SpringUtils;
-import org.dromara.monitor.admin.event.NotifierEvent;
import org.springframework.stereotype.Component;
import reactor.core.publisher.Mono;
@@ -51,13 +49,6 @@ public class CustomNotifier extends AbstractEventNotifier {
};
log.info("Instance Status Change: 状态名称【{}】, 注册名称【{}】, 实例ID【{}】, 状态【{}】, 服务URL【{}】",
statusName, registName, instanceId, status, serviceUrl);
- NotifierEvent notifier = new NotifierEvent();
- notifier.setRegistName(registName);
- notifier.setStatusName(statusName);
- notifier.setInstanceId(instanceId);
- notifier.setStatus(status);
- notifier.setServiceUrl(serviceUrl);
- SpringUtils.context().publishEvent(notifier);
}
});
}
diff --git a/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/InfoNotifier.java b/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/InfoNotifier.java
deleted file mode 100644
index 455883e38..000000000
--- a/ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/InfoNotifier.java
+++ /dev/null
@@ -1,34 +0,0 @@
-package org.dromara.monitor.admin.notifier;
-
-import lombok.RequiredArgsConstructor;
-import lombok.extern.slf4j.Slf4j;
-import org.dromara.monitor.admin.event.NotifierEvent;
-import org.springframework.context.event.EventListener;
-import org.springframework.scheduling.annotation.Async;
-import org.springframework.stereotype.Service;
-
-/**
- * 信息通知
- *
- * @author AprilWind
- */
-@RequiredArgsConstructor
-@Slf4j
-@Service
-public class InfoNotifier {
-
- /**
- * 异步处理通知事件的方法
- *
- * 该方法会处理 `NotifierEvent` 事件,执行通知相关的操作,如发送邮件或短信
- *
- * @param notifier 事件对象,包含了需要通知的详细信息,包括注册名称、状态名称、实例 ID、状态和服务 URL
- */
- @Async
- @EventListener
- public void infoNotification(NotifierEvent notifier) {
- // 在这里添加处理通知事件的逻辑
- // 例如,依据 notifier 对象的信息发送邮件或短信通知
- }
-
-}