diff --git a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/filter/LogMsgSendFilter.java b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/filter/LogMsgSendFilter.java index 45302413dd..4745de9afa 100644 --- a/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/filter/LogMsgSendFilter.java +++ b/epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/filter/LogMsgSendFilter.java @@ -9,10 +9,12 @@ import ch.qos.logback.core.spi.FilterReply; import com.epmet.commons.tools.dto.form.DingTalkTextMsg; import com.epmet.commons.tools.enums.EnvEnum; import com.epmet.commons.tools.utils.DingdingMsgSender; -import com.epmet.commons.tools.utils.IpUtils; +import com.epmet.commons.tools.utils.SpringContextUtils; import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.springframework.cloud.commons.util.InetUtils; +import org.springframework.core.env.Environment; import java.text.SimpleDateFormat; @@ -27,9 +29,11 @@ public class LogMsgSendFilter extends LevelFilter { private DingdingMsgSender msgSender = new DingdingMsgSender(); private String webHook; private String secret; - private String activeEnv; private String appName; + private String activeEnv; + private String serverIp; + @Override public FilterReply decide(ILoggingEvent event) { //如果日志级别等于设置的日志级别 则发送消息 @@ -46,11 +50,12 @@ public class LogMsgSendFilter extends LevelFilter { stringBuilder.append("服务名称:" + appName); stringBuilder.append("\n"); } + getServerInfo(); if (StringUtils.isNotBlank(activeEnv)) { stringBuilder.append("告警环境:" + EnvEnum.getEnum(activeEnv).getName()); stringBuilder.append("\n"); } - String serverIp = IpUtils.getServerIp(); + if (StringUtils.isNotBlank(serverIp)) { stringBuilder.append("IP地址:" + serverIp); stringBuilder.append("\n"); @@ -83,6 +88,26 @@ public class LogMsgSendFilter extends LevelFilter { } //交给其他filter继续向下处理 return super.decide(event); + + } + + /** + * desc:获取服务 ip及profile信息 + * + */ + private void getServerInfo() { + if (serverIp == null) { + InetUtils inetUtils = SpringContextUtils.getBean(InetUtils.class); + serverIp = inetUtils.findFirstNonLoopbackHostInfo().getIpAddress(); + } + if (activeEnv == null) { + Environment environment = SpringContextUtils.getBean(Environment.class); + String[] activeProfiles = environment.getActiveProfiles(); + if (activeProfiles != null && activeProfiles.length > 0) { + logger.info("activeProfiles:{}", activeProfiles); + activeEnv = activeProfiles[0]; + } + } } private void apendStackInfo(StringBuilder stringBuilder, IThrowableProxy throwableProxy) { diff --git a/epmet-module/data-statistical/data-statistical-server/src/main/resources/logback-spring.xml b/epmet-module/data-statistical/data-statistical-server/src/main/resources/logback-spring.xml index 9a76a9c74f..8ad6400d13 100644 --- a/epmet-module/data-statistical/data-statistical-server/src/main/resources/logback-spring.xml +++ b/epmet-module/data-statistical/data-statistical-server/src/main/resources/logback-spring.xml @@ -5,7 +5,6 @@ - @@ -133,7 +132,6 @@ ERROR ACCEPT DENY - ${activeEnv} ${webHook} ${secret} ${appname} diff --git a/epmet-module/epmet-job/epmet-job-server/src/main/resources/logback-spring.xml b/epmet-module/epmet-job/epmet-job-server/src/main/resources/logback-spring.xml index fcfb1de19e..a4e9cf63d2 100644 --- a/epmet-module/epmet-job/epmet-job-server/src/main/resources/logback-spring.xml +++ b/epmet-module/epmet-job/epmet-job-server/src/main/resources/logback-spring.xml @@ -5,7 +5,6 @@ - @@ -132,7 +131,6 @@ ERROR ACCEPT DENY - ${activeEnv} ${webHook} ${secret} ${appname}