summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorwangkuan <[email protected]>2024-02-02 15:08:07 +0800
committerwangkuan <[email protected]>2024-02-02 15:08:07 +0800
commitdaee2088a150245f1cfb4d972883745f62cf6bad (patch)
treeb21bf90d40f41e0d7434fece41e55e38ad392f8f
parent9a9fb185e9ee02f2512afab438c7e28c58d0a0aa (diff)
[improve][core]移动knowledgeBase的hander位置,修改包名,合并函数CN_FIELDS_MERGE与GENERATE_STRING_ARRAY
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/pojo/KnowledgeBaseConfigWithHandler.java2
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/processor/projection/ProjectionProcessFunction.java2
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/AsnLookup.java4
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/GenerateStringArray.java26
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/GeoIpLookup.java6
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/cn/AnonymityLookup.java6
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/cn/AppCategoryLookup.java4
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/cn/DnsServerInfoLookup.java4
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/cn/FieldsMerge.java1
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/cn/FqdnCategoryLookup.java4
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/cn/FqdnWhoisLookup.java4
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/cn/IcpLookup.java4
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/cn/IdcRenterLookup.java4
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/cn/IocLookup.java6
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/cn/IpZoneLookup.java4
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/cn/LinkDirectionLookup.java4
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/cn/UserDefineTagLookup.java4
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/cn/VpnLookup.java6
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/KnowledgeBaseScheduler.java (renamed from groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/KnowledgeBaseScheduler.java)2
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/KnowledgeBaseUpdateJob.java (renamed from groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/KnowledgeBaseUpdateJob.java)6
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/AbstractKnowledgeBaseHandler.java (renamed from groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/AbstractKnowledgeBaseHandler.java)4
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/AbstractMultipleKnowledgeBaseHandler.java (renamed from groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/AbstractMultipleKnowledgeBaseHandler.java)3
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/AbstractSingleKnowledgeBaseHandler.java (renamed from groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/AbstractSingleKnowledgeBaseHandler.java)3
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/AppCategoryKnowledgeBaseHandler.java (renamed from groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/AppCategoryKnowledgeBaseHandler.java)2
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/AppTagUserDefineKnowledgeBaseHandler.java (renamed from groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/AppTagUserDefineKnowledgeBaseHandler.java)2
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/AsnKnowledgeBaseHandler.java (renamed from groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/AsnKnowledgeBaseHandler.java)4
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/DnsServerInfoKnowledgeBaseHandler.java (renamed from groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/DnsServerInfoKnowledgeBaseHandler.java)2
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/DomainTagUserDefineKnowledgeBaseHandler.java (renamed from groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/DomainTagUserDefineKnowledgeBaseHandler.java)2
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/DomainVpnKnowledgeBaseHandler.java (renamed from groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/DomainVpnKnowledgeBaseHandler.java)2
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/FqdnCategoryKnowledgeBaseHandler.java (renamed from groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/FqdnCategoryKnowledgeBaseHandler.java)2
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/FqdnIcpKnowledgeBaseHandler.java (renamed from groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/FqdnIcpKnowledgeBaseHandler.java)2
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/FqdnWhoisKnowledgeBaseHandler.java (renamed from groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/FqdnWhoisKnowledgeBaseHandler.java)2
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/GeoIpKnowledgeBaseHandler.java (renamed from groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/GeoIpKnowledgeBaseHandler.java)4
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/IdcRenterKnowledgeBaseHandler.java (renamed from groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/IdcRenterKnowledgeBaseHandler.java)2
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/InternalIpKnowledgeBaseHandler.java (renamed from groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/InternalIpKnowledgeBaseHandler.java)2
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/IocDarkwebKnowledgeBaseHandler.java (renamed from groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/IocDarkwebKnowledgeBaseHandler.java)2
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/IocMalwareKnowledgeBaseHandler.java (renamed from groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/IocMalwareKnowledgeBaseHandler.java)2
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/IpTagUserDefineKnowledgeBaseHandler.java (renamed from groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/IpTagUserDefineKnowledgeBaseHandler.java)2
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/IpVpnKnowledgeBaseHandler.java (renamed from groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/IpVpnKnowledgeBaseHandler.java)2
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/LinkDirectionKnowledgeBaseHandler.java (renamed from groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/LinkDirectionKnowledgeBaseHandler.java)2
-rw-r--r--groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/RuleKnowledgeBaseHandler.java (renamed from groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/RuleKnowledgeBaseHandler.java)3
-rw-r--r--groot-core/src/test/java/com/geedgenetworks/core/udf/cn/LookupTestUtils.java6
-rw-r--r--groot-core/src/test/java/com/geedgenetworks/core/udf/test/AsnLookupFunctionTest.java4
-rw-r--r--groot-core/src/test/java/com/geedgenetworks/core/udf/test/GeoIpLookupFunctionTest.java4
-rw-r--r--groot-core/src/test/java/com/geedgenetworks/core/udf/test/simple/GenerateStringArrayFunctionTest.java22
-rw-r--r--groot-shaded/http-client-shaded/pom.xml1
46 files changed, 103 insertions, 88 deletions
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/pojo/KnowledgeBaseConfigWithHandler.java b/groot-core/src/main/java/com/geedgenetworks/core/pojo/KnowledgeBaseConfigWithHandler.java
index ba970d9..5a9be68 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/pojo/KnowledgeBaseConfigWithHandler.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/pojo/KnowledgeBaseConfigWithHandler.java
@@ -1,7 +1,7 @@
package com.geedgenetworks.core.pojo;
import com.geedgenetworks.common.config.KnowledgeBaseConfig;
-import com.geedgenetworks.core.utils.KnowlegdeBase.Handler.AbstractKnowledgeBaseHandler;
+import com.geedgenetworks.core.udf.knowlegdeBase.handler.AbstractKnowledgeBaseHandler;
import lombok.Data;
@Data
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/processor/projection/ProjectionProcessFunction.java b/groot-core/src/main/java/com/geedgenetworks/core/processor/projection/ProjectionProcessFunction.java
index 0581511..7b32c50 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/processor/projection/ProjectionProcessFunction.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/processor/projection/ProjectionProcessFunction.java
@@ -10,7 +10,7 @@ import com.geedgenetworks.common.utils.ColumnUtil;
import com.geedgenetworks.common.Event;
import com.geedgenetworks.core.pojo.ProjectionConfig;
import com.geedgenetworks.common.udf.UDF;
-import com.geedgenetworks.core.utils.KnowlegdeBase.KnowledgeBaseScheduler;
+import com.geedgenetworks.core.udf.knowlegdeBase.KnowledgeBaseScheduler;
import com.google.common.collect.Lists;
import com.googlecode.aviator.AviatorEvaluator;
import com.googlecode.aviator.AviatorEvaluatorInstance;
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/udf/AsnLookup.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/AsnLookup.java
index 6d9cecb..e3bf4d8 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/udf/AsnLookup.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/AsnLookup.java
@@ -9,9 +9,9 @@ import com.geedgenetworks.common.exception.GrootStreamRuntimeException;
import com.geedgenetworks.common.udf.UDF;
import com.geedgenetworks.common.Event;
import com.geedgenetworks.common.udf.UDFContext;
-import com.geedgenetworks.core.utils.KnowlegdeBase.Handler.AsnKnowledgeBaseHandler;
+import com.geedgenetworks.core.udf.knowlegdeBase.handler.AsnKnowledgeBaseHandler;
-import com.geedgenetworks.core.utils.KnowlegdeBase.KnowledgeBaseUpdateJob;
+import com.geedgenetworks.core.udf.knowlegdeBase.KnowledgeBaseUpdateJob;
import lombok.extern.slf4j.Slf4j;
import org.apache.flink.api.common.functions.RuntimeContext;
import org.apache.flink.configuration.Configuration;
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/udf/GenerateStringArray.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/GenerateStringArray.java
index 931b891..fdb262c 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/udf/GenerateStringArray.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/GenerateStringArray.java
@@ -7,8 +7,8 @@ import com.geedgenetworks.common.udf.UDF;
import com.geedgenetworks.common.udf.UDFContext;
import org.apache.flink.api.common.functions.RuntimeContext;
-import java.util.ArrayList;
-import java.util.List;
+import java.util.*;
+import java.util.stream.Collectors;
public class GenerateStringArray implements UDF {
@@ -31,12 +31,24 @@ public class GenerateStringArray implements UDF {
@Override
public Event evaluate(Event event) {
- List<String> resultList = new ArrayList<>();
- for(String lookupFieldName :lookupFieldNames){
+ List<String> list = new ArrayList<>();
+ lookupFieldNames.forEach(fieldName -> {
+ Object value = event.getExtractedFields().get(fieldName);
+ if (value instanceof Collection) {
+ list.addAll(((Collection<?>) value).stream().map(Object::toString).collect(Collectors.toList()));
+ }
+ else if (value instanceof String) {
+ list.add(value.toString());
+ }
+ else if (value instanceof Number) {
+ list.add(value.toString());
+ }
+ else if (value instanceof Object[]) {
+ list.addAll(Arrays.stream((Object[]) value).map(Object::toString).collect(Collectors.toList()));
+ }
+ });
+ event.getExtractedFields().put(outputFieldName, list);
- resultList.add(event.getExtractedFields().getOrDefault(lookupFieldName,"").toString().trim());
- }
- event.getExtractedFields().put(outputFieldName,resultList);
return event;
}
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/udf/GeoIpLookup.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/GeoIpLookup.java
index 72db265..8290a50 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/udf/GeoIpLookup.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/GeoIpLookup.java
@@ -8,8 +8,8 @@ import com.geedgenetworks.common.exception.GrootStreamRuntimeException;
import com.geedgenetworks.common.udf.UDF;
import com.geedgenetworks.common.Event;
import com.geedgenetworks.common.udf.UDFContext;
-import com.geedgenetworks.core.utils.KnowlegdeBase.Handler.GeoIpKnowledgeBaseHandler;
-import com.geedgenetworks.core.utils.KnowlegdeBase.KnowledgeBaseUpdateJob;
+import com.geedgenetworks.core.udf.knowlegdeBase.handler.GeoIpKnowledgeBaseHandler;
+import com.geedgenetworks.core.udf.knowlegdeBase.KnowledgeBaseUpdateJob;
import com.alibaba.fastjson2.JSON;
import com.geedgenetworks.model.LocationResponse;
@@ -106,7 +106,7 @@ public class GeoIpLookup implements UDF {
private void checkUdfContext(UDFContext udfContext) {
- if (udfContext.getLookup_fields() == null || udfContext.getOutput_fields() == null || udfContext.getParameters() == null) {
+ if (udfContext.getLookup_fields() == null || udfContext.getParameters() == null) {
throw new GrootStreamRuntimeException(CommonErrorCode.ILLEGAL_ARGUMENT, "Missing required parameters");
}
if (udfContext.getLookup_fields().size() != 1) {
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/AnonymityLookup.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/AnonymityLookup.java
index 0e27355..218b6f1 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/AnonymityLookup.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/AnonymityLookup.java
@@ -2,9 +2,9 @@ package com.geedgenetworks.core.udf.cn;
import com.geedgenetworks.common.Event;
import com.geedgenetworks.common.udf.UDFContext;
-import com.geedgenetworks.core.utils.KnowlegdeBase.Handler.cn.IocDarkwebKnowledgeBaseHandler;
-import com.geedgenetworks.core.utils.KnowlegdeBase.Handler.cn.RuleKnowledgeBaseHandler;
-import com.geedgenetworks.core.utils.KnowlegdeBase.KnowledgeBaseUpdateJob;
+import com.geedgenetworks.core.udf.knowlegdeBase.handler.IocDarkwebKnowledgeBaseHandler;
+import com.geedgenetworks.core.udf.knowlegdeBase.handler.RuleKnowledgeBaseHandler;
+import com.geedgenetworks.core.udf.knowlegdeBase.KnowledgeBaseUpdateJob;
import org.apache.flink.api.common.functions.RuntimeContext;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/AppCategoryLookup.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/AppCategoryLookup.java
index feae361..75a8667 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/AppCategoryLookup.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/AppCategoryLookup.java
@@ -2,8 +2,8 @@ package com.geedgenetworks.core.udf.cn;
import com.geedgenetworks.common.Event;
import com.geedgenetworks.common.udf.UDFContext;
-import com.geedgenetworks.core.utils.KnowlegdeBase.Handler.cn.AppCategoryKnowledgeBaseHandler;
-import com.geedgenetworks.core.utils.KnowlegdeBase.KnowledgeBaseUpdateJob;
+import com.geedgenetworks.core.udf.knowlegdeBase.handler.AppCategoryKnowledgeBaseHandler;
+import com.geedgenetworks.core.udf.knowlegdeBase.KnowledgeBaseUpdateJob;
import org.apache.flink.api.common.functions.RuntimeContext;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/DnsServerInfoLookup.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/DnsServerInfoLookup.java
index 3812bc6..d73b7ce 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/DnsServerInfoLookup.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/DnsServerInfoLookup.java
@@ -1,8 +1,8 @@
package com.geedgenetworks.core.udf.cn;
import com.geedgenetworks.common.Event;
-import com.geedgenetworks.core.utils.KnowlegdeBase.Handler.cn.DnsServerInfoKnowledgeBaseHandler;
-import com.geedgenetworks.core.utils.KnowlegdeBase.KnowledgeBaseUpdateJob;
+import com.geedgenetworks.core.udf.knowlegdeBase.handler.DnsServerInfoKnowledgeBaseHandler;
+import com.geedgenetworks.core.udf.knowlegdeBase.KnowledgeBaseUpdateJob;
/**
* @author gujinkai
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/FieldsMerge.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/FieldsMerge.java
index ae53321..0871909 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/FieldsMerge.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/FieldsMerge.java
@@ -14,6 +14,7 @@ import java.util.stream.Collectors;
* @version 1.0
* @date 2024/1/23 11:20
*/
+@Deprecated
public class FieldsMerge implements UDF {
private List<String> lookupFieldNames;
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/FqdnCategoryLookup.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/FqdnCategoryLookup.java
index 4aa007c..66c386e 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/FqdnCategoryLookup.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/FqdnCategoryLookup.java
@@ -2,8 +2,8 @@ package com.geedgenetworks.core.udf.cn;
import com.geedgenetworks.common.Event;
import com.geedgenetworks.common.udf.UDFContext;
-import com.geedgenetworks.core.utils.KnowlegdeBase.Handler.cn.FqdnCategoryKnowledgeBaseHandler;
-import com.geedgenetworks.core.utils.KnowlegdeBase.KnowledgeBaseUpdateJob;
+import com.geedgenetworks.core.udf.knowlegdeBase.handler.FqdnCategoryKnowledgeBaseHandler;
+import com.geedgenetworks.core.udf.knowlegdeBase.KnowledgeBaseUpdateJob;
import org.apache.flink.api.common.functions.RuntimeContext;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/FqdnWhoisLookup.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/FqdnWhoisLookup.java
index 28b5282..3ab1d28 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/FqdnWhoisLookup.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/FqdnWhoisLookup.java
@@ -1,8 +1,8 @@
package com.geedgenetworks.core.udf.cn;
import com.geedgenetworks.common.Event;
-import com.geedgenetworks.core.utils.KnowlegdeBase.Handler.cn.FqdnWhoisKnowledgeBaseHandler;
-import com.geedgenetworks.core.utils.KnowlegdeBase.KnowledgeBaseUpdateJob;
+import com.geedgenetworks.core.udf.knowlegdeBase.handler.FqdnWhoisKnowledgeBaseHandler;
+import com.geedgenetworks.core.udf.knowlegdeBase.KnowledgeBaseUpdateJob;
/**
* @author gujinkai
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/IcpLookup.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/IcpLookup.java
index 395e8ff..18a0590 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/IcpLookup.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/IcpLookup.java
@@ -1,8 +1,8 @@
package com.geedgenetworks.core.udf.cn;
import com.geedgenetworks.common.Event;
-import com.geedgenetworks.core.utils.KnowlegdeBase.Handler.cn.FqdnIcpKnowledgeBaseHandler;
-import com.geedgenetworks.core.utils.KnowlegdeBase.KnowledgeBaseUpdateJob;
+import com.geedgenetworks.core.udf.knowlegdeBase.handler.FqdnIcpKnowledgeBaseHandler;
+import com.geedgenetworks.core.udf.knowlegdeBase.KnowledgeBaseUpdateJob;
/**
* @author gujinkai
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/IdcRenterLookup.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/IdcRenterLookup.java
index dfb63d5..283fa09 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/IdcRenterLookup.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/IdcRenterLookup.java
@@ -1,8 +1,8 @@
package com.geedgenetworks.core.udf.cn;
import com.geedgenetworks.common.Event;
-import com.geedgenetworks.core.utils.KnowlegdeBase.Handler.cn.IdcRenterKnowledgeBaseHandler;
-import com.geedgenetworks.core.utils.KnowlegdeBase.KnowledgeBaseUpdateJob;
+import com.geedgenetworks.core.udf.knowlegdeBase.handler.IdcRenterKnowledgeBaseHandler;
+import com.geedgenetworks.core.udf.knowlegdeBase.KnowledgeBaseUpdateJob;
/**
* @author gujinkai
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/IocLookup.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/IocLookup.java
index 03dbace..2cefe00 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/IocLookup.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/IocLookup.java
@@ -2,9 +2,9 @@ package com.geedgenetworks.core.udf.cn;
import com.geedgenetworks.common.Event;
import com.geedgenetworks.common.udf.UDFContext;
-import com.geedgenetworks.core.utils.KnowlegdeBase.Handler.cn.IocMalwareKnowledgeBaseHandler;
-import com.geedgenetworks.core.utils.KnowlegdeBase.Handler.cn.RuleKnowledgeBaseHandler;
-import com.geedgenetworks.core.utils.KnowlegdeBase.KnowledgeBaseUpdateJob;
+import com.geedgenetworks.core.udf.knowlegdeBase.handler.IocMalwareKnowledgeBaseHandler;
+import com.geedgenetworks.core.udf.knowlegdeBase.handler.RuleKnowledgeBaseHandler;
+import com.geedgenetworks.core.udf.knowlegdeBase.KnowledgeBaseUpdateJob;
import org.apache.flink.api.common.functions.RuntimeContext;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/IpZoneLookup.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/IpZoneLookup.java
index c174deb..f113aa9 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/IpZoneLookup.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/IpZoneLookup.java
@@ -1,8 +1,8 @@
package com.geedgenetworks.core.udf.cn;
import com.geedgenetworks.common.Event;
-import com.geedgenetworks.core.utils.KnowlegdeBase.Handler.cn.InternalIpKnowledgeBaseHandler;
-import com.geedgenetworks.core.utils.KnowlegdeBase.KnowledgeBaseUpdateJob;
+import com.geedgenetworks.core.udf.knowlegdeBase.handler.InternalIpKnowledgeBaseHandler;
+import com.geedgenetworks.core.udf.knowlegdeBase.KnowledgeBaseUpdateJob;
/**
* @author gujinkai
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/LinkDirectionLookup.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/LinkDirectionLookup.java
index 883ae01..02441bd 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/LinkDirectionLookup.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/LinkDirectionLookup.java
@@ -1,8 +1,8 @@
package com.geedgenetworks.core.udf.cn;
import com.geedgenetworks.common.Event;
-import com.geedgenetworks.core.utils.KnowlegdeBase.Handler.cn.LinkDirectionKnowledgeBaseHandler;
-import com.geedgenetworks.core.utils.KnowlegdeBase.KnowledgeBaseUpdateJob;
+import com.geedgenetworks.core.udf.knowlegdeBase.handler.LinkDirectionKnowledgeBaseHandler;
+import com.geedgenetworks.core.udf.knowlegdeBase.KnowledgeBaseUpdateJob;
/**
* @author gujinkai
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/UserDefineTagLookup.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/UserDefineTagLookup.java
index c10917d..599c158 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/UserDefineTagLookup.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/UserDefineTagLookup.java
@@ -2,8 +2,8 @@ package com.geedgenetworks.core.udf.cn;
import com.geedgenetworks.common.Event;
import com.geedgenetworks.common.udf.UDFContext;
-import com.geedgenetworks.core.utils.KnowlegdeBase.Handler.cn.*;
-import com.geedgenetworks.core.utils.KnowlegdeBase.KnowledgeBaseUpdateJob;
+import com.geedgenetworks.core.udf.knowlegdeBase.handler.*;
+import com.geedgenetworks.core.udf.knowlegdeBase.KnowledgeBaseUpdateJob;
import org.apache.flink.api.common.functions.RuntimeContext;
import java.util.ArrayList;
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/VpnLookup.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/VpnLookup.java
index b084a03..2eaf1f6 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/VpnLookup.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/cn/VpnLookup.java
@@ -2,9 +2,9 @@ package com.geedgenetworks.core.udf.cn;
import com.geedgenetworks.common.Event;
import com.geedgenetworks.common.udf.UDFContext;
-import com.geedgenetworks.core.utils.KnowlegdeBase.Handler.cn.DomainVpnKnowledgeBaseHandler;
-import com.geedgenetworks.core.utils.KnowlegdeBase.Handler.cn.IpVpnKnowledgeBaseHandler;
-import com.geedgenetworks.core.utils.KnowlegdeBase.KnowledgeBaseUpdateJob;
+import com.geedgenetworks.core.udf.knowlegdeBase.handler.DomainVpnKnowledgeBaseHandler;
+import com.geedgenetworks.core.udf.knowlegdeBase.handler.IpVpnKnowledgeBaseHandler;
+import com.geedgenetworks.core.udf.knowlegdeBase.KnowledgeBaseUpdateJob;
import org.apache.flink.api.common.functions.RuntimeContext;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/KnowledgeBaseScheduler.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/KnowledgeBaseScheduler.java
index 2911894..59ed74c 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/KnowledgeBaseScheduler.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/KnowledgeBaseScheduler.java
@@ -1,4 +1,4 @@
-package com.geedgenetworks.core.utils.KnowlegdeBase;
+package com.geedgenetworks.core.udf.knowlegdeBase;
import com.esotericsoftware.minlog.Log;
import com.geedgenetworks.core.utils.SchedulerUtils;
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/KnowledgeBaseUpdateJob.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/KnowledgeBaseUpdateJob.java
index ca2e0b7..188eb97 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/KnowledgeBaseUpdateJob.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/KnowledgeBaseUpdateJob.java
@@ -1,15 +1,13 @@
-package com.geedgenetworks.core.utils.KnowlegdeBase;
+package com.geedgenetworks.core.udf.knowlegdeBase;
import com.esotericsoftware.minlog.Log;
import com.geedgenetworks.common.config.KnowledgeBaseConfig;
import com.geedgenetworks.core.pojo.KnowledgeBaseConfigWithHandler;
-import com.geedgenetworks.core.utils.KnowlegdeBase.Handler.AbstractKnowledgeBaseHandler;
+import com.geedgenetworks.core.udf.knowlegdeBase.handler.AbstractKnowledgeBaseHandler;
import lombok.Getter;
import lombok.extern.slf4j.Slf4j;
import org.quartz.Job;
import org.quartz.JobExecutionContext;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
import java.util.*;
import java.util.concurrent.ConcurrentHashMap;
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/AbstractKnowledgeBaseHandler.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/AbstractKnowledgeBaseHandler.java
index a6bfd51..9e6e0ed 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/AbstractKnowledgeBaseHandler.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/AbstractKnowledgeBaseHandler.java
@@ -1,4 +1,4 @@
-package com.geedgenetworks.core.utils.KnowlegdeBase.Handler;
+package com.geedgenetworks.core.udf.knowlegdeBase.handler;
import com.alibaba.fastjson2.JSON;
import com.alibaba.fastjson2.JSONArray;
@@ -7,8 +7,6 @@ import com.geedgenetworks.common.config.KnowledgeBaseConfig;
import com.geedgenetworks.core.pojo.KnowLedgeBaseFileMeta;
import com.geedgenetworks.core.utils.HttpClientPoolUtil;
import lombok.extern.slf4j.Slf4j;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
import java.net.URI;
import java.security.MessageDigest;
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/AbstractMultipleKnowledgeBaseHandler.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/AbstractMultipleKnowledgeBaseHandler.java
index 1d308a8..4c342d4 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/AbstractMultipleKnowledgeBaseHandler.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/AbstractMultipleKnowledgeBaseHandler.java
@@ -1,8 +1,7 @@
-package com.geedgenetworks.core.utils.KnowlegdeBase.Handler.cn;
+package com.geedgenetworks.core.udf.knowlegdeBase.handler;
import com.alibaba.fastjson2.JSON;
import com.geedgenetworks.common.config.KnowledgeBaseConfig;
-import com.geedgenetworks.core.utils.KnowlegdeBase.Handler.AbstractKnowledgeBaseHandler;
import com.geedgenetworks.core.utils.cn.common.KnowledgeMetadata;
import lombok.AllArgsConstructor;
import lombok.Data;
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/AbstractSingleKnowledgeBaseHandler.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/AbstractSingleKnowledgeBaseHandler.java
index 98f1ce9..0b48429 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/AbstractSingleKnowledgeBaseHandler.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/AbstractSingleKnowledgeBaseHandler.java
@@ -1,9 +1,8 @@
-package com.geedgenetworks.core.utils.KnowlegdeBase.Handler.cn;
+package com.geedgenetworks.core.udf.knowlegdeBase.handler;
import com.alibaba.fastjson2.JSON;
import com.geedgenetworks.common.config.KnowledgeBaseConfig;
import com.geedgenetworks.core.pojo.KnowLedgeBaseFileMeta;
-import com.geedgenetworks.core.utils.KnowlegdeBase.Handler.AbstractKnowledgeBaseHandler;
import com.geedgenetworks.core.utils.cn.common.KnowledgeMetadata;
import lombok.Data;
import org.apache.http.HttpEntity;
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/AppCategoryKnowledgeBaseHandler.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/AppCategoryKnowledgeBaseHandler.java
index a9ae199..e2a32ef 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/AppCategoryKnowledgeBaseHandler.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/AppCategoryKnowledgeBaseHandler.java
@@ -1,4 +1,4 @@
-package com.geedgenetworks.core.utils.KnowlegdeBase.Handler.cn;
+package com.geedgenetworks.core.udf.knowlegdeBase.handler;
import com.geedgenetworks.core.utils.cn.csv.HighCsvReader;
import lombok.Data;
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/AppTagUserDefineKnowledgeBaseHandler.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/AppTagUserDefineKnowledgeBaseHandler.java
index f83596c..39151e8 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/AppTagUserDefineKnowledgeBaseHandler.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/AppTagUserDefineKnowledgeBaseHandler.java
@@ -1,4 +1,4 @@
-package com.geedgenetworks.core.utils.KnowlegdeBase.Handler.cn;
+package com.geedgenetworks.core.udf.knowlegdeBase.handler;
import com.geedgenetworks.core.utils.cn.common.KnowledgeMetadata;
import com.geedgenetworks.core.utils.cn.csv.HighCsvReader;
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/AsnKnowledgeBaseHandler.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/AsnKnowledgeBaseHandler.java
index 5ded230..1c0ad97 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/AsnKnowledgeBaseHandler.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/AsnKnowledgeBaseHandler.java
@@ -1,4 +1,4 @@
-package com.geedgenetworks.core.utils.KnowlegdeBase.Handler;
+package com.geedgenetworks.core.udf.knowlegdeBase.handler;
import com.esotericsoftware.minlog.Log;
@@ -9,8 +9,6 @@ import com.geedgenetworks.core.pojo.KnowledgeBaseInfoForIpLookUp;
import com.geedgenetworks.utils.IpLookupV2;
import lombok.Getter;
import lombok.extern.slf4j.Slf4j;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
import java.io.ByteArrayInputStream;
import java.util.*;
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/DnsServerInfoKnowledgeBaseHandler.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/DnsServerInfoKnowledgeBaseHandler.java
index 5d12d8b..3cd8574 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/DnsServerInfoKnowledgeBaseHandler.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/DnsServerInfoKnowledgeBaseHandler.java
@@ -1,4 +1,4 @@
-package com.geedgenetworks.core.utils.KnowlegdeBase.Handler.cn;
+package com.geedgenetworks.core.udf.knowlegdeBase.handler;
import com.geedgenetworks.core.utils.cn.csv.HighCsvReader;
import org.slf4j.Logger;
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/DomainTagUserDefineKnowledgeBaseHandler.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/DomainTagUserDefineKnowledgeBaseHandler.java
index a9417e9..c8ceb03 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/DomainTagUserDefineKnowledgeBaseHandler.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/DomainTagUserDefineKnowledgeBaseHandler.java
@@ -1,4 +1,4 @@
-package com.geedgenetworks.core.utils.KnowlegdeBase.Handler.cn;
+package com.geedgenetworks.core.udf.knowlegdeBase.handler;
import com.geedgenetworks.core.utils.cn.common.KnowledgeMetadata;
import com.geedgenetworks.core.utils.cn.common.Trie;
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/DomainVpnKnowledgeBaseHandler.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/DomainVpnKnowledgeBaseHandler.java
index 5789283..fd4c323 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/DomainVpnKnowledgeBaseHandler.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/DomainVpnKnowledgeBaseHandler.java
@@ -1,4 +1,4 @@
-package com.geedgenetworks.core.utils.KnowlegdeBase.Handler.cn;
+package com.geedgenetworks.core.udf.knowlegdeBase.handler;
import com.geedgenetworks.core.utils.cn.csv.HighCsvReader;
import org.slf4j.Logger;
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/FqdnCategoryKnowledgeBaseHandler.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/FqdnCategoryKnowledgeBaseHandler.java
index 89d05ca..5f9aca3 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/FqdnCategoryKnowledgeBaseHandler.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/FqdnCategoryKnowledgeBaseHandler.java
@@ -1,4 +1,4 @@
-package com.geedgenetworks.core.utils.KnowlegdeBase.Handler.cn;
+package com.geedgenetworks.core.udf.knowlegdeBase.handler;
import com.geedgenetworks.core.utils.cn.csv.HighCsvReader;
import lombok.Data;
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/FqdnIcpKnowledgeBaseHandler.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/FqdnIcpKnowledgeBaseHandler.java
index 685aaf4..c99cefb 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/FqdnIcpKnowledgeBaseHandler.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/FqdnIcpKnowledgeBaseHandler.java
@@ -1,4 +1,4 @@
-package com.geedgenetworks.core.utils.KnowlegdeBase.Handler.cn;
+package com.geedgenetworks.core.udf.knowlegdeBase.handler;
import com.geedgenetworks.core.utils.cn.csv.HighCsvReader;
import org.slf4j.Logger;
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/FqdnWhoisKnowledgeBaseHandler.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/FqdnWhoisKnowledgeBaseHandler.java
index f2ca3ff..8c071d1 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/FqdnWhoisKnowledgeBaseHandler.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/FqdnWhoisKnowledgeBaseHandler.java
@@ -1,4 +1,4 @@
-package com.geedgenetworks.core.utils.KnowlegdeBase.Handler.cn;
+package com.geedgenetworks.core.udf.knowlegdeBase.handler;
import com.geedgenetworks.core.utils.cn.csv.HighCsvReader;
import org.slf4j.Logger;
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/GeoIpKnowledgeBaseHandler.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/GeoIpKnowledgeBaseHandler.java
index 6f4cd89..67a59b8 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/GeoIpKnowledgeBaseHandler.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/GeoIpKnowledgeBaseHandler.java
@@ -1,4 +1,4 @@
-package com.geedgenetworks.core.utils.KnowlegdeBase.Handler;
+package com.geedgenetworks.core.udf.knowlegdeBase.handler;
import com.esotericsoftware.minlog.Log;
@@ -9,8 +9,6 @@ import com.geedgenetworks.model.LocationResponse;
import com.geedgenetworks.utils.IpLookupV2;
import lombok.Getter;
import lombok.extern.slf4j.Slf4j;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
import java.io.ByteArrayInputStream;
import java.util.*;
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/IdcRenterKnowledgeBaseHandler.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/IdcRenterKnowledgeBaseHandler.java
index f180ce0..74ed18e 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/IdcRenterKnowledgeBaseHandler.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/IdcRenterKnowledgeBaseHandler.java
@@ -1,4 +1,4 @@
-package com.geedgenetworks.core.utils.KnowlegdeBase.Handler.cn;
+package com.geedgenetworks.core.udf.knowlegdeBase.handler;
import com.geedgenetworks.core.utils.cn.common.IPAddress;
import com.geedgenetworks.core.utils.cn.csv.HighCsvReader;
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/InternalIpKnowledgeBaseHandler.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/InternalIpKnowledgeBaseHandler.java
index d8cc44e..47776f8 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/InternalIpKnowledgeBaseHandler.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/InternalIpKnowledgeBaseHandler.java
@@ -1,4 +1,4 @@
-package com.geedgenetworks.core.utils.KnowlegdeBase.Handler.cn;
+package com.geedgenetworks.core.udf.knowlegdeBase.handler;
import com.geedgenetworks.core.utils.cn.common.IPAddress;
import com.geedgenetworks.core.utils.cn.csv.HighCsvReader;
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/IocDarkwebKnowledgeBaseHandler.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/IocDarkwebKnowledgeBaseHandler.java
index 5898328..3fcb645 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/IocDarkwebKnowledgeBaseHandler.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/IocDarkwebKnowledgeBaseHandler.java
@@ -1,4 +1,4 @@
-package com.geedgenetworks.core.utils.KnowlegdeBase.Handler.cn;
+package com.geedgenetworks.core.udf.knowlegdeBase.handler;
import com.geedgenetworks.core.utils.cn.csv.HighCsvReader;
import org.slf4j.Logger;
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/IocMalwareKnowledgeBaseHandler.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/IocMalwareKnowledgeBaseHandler.java
index 428ba1e..beddee7 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/IocMalwareKnowledgeBaseHandler.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/IocMalwareKnowledgeBaseHandler.java
@@ -1,4 +1,4 @@
-package com.geedgenetworks.core.utils.KnowlegdeBase.Handler.cn;
+package com.geedgenetworks.core.udf.knowlegdeBase.handler;
import com.geedgenetworks.core.utils.cn.common.Trie;
import com.geedgenetworks.core.utils.cn.csv.HighCsvReader;
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/IpTagUserDefineKnowledgeBaseHandler.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/IpTagUserDefineKnowledgeBaseHandler.java
index c6b4ac8..b8212f0 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/IpTagUserDefineKnowledgeBaseHandler.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/IpTagUserDefineKnowledgeBaseHandler.java
@@ -1,4 +1,4 @@
-package com.geedgenetworks.core.utils.KnowlegdeBase.Handler.cn;
+package com.geedgenetworks.core.udf.knowlegdeBase.handler;
import com.geedgenetworks.core.utils.cn.common.KnowledgeMetadata;
import com.geedgenetworks.core.utils.cn.csv.HighCsvReader;
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/IpVpnKnowledgeBaseHandler.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/IpVpnKnowledgeBaseHandler.java
index 97eba37..e159352 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/IpVpnKnowledgeBaseHandler.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/IpVpnKnowledgeBaseHandler.java
@@ -1,4 +1,4 @@
-package com.geedgenetworks.core.utils.KnowlegdeBase.Handler.cn;
+package com.geedgenetworks.core.udf.knowlegdeBase.handler;
import com.geedgenetworks.core.utils.cn.common.IPAddress;
import com.geedgenetworks.core.utils.cn.csv.HighCsvReader;
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/LinkDirectionKnowledgeBaseHandler.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/LinkDirectionKnowledgeBaseHandler.java
index 3ff9a6f..bb527e3 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/LinkDirectionKnowledgeBaseHandler.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/LinkDirectionKnowledgeBaseHandler.java
@@ -1,4 +1,4 @@
-package com.geedgenetworks.core.utils.KnowlegdeBase.Handler.cn;
+package com.geedgenetworks.core.udf.knowlegdeBase.handler;
import com.geedgenetworks.core.utils.cn.csv.HighCsvReader;
import org.slf4j.Logger;
diff --git a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/RuleKnowledgeBaseHandler.java b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/RuleKnowledgeBaseHandler.java
index 23ce14e..418a8b8 100644
--- a/groot-core/src/main/java/com/geedgenetworks/core/utils/KnowlegdeBase/Handler/cn/RuleKnowledgeBaseHandler.java
+++ b/groot-core/src/main/java/com/geedgenetworks/core/udf/knowlegdeBase/handler/RuleKnowledgeBaseHandler.java
@@ -1,8 +1,7 @@
-package com.geedgenetworks.core.utils.KnowlegdeBase.Handler.cn;
+package com.geedgenetworks.core.udf.knowlegdeBase.handler;
import com.alibaba.fastjson2.JSON;
import com.geedgenetworks.common.config.KnowledgeBaseConfig;
-import com.geedgenetworks.core.utils.KnowlegdeBase.Handler.AbstractKnowledgeBaseHandler;
import lombok.Data;
import org.apache.http.HttpEntity;
import org.apache.http.client.methods.CloseableHttpResponse;
diff --git a/groot-core/src/test/java/com/geedgenetworks/core/udf/cn/LookupTestUtils.java b/groot-core/src/test/java/com/geedgenetworks/core/udf/cn/LookupTestUtils.java
index 6678e2e..edf6a6f 100644
--- a/groot-core/src/test/java/com/geedgenetworks/core/udf/cn/LookupTestUtils.java
+++ b/groot-core/src/test/java/com/geedgenetworks/core/udf/cn/LookupTestUtils.java
@@ -5,9 +5,9 @@ import com.geedgenetworks.common.Constants;
import com.geedgenetworks.common.config.CommonConfig;
import com.geedgenetworks.common.config.KnowledgeBaseConfig;
import com.geedgenetworks.core.pojo.KnowLedgeBaseFileMeta;
-import com.geedgenetworks.core.utils.KnowlegdeBase.Handler.AbstractKnowledgeBaseHandler;
-import com.geedgenetworks.core.utils.KnowlegdeBase.Handler.cn.AbstractMultipleKnowledgeBaseHandler;
-import com.geedgenetworks.core.utils.KnowlegdeBase.KnowledgeBaseUpdateJob;
+import com.geedgenetworks.core.udf.knowlegdeBase.handler.AbstractKnowledgeBaseHandler;
+import com.geedgenetworks.core.udf.knowlegdeBase.handler.AbstractMultipleKnowledgeBaseHandler;
+import com.geedgenetworks.core.udf.knowlegdeBase.KnowledgeBaseUpdateJob;
import com.geedgenetworks.core.utils.cn.common.KnowledgeMetadata;
import org.apache.flink.api.common.ExecutionConfig;
import org.apache.flink.api.common.functions.RuntimeContext;
diff --git a/groot-core/src/test/java/com/geedgenetworks/core/udf/test/AsnLookupFunctionTest.java b/groot-core/src/test/java/com/geedgenetworks/core/udf/test/AsnLookupFunctionTest.java
index 4dc2766..ab8c11b 100644
--- a/groot-core/src/test/java/com/geedgenetworks/core/udf/test/AsnLookupFunctionTest.java
+++ b/groot-core/src/test/java/com/geedgenetworks/core/udf/test/AsnLookupFunctionTest.java
@@ -5,8 +5,8 @@ import com.geedgenetworks.common.config.KnowledgeBaseConfig;
import com.geedgenetworks.common.exception.GrootStreamRuntimeException;
import com.geedgenetworks.common.udf.UDFContext;
import com.geedgenetworks.core.udf.AsnLookup;
-import com.geedgenetworks.core.utils.KnowlegdeBase.Handler.AsnKnowledgeBaseHandler;
-import com.geedgenetworks.core.utils.KnowlegdeBase.KnowledgeBaseUpdateJob;
+import com.geedgenetworks.core.udf.knowlegdeBase.handler.AsnKnowledgeBaseHandler;
+import com.geedgenetworks.core.udf.knowlegdeBase.KnowledgeBaseUpdateJob;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
diff --git a/groot-core/src/test/java/com/geedgenetworks/core/udf/test/GeoIpLookupFunctionTest.java b/groot-core/src/test/java/com/geedgenetworks/core/udf/test/GeoIpLookupFunctionTest.java
index 845f6fe..586fbe4 100644
--- a/groot-core/src/test/java/com/geedgenetworks/core/udf/test/GeoIpLookupFunctionTest.java
+++ b/groot-core/src/test/java/com/geedgenetworks/core/udf/test/GeoIpLookupFunctionTest.java
@@ -5,8 +5,8 @@ import com.geedgenetworks.common.config.KnowledgeBaseConfig;
import com.geedgenetworks.common.exception.GrootStreamRuntimeException;
import com.geedgenetworks.common.udf.UDFContext;
import com.geedgenetworks.core.udf.GeoIpLookup;
-import com.geedgenetworks.core.utils.KnowlegdeBase.Handler.GeoIpKnowledgeBaseHandler;
-import com.geedgenetworks.core.utils.KnowlegdeBase.KnowledgeBaseUpdateJob;
+import com.geedgenetworks.core.udf.knowlegdeBase.handler.GeoIpKnowledgeBaseHandler;
+import com.geedgenetworks.core.udf.knowlegdeBase.KnowledgeBaseUpdateJob;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
diff --git a/groot-core/src/test/java/com/geedgenetworks/core/udf/test/simple/GenerateStringArrayFunctionTest.java b/groot-core/src/test/java/com/geedgenetworks/core/udf/test/simple/GenerateStringArrayFunctionTest.java
index 98fc2b1..5490299 100644
--- a/groot-core/src/test/java/com/geedgenetworks/core/udf/test/simple/GenerateStringArrayFunctionTest.java
+++ b/groot-core/src/test/java/com/geedgenetworks/core/udf/test/simple/GenerateStringArrayFunctionTest.java
@@ -5,6 +5,7 @@ import com.geedgenetworks.common.udf.UDFContext;
import com.geedgenetworks.core.udf.GenerateStringArray;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
+import scala.Array;
import java.util.*;
@@ -16,8 +17,8 @@ public class GenerateStringArrayFunctionTest {
@BeforeAll
public static void setUp() {
udfContext = new UDFContext();
- udfContext.setLookup_fields(Arrays.asList("client_asn", "server_asn"));
- udfContext.setOutput_fields(Collections.singletonList("asn_list"));
+ udfContext.setLookup_fields(Arrays.asList("t1", "t2","t3","t4","t5"));
+ udfContext.setOutput_fields(Collections.singletonList("result_list"));
}
// 测试方法
@@ -28,13 +29,24 @@ public class GenerateStringArrayFunctionTest {
generateStringArray.open(null, udfContext);
Event event = new Event();
Map<String, Object> extractedFields = new HashMap<>();
- extractedFields.put("client_asn", "6975");
- extractedFields.put("server_asn", "333");
+ extractedFields.put("t1", "6975");
+ extractedFields.put("t2", 333);
+ extractedFields.put("t3", Arrays.asList("1", "2"));
+ String[] array = {"1", "2"};
+ extractedFields.put("t4", array);
+ extractedFields.put("t5", null);
event.setExtractedFields(extractedFields);
Event result = generateStringArray.evaluate(event);
- List<String> resultList = (List<String>) result.getExtractedFields().get("asn_list");
+ List<String> resultList = (List<String>) result.getExtractedFields().get("result_list");
assertEquals("6975", resultList.get(0));
assertEquals("333", resultList.get(1));
+ assertEquals("1", resultList.get(2));
+ assertEquals("2", resultList.get(3));
+ assertEquals("1", resultList.get(4));
+ assertEquals("2", resultList.get(5));
+ assertEquals(6, resultList.size());
+
+
}
}
diff --git a/groot-shaded/http-client-shaded/pom.xml b/groot-shaded/http-client-shaded/pom.xml
index 3470e44..3be16b7 100644
--- a/groot-shaded/http-client-shaded/pom.xml
+++ b/groot-shaded/http-client-shaded/pom.xml
@@ -64,6 +64,7 @@
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
+ <version>3.2.0</version>
<executions>
<execution>
<id>attach-artifacts</id>