From 098d3347a0df808908aab8c554cd7c4febc5e6d9 Mon Sep 17 00:00:00 2001
From: 疯狂的狮子Li <15040126243@163.com>
Date: 星期一, 26 八月 2024 11:43:59 +0800
Subject: [PATCH] !577 发布 5.2.2 正式版 安全性提升 Merge pull request !577 from 疯狂的狮子Li/dev

---
 ruoyi-extend/ruoyi-monitor-admin/src/main/java/org/dromara/monitor/admin/notifier/CustomNotifier.java |   21 ++++++++++++++++++---
 1 files changed, 18 insertions(+), 3 deletions(-)

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 477a598..838eefc 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
@@ -9,6 +9,8 @@
 import org.springframework.stereotype.Component;
 import reactor.core.publisher.Mono;
 
+import static de.codecentric.boot.admin.server.domain.values.StatusInfo.*;
+
 /**
  * 鑷畾涔変簨浠堕�氱煡澶勭悊
  *
@@ -28,13 +30,26 @@
         return Mono.fromRunnable(() -> {
             // 瀹炰緥鐘舵�佹敼鍙樹簨浠�
             if (event instanceof InstanceStatusChangedEvent) {
+                // 鑾峰彇瀹炰緥娉ㄥ唽鍚嶇О
                 String registName = instance.getRegistration().getName();
+                // 鑾峰彇瀹炰緥ID
                 String instanceId = event.getInstance().getValue();
+                // 鑾峰彇瀹炰緥鐘舵��
                 String status = ((InstanceStatusChangedEvent) event).getStatusInfo().getStatus();
-                log.info("Instance Status Change: [{}],[{}],[{}]", registName, instanceId, status);
+                // 鑾峰彇鏈嶅姟URL
+                String serviceUrl = instance.getRegistration().getServiceUrl();
+                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);
             }
-
         });
     }
-
 }

--
Gitblit v1.9.3