修复多攻击类型多线程时OriginalData为空问题

This commit is contained in:
yinjiangyi
2021-08-02 14:13:01 +08:00
parent 4b84eabae2
commit 2ff29dac6c
7 changed files with 321 additions and 7 deletions

File diff suppressed because one or more lines are too long

View File

@@ -59,7 +59,7 @@ public class DruidData {
+ " FROM " + ApplicationConfig.DRUID_TABLE + " FROM " + ApplicationConfig.DRUID_TABLE
+ " WHERE " + ApplicationConfig.DRUID_ATTACKTYPE_COLUMN_NAME + " = '" + attackType + "'" + " WHERE " + ApplicationConfig.DRUID_ATTACKTYPE_COLUMN_NAME + " = '" + attackType + "'"
+ " AND " + timeFilter + " AND " + timeFilter
+ " LIMIT 100"; // FOR TEST + " LIMIT 10"; // FOR TEST
try{ try{
ResultSet resultSet = DruidUtils.executeQuery(connection,sql); ResultSet resultSet = DruidUtils.executeQuery(connection,sql);
while(resultSet.next()){ while(resultSet.next()){
@@ -104,7 +104,7 @@ public class DruidData {
} }
public List<Map<String, Object>> getTimeSeriesData(List<Map<String, Object>> allData, String ip, String attackType){ public List<Map<String, Object>> getTimeSeriesData(List<Map<String, Object>> allData, String ip, String attackType){
List<Map<String, Object>> rsList = null; List<Map<String, Object>> rsList = new ArrayList<>();
try{ try{
rsList = allData.stream(). rsList = allData.stream().
filter(i->(i.get(ApplicationConfig.DRUID_SERVERIP_COLUMN_NAME).equals(ip))) filter(i->(i.get(ApplicationConfig.DRUID_SERVERIP_COLUMN_NAME).equals(ip)))

View File

@@ -140,12 +140,12 @@ public class BaselineGeneration {
Long startQuerySingleIPTime = System.currentTimeMillis(); Long startQuerySingleIPTime = System.currentTimeMillis();
List<Map<String, Object>> originSeries = druidData.getTimeSeriesData(batchDruidData, ip, attackType); List<Map<String, Object>> originSeries = druidData.getTimeSeriesData(batchDruidData, ip, attackType);
if (originSeries==null){ if (originSeries.size()==0){
return null; return null;
} }
Long endQuerySingleIPTime = System.currentTimeMillis(); Long endQuerySingleIPTime = System.currentTimeMillis();
LOG.info("性能测试单个ip查询耗时——"+(endQuerySingleIPTime-startQuerySingleIPTime)); //LOG.info("性能测试单个ip查询耗时——"+(endQuerySingleIPTime-startQuerySingleIPTime));
// 时间序列缺失值补0 // 时间序列缺失值补0
List<Map<String, Object>> completSeries = SeriesUtils.complementSeries(originSeries); List<Map<String, Object>> completSeries = SeriesUtils.complementSeries(originSeries);
@@ -176,7 +176,7 @@ public class BaselineGeneration {
} }
Long endGenerateSingleIPTime = System.currentTimeMillis(); Long endGenerateSingleIPTime = System.currentTimeMillis();
LOG.info("性能测试单个baseline生成耗时——"+(endGenerateSingleIPTime-endQuerySingleIPTime)); //LOG.info("性能测试单个baseline生成耗时——"+(endGenerateSingleIPTime-endQuerySingleIPTime));
return baselineArr; return baselineArr;
} }

View File

@@ -54,5 +54,5 @@ baseline.kalman.r=0.002
# 每更新1000个记录打印log # 每更新1000个记录打印log
log.write.count=10000 log.write.count=10000
# FOR TEST # FOR TEST
generate.batch.number=100 generate.batch.number=5

View File

@@ -54,5 +54,5 @@ baseline.kalman.r=0.002
# 每更新1000个记录打印log # 每更新1000个记录打印log
log.write.count=10000 log.write.count=10000
# FOR TEST # FOR TEST
generate.batch.number=100 generate.batch.number=5