From e5f30f5bfd3a527b3fb95f8108a103bafcabb71c Mon Sep 17 00:00:00 2001 From: wanglihui <949764788@qq.com> Date: Wed, 26 Aug 2020 10:51:24 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=AF=BB=E5=8F=96client=20IP?= =?UTF-8?q?=E7=A9=BA=E6=8C=87=E9=92=88=E5=BC=82=E5=B8=B8bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../cn/ac/iie/service/read/ReadHistoryArangoData.java | 6 ++++++ .../src/main/resources/application.properties | 10 +++++----- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/ip-learning-spark/src/main/java/cn/ac/iie/service/read/ReadHistoryArangoData.java b/ip-learning-spark/src/main/java/cn/ac/iie/service/read/ReadHistoryArangoData.java index 4ccd6e1..2fdd582 100644 --- a/ip-learning-spark/src/main/java/cn/ac/iie/service/read/ReadHistoryArangoData.java +++ b/ip-learning-spark/src/main/java/cn/ac/iie/service/read/ReadHistoryArangoData.java @@ -107,6 +107,12 @@ public class ReadHistoryArangoData extends Thread { private void deleteDistinctClientIpByTime(T doc) { ArrayList distCip = (ArrayList) doc.getAttribute("DIST_CIP"); ArrayList distCipTs = (ArrayList) doc.getAttribute("DIST_CIP_TS"); + if (distCip == null || distCip.isEmpty()){ + doc.updateAttribute("DIST_CIP", new String[0]); + doc.updateAttribute("DIST_CIP_TS", new long[0]); + return; + } + distCipTs.add(currentHour - RECENT_COUNT_HOUR * 3600); Collections.sort(distCipTs); int index = distCipTs.indexOf(currentHour - RECENT_COUNT_HOUR * 3600); diff --git a/ip-learning-spark/src/main/resources/application.properties b/ip-learning-spark/src/main/resources/application.properties index 3aded0c..622dc28 100644 --- a/ip-learning-spark/src/main/resources/application.properties +++ b/ip-learning-spark/src/main/resources/application.properties @@ -27,14 +27,14 @@ arangoDB.ttl=3600 thread.pool.number=5 #读取clickhouse时间范围方式,0:读取过去一小时;1:指定时间范围 -clickhouse.time.limit.type=0 -read.clickhouse.max.time=1571245220 -read.clickhouse.min.time=1571245210 +clickhouse.time.limit.type=1 +read.clickhouse.max.time=1598246519 +read.clickhouse.min.time=1597161600 #读取arangoDB时间范围方式,0:正常读;1:指定时间范围 arango.time.limit.type=0 -read.arango.max.time=1571245320 -read.arango.min.time=1571245200 +read.arango.max.time=1598246519 +read.arango.min.time=1597161600 arangoDB.read.limit= update.arango.batch=10000