diff --git a/pom.xml b/pom.xml
index 55dd9ec..112a785 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
com.zdjizhi
flink-dos-detection
- 24-07-25
+ 24-08-07
flink-dos-detection
http://www.example.com
@@ -80,7 +80,7 @@
- flink-dos-detection-24-07-25
+ flink-dos-detection-24-08-07
org.apache.http
@@ -134,7 +134,12 @@
-
+
+ org.apache.flink
+ flink-test-utils_2.12
+ ${flink.version}
+ test
+
org.jasypt
jasypt
diff --git a/src/main/java/com/zdjizhi/common/DosSketchLog.java b/src/main/java/com/zdjizhi/common/DosSketchLog.java
index 7a1239d..f652399 100644
--- a/src/main/java/com/zdjizhi/common/DosSketchLog.java
+++ b/src/main/java/com/zdjizhi/common/DosSketchLog.java
@@ -244,7 +244,7 @@ public class DosSketchLog implements Serializable {
}
- public int getRule_id() {
+ public int getRule_id() {
return rule_id;
}
diff --git a/src/main/java/com/zdjizhi/function/DosMetricsRichFunction.java b/src/main/java/com/zdjizhi/function/DosMetricsRichFunction.java
index b2a5000..aa95048 100644
--- a/src/main/java/com/zdjizhi/function/DosMetricsRichFunction.java
+++ b/src/main/java/com/zdjizhi/function/DosMetricsRichFunction.java
@@ -58,7 +58,10 @@ public class DosMetricsRichFunction extends RichFlatMapFunction
DosSketchLog dosSketchLog = JSONObject.parseObject(value, DosSketchLog.class);
dosSketchLog.setRecv_time(System.currentTimeMillis()/1000);
dosSketchLog.setStart_timestamp_ms(dosSketchLog.getTimestamp_ms());
+ if(dosSketchLog.getDuration()<=0){
+ dosSketchLog.setDuration(60000);
+ }
dosSketchLog.setEnd_timestamp_ms(dosSketchLog.getTimestamp_ms() + dosSketchLog.getDuration());
HashSet client_ips = new HashSet<>();
HashSet client_countrys = new HashSet<>();
dosSketchLog.setClient_ips(client_ips);
dosSketchLog.setClient_countrys(client_countrys);
+
if("top_client_and_server_ip".equals(dosSketchLog.getName())){
- client_ips.add(dosSketchLog.getClient_ip());
+ dosSketchLog.setDecoded_as("");
+ if(dosSketchLog.getClient_ip()!=null) {
+ client_ips.add(dosSketchLog.getClient_ip());
+ }
if(dosSketchLog.getClient_country()!=null && !dosSketchLog.getClient_country().isEmpty()) {
client_countrys.add(dosSketchLog.getClient_country());
}
@@ -39,7 +46,9 @@ public class FlatSketchFunction implements FlatMapFunction
dosSketchLog.setPkts(0);
dosSketchLog.setBytes(0);
dosSketchLog.setSessions(0);
- client_ips.add(dosSketchLog.getClient_ip());
+ if(dosSketchLog.getClient_ip()!=null) {
+ client_ips.add(dosSketchLog.getClient_ip());
+ }
if(dosSketchLog.getClient_country()!=null && !dosSketchLog.getClient_country().isEmpty()) {
client_countrys.add(dosSketchLog.getClient_country());
}
diff --git a/src/main/java/com/zdjizhi/function/MetricsCalculate.java b/src/main/java/com/zdjizhi/function/MetricsCalculate.java
index b4cccff..d5d99af 100644
--- a/src/main/java/com/zdjizhi/function/MetricsCalculate.java
+++ b/src/main/java/com/zdjizhi/function/MetricsCalculate.java
@@ -45,7 +45,7 @@ public class MetricsCalculate extends ProcessWindowFunction<
dosSketchLog.setSession_rate(dosSketchLog.getSessions()/ (duration/1000) );
dosSketchLog.setPacket_rate(dosSketchLog.getPkts()/(duration/1000));
dosSketchLog.setBit_rate(dosSketchLog.getBytes()*8/(duration/1000));
- dosSketchLog.setAttack_type(attackTypeMapping.getOrDefault(dosSketchLog.getDecoded_as(),""));
+ dosSketchLog.setAttack_type(attackTypeMapping.get(dosSketchLog.getDecoded_as()));
}catch (RuntimeException e){
logger.error(e.toString());
}
diff --git a/src/test/java/com/zdjizhi/etl/EtlProcessFunctionTest.java b/src/test/java/com/zdjizhi/etl/EtlProcessFunctionTest.java
deleted file mode 100644
index f93794c..0000000
--- a/src/test/java/com/zdjizhi/etl/EtlProcessFunctionTest.java
+++ /dev/null
@@ -1,11 +0,0 @@
-package com.zdjizhi.etl;
-
-import org.junit.Test;
-
-public class EtlProcessFunctionTest {
-
- @Test
- public void EtlProcessFunctionTest(){
-
- }
-}