Browse Source

Merge remote-tracking branch 'remotes/origin/dev_data_stats' into dev

dev_shibei_match
jianjun 5 years ago
parent
commit
a04c995b03
  1. 31
      epmet-commons/epmet-commons-tools/src/main/java/com/epmet/commons/tools/filter/LogMsgSendFilter.java
  2. 2
      epmet-module/data-statistical/data-statistical-server/src/main/resources/logback-spring.xml
  3. 2
      epmet-module/epmet-job/epmet-job-server/src/main/resources/logback-spring.xml

31
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.dto.form.DingTalkTextMsg;
import com.epmet.commons.tools.enums.EnvEnum; import com.epmet.commons.tools.enums.EnvEnum;
import com.epmet.commons.tools.utils.DingdingMsgSender; 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.apache.commons.lang3.StringUtils;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.cloud.commons.util.InetUtils;
import org.springframework.core.env.Environment;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
@ -27,9 +29,11 @@ public class LogMsgSendFilter extends LevelFilter {
private DingdingMsgSender msgSender = new DingdingMsgSender(); private DingdingMsgSender msgSender = new DingdingMsgSender();
private String webHook; private String webHook;
private String secret; private String secret;
private String activeEnv;
private String appName; private String appName;
private String activeEnv;
private String serverIp;
@Override @Override
public FilterReply decide(ILoggingEvent event) { public FilterReply decide(ILoggingEvent event) {
//如果日志级别等于设置的日志级别 则发送消息 //如果日志级别等于设置的日志级别 则发送消息
@ -46,11 +50,12 @@ public class LogMsgSendFilter extends LevelFilter {
stringBuilder.append("服务名称:" + appName); stringBuilder.append("服务名称:" + appName);
stringBuilder.append("\n"); stringBuilder.append("\n");
} }
getServerInfo();
if (StringUtils.isNotBlank(activeEnv)) { if (StringUtils.isNotBlank(activeEnv)) {
stringBuilder.append("告警环境:" + EnvEnum.getEnum(activeEnv).getName()); stringBuilder.append("告警环境:" + EnvEnum.getEnum(activeEnv).getName());
stringBuilder.append("\n"); stringBuilder.append("\n");
} }
String serverIp = IpUtils.getServerIp();
if (StringUtils.isNotBlank(serverIp)) { if (StringUtils.isNotBlank(serverIp)) {
stringBuilder.append("IP地址:" + serverIp); stringBuilder.append("IP地址:" + serverIp);
stringBuilder.append("\n"); stringBuilder.append("\n");
@ -83,6 +88,26 @@ public class LogMsgSendFilter extends LevelFilter {
} }
//交给其他filter继续向下处理 //交给其他filter继续向下处理
return super.decide(event); 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) { private void apendStackInfo(StringBuilder stringBuilder, IThrowableProxy throwableProxy) {

2
epmet-module/data-statistical/data-statistical-server/src/main/resources/logback-spring.xml

@ -5,7 +5,6 @@
<property name="log.path" value="logs/data-statistical"/> <property name="log.path" value="logs/data-statistical"/>
<springProperty scope="context" name="appname" source="spring.application.name"/> <springProperty scope="context" name="appname" source="spring.application.name"/>
<springProperty scope="context" name="activeEnv" source="spring.profiles.active"/>
<springProperty scope="context" name="webHook" source="dingTalk.robot.webHook"/> <springProperty scope="context" name="webHook" source="dingTalk.robot.webHook"/>
<springProperty scope="context" name="secret" source="dingTalk.robot.secret"/> <springProperty scope="context" name="secret" source="dingTalk.robot.secret"/>
@ -133,7 +132,6 @@
<level>ERROR</level> <level>ERROR</level>
<onMatch>ACCEPT</onMatch> <onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch> <onMismatch>DENY</onMismatch>
<activeEnv>${activeEnv}</activeEnv>
<webHook>${webHook}</webHook> <webHook>${webHook}</webHook>
<secret>${secret}</secret> <secret>${secret}</secret>
<appName>${appname}</appName> <appName>${appname}</appName>

2
epmet-module/epmet-job/epmet-job-server/src/main/resources/logback-spring.xml

@ -5,7 +5,6 @@
<property name="log.path" value="logs/job"/> <property name="log.path" value="logs/job"/>
<springProperty scope="context" name="appname" source="spring.application.name"/> <springProperty scope="context" name="appname" source="spring.application.name"/>
<springProperty scope="context" name="activeEnv" source="spring.profiles.active"/>
<springProperty scope="context" name="webHook" source="dingTalk.robot.webHook"/> <springProperty scope="context" name="webHook" source="dingTalk.robot.webHook"/>
<springProperty scope="context" name="secret" source="dingTalk.robot.secret"/> <springProperty scope="context" name="secret" source="dingTalk.robot.secret"/>
@ -132,7 +131,6 @@
<level>ERROR</level> <level>ERROR</level>
<onMatch>ACCEPT</onMatch> <onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch> <onMismatch>DENY</onMismatch>
<activeEnv>${activeEnv}</activeEnv>
<webHook>${webHook}</webHook> <webHook>${webHook}</webHook>
<secret>${secret}</secret> <secret>${secret}</secret>
<appName>${appname}</appName> <appName>${appname}</appName>

Loading…
Cancel
Save