From 839fe51fc2ef242d85a50472e34dabe0331f5703 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=86=B7=E5=86=B7?= Date: Wed, 23 Jan 2019 18:30:47 +0800 Subject: [PATCH] =?UTF-8?q?:sparkles:=20=E6=B7=BB=E5=8A=A0=E6=96=B0?= =?UTF-8?q?=E7=89=B9=E6=80=A7=E3=80=82=E6=9C=8D=E5=8A=A1=E7=8A=B6=E6=80=81?= =?UTF-8?q?=E5=8F=98=E5=8C=96=E9=80=9A=E7=9F=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../monitor/support/StatusChangeNotifier.java | 37 +++++++++++++++++++ pom.xml | 2 +- 2 files changed, 38 insertions(+), 1 deletion(-) create mode 100644 pigx-visual/pigx-monitor/src/main/java/com/pig4cloud/pigx/monitor/support/StatusChangeNotifier.java diff --git a/pigx-visual/pigx-monitor/src/main/java/com/pig4cloud/pigx/monitor/support/StatusChangeNotifier.java b/pigx-visual/pigx-monitor/src/main/java/com/pig4cloud/pigx/monitor/support/StatusChangeNotifier.java new file mode 100644 index 000000000..c994817ff --- /dev/null +++ b/pigx-visual/pigx-monitor/src/main/java/com/pig4cloud/pigx/monitor/support/StatusChangeNotifier.java @@ -0,0 +1,37 @@ +package com.pig4cloud.pigx.monitor.support; + +import de.codecentric.boot.admin.server.domain.entities.Instance; +import de.codecentric.boot.admin.server.domain.entities.InstanceRepository; +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.springframework.stereotype.Component; +import reactor.core.publisher.Mono; + +/** + * @author lengleng + * @date 2019-01-23 + *

+ * 服务状态变化通知 + */ +@Slf4j +@Component +public class StatusChangeNotifier extends AbstractEventNotifier { + protected StatusChangeNotifier(InstanceRepository repository) { + super(repository); + } + + @Override + protected Mono doNotify(InstanceEvent event, Instance instance) { + return Mono.fromRunnable(() -> { + if (event instanceof InstanceStatusChangedEvent) { + log.error("Instance {} ({}) is {}", instance.getRegistration().getName(), event.getInstance(), + ((InstanceStatusChangedEvent) event).getStatusInfo().getStatus()); + } else { + log.error("Instance {} ({}) {}", instance.getRegistration().getName(), event.getInstance(), + event.getType()); + } + }); + } +} \ No newline at end of file diff --git a/pom.xml b/pom.xml index ce4041c35..2e97bbc66 100644 --- a/pom.xml +++ b/pom.xml @@ -43,7 +43,7 @@ 2.1.2.RELEASE - Greenwich.RC2 + Greenwich.RELEASE Cairo-SR6 UTF-8 1.8