diff --git a/docs/assets/screenshot/alarm-webhook.jpg b/docs/assets/screenshot/alarm-webhook.jpg
new file mode 100644
index 00000000..97aa9b42
Binary files /dev/null and b/docs/assets/screenshot/alarm-webhook.jpg differ
diff --git a/orion-visor-common/src/main/java/org/dromara/visor/common/constant/AutoConfigureOrderConst.java b/orion-visor-common/src/main/java/org/dromara/visor/common/constant/AutoConfigureOrderConst.java
index 2b089ba3..d34af72c 100644
--- a/orion-visor-common/src/main/java/org/dromara/visor/common/constant/AutoConfigureOrderConst.java
+++ b/orion-visor-common/src/main/java/org/dromara/visor/common/constant/AutoConfigureOrderConst.java
@@ -63,13 +63,15 @@ public interface AutoConfigureOrderConst {
int FRAMEWORK_JOB = Integer.MIN_VALUE + 2600;
- int FRAMEWORK_JOB_QUARTZ = Integer.MIN_VALUE + 2700;
+ int FRAMEWORK_JOB_QUARTZ = Integer.MIN_VALUE + 2610;
- int FRAMEWORK_JOB_ASYNC = Integer.MIN_VALUE + 2800;
+ int FRAMEWORK_JOB_ASYNC = Integer.MIN_VALUE + 2620;
- int FRAMEWORK_MONITOR = Integer.MIN_VALUE + 2900;
+ int FRAMEWORK_PUSH = Integer.MIN_VALUE + 2700;
- int FRAMEWORK_BIZ_OPERATOR_LOG = Integer.MIN_VALUE + 3000;
+ int FRAMEWORK_BIZ_OPERATOR_LOG = Integer.MIN_VALUE + 7000;
+
+ int FRAMEWORK_MONITOR = Integer.MIN_VALUE + 9000;
int FRAMEWORK_BANNER = Integer.MIN_VALUE + 10000;
diff --git a/orion-visor-common/src/main/java/org/dromara/visor/common/constant/ErrorMessage.java b/orion-visor-common/src/main/java/org/dromara/visor/common/constant/ErrorMessage.java
index c1463e93..3af48398 100644
--- a/orion-visor-common/src/main/java/org/dromara/visor/common/constant/ErrorMessage.java
+++ b/orion-visor-common/src/main/java/org/dromara/visor/common/constant/ErrorMessage.java
@@ -100,6 +100,12 @@ public interface ErrorMessage {
String GROUP_ABSENT = "分组不存在";
+ String METRICS_ABSENT = "指标不存在";
+
+ String RULE_ABSENT = "规则不存在";
+
+ String ALARM_POLICY_ABSENT = "告警策略不存在";
+
String HOST_TYPE_ERROR = "主机类型错误";
String HOST_NOT_ENABLED = "{} 主机未启用";
@@ -132,6 +138,8 @@ public interface ErrorMessage {
String CURRENT_USER_UNSUPPORTED_OPT = "当前" + USER_UNSUPPORTED_OPT;
+ String PUSH_USER_NOT_EMPTY = "推送用户不能为空";
+
String PATH_NOT_NORMALIZE = "路径不合法";
String OPERATE_ERROR = "操作失败";
@@ -140,6 +148,8 @@ public interface ErrorMessage {
String DECRYPT_ERROR = "数据解密失败";
+ String GET_REQUEST_URL_ERROR = "获取请求路径失败";
+
String UNKNOWN_TYPE = "未知类型";
String ERROR_TYPE = "错误的类型";
diff --git a/orion-visor-common/src/main/java/org/dromara/visor/common/entity/PushUser.java b/orion-visor-common/src/main/java/org/dromara/visor/common/entity/PushUser.java
new file mode 100644
index 00000000..92ac3c33
--- /dev/null
+++ b/orion-visor-common/src/main/java/org/dromara/visor/common/entity/PushUser.java
@@ -0,0 +1,43 @@
+package org.dromara.visor.common.entity;
+
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.AllArgsConstructor;
+import lombok.Builder;
+import lombok.Data;
+import lombok.NoArgsConstructor;
+
+import javax.validation.constraints.NotNull;
+import java.io.Serializable;
+
+/**
+ * 推送用户
+ *
+ * @author Jiahang Li
+ * @version 1.0.0
+ * @since 2025/9/18 21:46
+ */
+@Data
+@Builder
+@NoArgsConstructor
+@AllArgsConstructor
+@Schema(name = "PushUser", description = "推送用户")
+public class PushUser implements Serializable {
+
+ @NotNull
+ @Schema(description = "用户id")
+ private Long id;
+
+ @NotNull
+ @Schema(description = "用户名")
+ private String username;
+
+ @Schema(description = "花名")
+ private String nickname;
+
+ @Schema(description = "手机号")
+ private String mobile;
+
+ @Schema(description = "邮箱")
+ private String email;
+
+}
diff --git a/orion-visor-dependencies/pom.xml b/orion-visor-dependencies/pom.xml
index 86ff5680..960fb32e 100644
--- a/orion-visor-dependencies/pom.xml
+++ b/orion-visor-dependencies/pom.xml
@@ -18,7 +18,7 @@
2.7.17
2.7.15
1.5.0
- 2.0.2
+ 2.0.3
1.9.7
1.18.26
1.6.15
@@ -156,6 +156,11 @@
orion-visor-spring-boot-starter-influxdb
${revision}
+
+ org.dromara.visor
+ orion-visor-spring-boot-starter-biz-push
+ ${revision}
+
org.dromara.visor
orion-visor-spring-boot-starter-biz-operator-log
diff --git a/orion-visor-framework/pom.xml b/orion-visor-framework/pom.xml
index 7cec0d7f..5b9f3849 100644
--- a/orion-visor-framework/pom.xml
+++ b/orion-visor-framework/pom.xml
@@ -33,6 +33,7 @@
orion-visor-spring-boot-starter-monitor
orion-visor-spring-boot-starter-test
orion-visor-spring-boot-starter-influxdb
+ orion-visor-spring-boot-starter-biz-push
orion-visor-spring-boot-starter-biz-operator-log
diff --git a/sql/常用.sql b/sql/常用.sql
index 1e498f3f..894038ab 100644
--- a/sql/常用.sql
+++ b/sql/常用.sql
@@ -30,6 +30,7 @@ DELETE FROM exec_host_log WHERE deleted = 1;
DELETE FROM terminal_connect_log WHERE deleted = 1;
DELETE FROM upload_task WHERE deleted = 1;
DELETE FROM upload_task_file WHERE deleted = 1;
+DELETE FROM monitor_alarm_event WHERE deleted = 1;
-- 修改连接日志状态
UPDATE terminal_connect_log l SET status = 'COMPLETE', end_time = l.start_time WHERE status = 'CONNECTING';