summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordoufenghu <[email protected]>2019-01-11 16:07:45 +0600
committerdoufenghu <[email protected]>2019-01-11 16:07:45 +0600
commit17b8b613a0c3975a5ee90106d0f783d899f068b6 (patch)
tree4ebc133b879d6be94be9d3b923aa7d87da19781e
parent7e24352057d255ed97485bd6ec37b3f3ae63b48e (diff)
fix(事件封堵与监测):修改接口通过生效配置获取日志量
-rw-r--r--src/main/java/com/nis/galaxy/template/ForEventsInterface.java64
-rw-r--r--src/main/java/com/nis/galaxy/web/dao/EventsDao.java5
-rw-r--r--src/main/java/com/nis/galaxy/web/service/EventsService.java16
-rw-r--r--src/main/java/com/nis/galaxy/web/service/impl/EventsServiceImpl.java31
-rw-r--r--src/main/resources/mybatis/mapper/EventsMapper.xml48
5 files changed, 164 insertions, 0 deletions
diff --git a/src/main/java/com/nis/galaxy/template/ForEventsInterface.java b/src/main/java/com/nis/galaxy/template/ForEventsInterface.java
index 9ecc422..0fbb871 100644
--- a/src/main/java/com/nis/galaxy/template/ForEventsInterface.java
+++ b/src/main/java/com/nis/galaxy/template/ForEventsInterface.java
@@ -226,7 +226,37 @@ public class ForEventsInterface {
String logMark = "事件监测";
List contentValue = null;
try {
+ contentValue = eventsService.getCfgsMonitor(logMark);
+
+ } catch (Exception e) {
+ logger.error(logMark + "\t查询异常\trestTemplate", e);
+ }
+ if (InterfaceBase.contentValueIsEmpty(contentValue)) {
+ logger.warn(logMark + "\t无数据\t取消本次推送");
+ return;
+ }
+ // 请求头和请求体
+ HttpEntity<String> httpEntity = InterfaceBase.getHttpEntity(pushParams.getHeaders(), null, "events.monitor", contentValue);
+ logger.info("开始推送=======>>{}\t请求头和请求体\t{}", logMark, httpEntity);
+ ResponseEntity<String> response = InterfaceBase.pushStart(restTemplate, REST_URL_PREFIX_PUSH + SERVICE_PATH_EVENTS, httpEntity);
+ logger.info("{}\t推送返回结果\t{}", logMark, response);
+ }
+
+
+ /**
+ * 事件监测 1小时送一次数据
+ */
+ //@Scheduled(cron = "${1h.scheduled.cron.plan}")
+ //@SchedulerLock(name = "events.monitor", lockAtLeastForString = "PT20M", lockAtMostForString = "PT40M")
+ public void getEventsMonitor_tmp() {
+ if (!Boolean.parseBoolean(scheduledEventsEnable)) {
+ return;
+ }
+ String logMark = "事件监测";
+ List contentValue = null;
+ try {
contentValue = eventsService.getEventsMonitor(logMark);
+
} catch (Exception e) {
logger.error(logMark + "\t查询异常\trestTemplate", e);
}
@@ -241,6 +271,11 @@ public class ForEventsInterface {
logger.info("{}\t推送返回结果\t{}", logMark, response);
}
+
+
+
+
+
/**
* 事件封堵 1小时送一次数据
*/
@@ -253,6 +288,35 @@ public class ForEventsInterface {
String logMark = "事件封堵";
List contentValue = null;
try {
+ contentValue = eventsService.getCfgsBlock(logMark);
+ } catch (Exception e) {
+ logger.error(logMark + "\t查询异常\trestTemplate", e);
+ }
+ if (InterfaceBase.contentValueIsEmpty(contentValue)) {
+ logger.warn(logMark + "\t无数据\t取消本次推送");
+ return;
+ }
+ // 请求头和请求体
+ HttpEntity<String> httpEntity = InterfaceBase.getHttpEntity(pushParams.getHeaders(), null, "events.block", contentValue);
+ logger.info("开始推送=======>>{}\t请求头和请求体\t{}", logMark, httpEntity);
+ ResponseEntity<String> response = InterfaceBase.pushStart(restTemplate, REST_URL_PREFIX_PUSH + SERVICE_PATH_EVENTS, httpEntity);
+ logger.info("{}\t推送返回结果\t{}", logMark, response);
+ }
+
+
+
+ /**
+ * 事件封堵 1小时送一次数据
+ */
+ // @Scheduled(cron = "${1h.scheduled.cron.plan}")
+ // @SchedulerLock(name = "events.block", lockAtLeastForString = "PT20M", lockAtMostForString = "PT40M")
+ public void getEventsBlock_tmp() {
+ if (!Boolean.parseBoolean(scheduledEventsEnable)) {
+ return;
+ }
+ String logMark = "事件封堵";
+ List contentValue = null;
+ try {
contentValue = eventsService.getEventsBlock(logMark);
} catch (Exception e) {
logger.error(logMark + "\t查询异常\trestTemplate", e);
diff --git a/src/main/java/com/nis/galaxy/web/dao/EventsDao.java b/src/main/java/com/nis/galaxy/web/dao/EventsDao.java
index 9219bf4..11c0bfc 100644
--- a/src/main/java/com/nis/galaxy/web/dao/EventsDao.java
+++ b/src/main/java/com/nis/galaxy/web/dao/EventsDao.java
@@ -51,8 +51,13 @@ public interface EventsDao {
List<EventsMonitor> getEventsMonitor();
+ List<EventsMonitor> getCfgsMonitor();
+
+
List<EventsBlock> getEventsBlock();
+ List<EventsMonitor> getCfgsBlock();
+
List<EvevtsTargetNetwork> getTargetNetwork(@Param("push") Date push, @Param("start") Date start, @Param("end") Date end);
Date getTargetNetworkLastTime(@Param("end") Date end);
diff --git a/src/main/java/com/nis/galaxy/web/service/EventsService.java b/src/main/java/com/nis/galaxy/web/service/EventsService.java
index 14f8c36..37e20a4 100644
--- a/src/main/java/com/nis/galaxy/web/service/EventsService.java
+++ b/src/main/java/com/nis/galaxy/web/service/EventsService.java
@@ -82,6 +82,13 @@ public interface EventsService {
List<EventsMonitor> getEventsMonitor(String logMark);
/**
+ * 当前生效配置监测日志量
+ * @param logMark
+ * @return
+ */
+ List<EventsMonitor> getCfgsMonitor(String logMark);
+
+ /**
* 事件封堵
*
* @param logMark
@@ -89,6 +96,15 @@ public interface EventsService {
*/
List<EventsBlock> getEventsBlock(String logMark);
+
+ /**
+ * 当前生效配置阻断日志量
+ * @param logMark
+ * @return
+ */
+ List<EventsMonitor> getCfgsBlock(String logMark);
+
+
/**
* 音频监控
*
diff --git a/src/main/java/com/nis/galaxy/web/service/impl/EventsServiceImpl.java b/src/main/java/com/nis/galaxy/web/service/impl/EventsServiceImpl.java
index d5fb963..e4096d1 100644
--- a/src/main/java/com/nis/galaxy/web/service/impl/EventsServiceImpl.java
+++ b/src/main/java/com/nis/galaxy/web/service/impl/EventsServiceImpl.java
@@ -372,6 +372,37 @@ public class EventsServiceImpl implements EventsService {
}
/**
+ * 当前生效配置监测日志量
+ *
+ * @param logMark
+ * @return
+ */
+ @Override
+ public List<EventsMonitor> getCfgsMonitor(String logMark) {
+ List<EventsMonitor> list = new ArrayList<>();
+ long timeMillisStart = System.currentTimeMillis();
+ try {
+ list = eventsDao.getCfgsMonitor();
+ } catch (Exception e) {
+ logger.error(logMark + "\t查询异常\tserviceImpl", e);
+ }
+ logger.info("{}耗时\t{}", logMark, (System.currentTimeMillis() - timeMillisStart));
+ if (ListUtils.isEmptyList(list) && ConfigUtil.testData) {
+ logger.info(logMark + "------->测试数据");
+ Date taskTimeTemp = DateUtil.getFormatHour(new Date());
+ java.sql.Date taskTime = new java.sql.Date(taskTimeTemp.getTime());
+ list.add(new EventsMonitor("double agent", (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), taskTime));
+ list.add(new EventsMonitor("nuclear program", (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), taskTime));
+ list.add(new EventsMonitor("Subject Tests", (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), taskTime));
+ list.add(new EventsMonitor("fake task", (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), taskTime));
+ list.add(new EventsMonitor("savage", (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), taskTime));
+ list.add(new EventsMonitor("satellite", (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), taskTime));
+ list.add(new EventsMonitor("taskName", (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), (int) (Math.random() * 100), taskTime));
+ }
+ return list;
+ }
+
+ /**
* 事件封堵
*
* @param logMark
diff --git a/src/main/resources/mybatis/mapper/EventsMapper.xml b/src/main/resources/mybatis/mapper/EventsMapper.xml
index 640f17c..de20a98 100644
--- a/src/main/resources/mybatis/mapper/EventsMapper.xml
+++ b/src/main/resources/mybatis/mapper/EventsMapper.xml
@@ -240,6 +240,31 @@
GROUP BY event,time
HAVING (ipNum+httpNum+mailNum+vedioNum+agentNum)>0;
</select>
+
+
+
+ <select id="getCfgsMonitor" resultType="com.nis.galaxy.domain.EventsMonitor">
+
+ SELECT now() as time, 'cfgmonitor' as event,
+ sum(case t.service when 128 then t.sum else 0 end) as ipNum ,
+ sum(case t.service when 129 then t.sum else 0 end) as httpNum ,
+ sum(case t.service when 132 then t.sum else 0 end) as mailNum ,
+ sum(case t.service when 389 or 390 or 391 or 392 then t.sum else 0 end) as vedioNum ,
+ sum(case t.service when 592 then t.sum else 0 end) as agentNum
+ from (
+ SELECT service, sum(sum) AS sum
+ FROM ntc_pz_report
+ WHERE cfg_id in (
+ select compile_id from ui_cfg_num_statistics where cfg_state=1 and
+ service_id in (128, 129, 132, 389,390,391,392, 592)
+ )
+ GROUP BY service ) t
+
+ GROUP BY event;
+
+ </select>
+
+
<!--事件封堵-->
<select id="getEventsBlock" resultType="com.nis.galaxy.domain.EventsBlock">
SELECT task.audit_time time, task.task_name event,
@@ -272,6 +297,29 @@
HAVING (ipNum+httpNum+mailNum+vedioNum+agentNum)>0;
</select>
+
+
+
+ <select id="getCfgsBlock" resultType="com.nis.galaxy.domain.EventsBlock">
+ SELECT now() as time, 'cfgblock' as event,
+ sum(case t.service when 16 then t.sum else 0 end) as ipNum ,
+ sum(case t.service when 17 then t.sum else 0 end) as httpNum ,
+ sum(case t.service when 20 then t.sum else 0 end) as mailNum ,
+ sum(case t.service when 261 or 262 or 263 or 264 then t.sum else 0 end) as vedioNum ,
+ sum(case t.service when 576 then t.sum else 0 end) as agentNum
+ from (
+ SELECT service, sum(sum) AS sum
+ FROM ntc_pz_report
+ WHERE cfg_id in (
+ select compile_id from ui_cfg_num_statistics where cfg_state=1 and
+ service_id in (16, 17, 20, 261, 262, 263, 264,576)
+ )
+ GROUP BY service ) t
+
+ GROUP BY event;
+
+ </select>
+
<select id="getHttpsMonitor" resultType="com.nis.galaxy.domain.EventsNameNumTime">
<![CDATA[
SELECT b.name AS name ,a.num AS num,#{push} AS time FROM