summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoryinjiangyi <[email protected]>2021-10-29 11:19:13 +0800
committeryinjiangyi <[email protected]>2021-10-29 11:19:13 +0800
commit646071b16f4dbc2f201e769cbd633583243d4306 (patch)
tree117b3c0375ca24d8fdacb0e1c3b614692595e191
parentf2b568e354430199634db1a264615d02abe9f1fe (diff)
删除 p99/p50 ; 添加type2 type3填充参数
-rw-r--r--src/main/java/cn/mesalab/config/ApplicationConfig.java3
-rw-r--r--src/main/java/cn/mesalab/service/BaselineSingleThread.java12
-rw-r--r--src/main/resources/application.properties3
3 files changed, 13 insertions, 5 deletions
diff --git a/src/main/java/cn/mesalab/config/ApplicationConfig.java b/src/main/java/cn/mesalab/config/ApplicationConfig.java
index 8dea34d..3a78215 100644
--- a/src/main/java/cn/mesalab/config/ApplicationConfig.java
+++ b/src/main/java/cn/mesalab/config/ApplicationConfig.java
@@ -50,6 +50,9 @@ public class ApplicationConfig {
public static final Float BASELINE_TIMES_PERCENT_TIMES = ConfigUtils.getFloatProperty("baseline.times.percent.times");
+ public static final Float BASELINE_TYPE2_PERCENTILE = ConfigUtils.getFloatProperty("baseline.type2.percentile");
+ public static final Float BASELINE_TYPE3_PERCENTILE = ConfigUtils.getFloatProperty("baseline.type3.percentile");
+
public static final String HBASE_TABLE = ConfigUtils.getStringProperty("hbase.table");
public static final String HBASE_ZOOKEEPER_QUORUM= ConfigUtils.getStringProperty("hbase.zookeeper.quorum");
diff --git a/src/main/java/cn/mesalab/service/BaselineSingleThread.java b/src/main/java/cn/mesalab/service/BaselineSingleThread.java
index 4af75c7..b3fa542 100644
--- a/src/main/java/cn/mesalab/service/BaselineSingleThread.java
+++ b/src/main/java/cn/mesalab/service/BaselineSingleThread.java
@@ -7,6 +7,7 @@ import cn.mesalab.utils.DruidUtils;
import cn.mesalab.utils.HbaseUtils;
import cn.mesalab.utils.RetryUtils;
import cn.mesalab.utils.SeriesUtils;
+import com.google.common.collect.Lists;
import io.vavr.Tuple3;
import org.apache.calcite.avatica.AvaticaConnection;
import org.apache.calcite.avatica.AvaticaStatement;
@@ -39,7 +40,7 @@ public class BaselineSingleThread extends Thread {
private final CountDownLatch countDownLatch;
private final ArrayList<Integer> frequencyBinCounter = new ArrayList<>(Collections.nCopies(ApplicationConfig.MONITOR_FREQUENCY_BIN_NUM, 0));
- private final ArrayList<Integer> generateTypeCounter = new ArrayList<>(Collections.nCopies(2, 0));
+ private final ArrayList<Integer> generateTypeCounter = new ArrayList<>(Collections.nCopies(3, 0));
private int discardBaselineCounter = 0;
private ArrayList<String> discardIpList = new ArrayList<>();
@@ -204,12 +205,13 @@ public class BaselineSingleThread extends Thread {
// 无周期性
float ipFrequency = ipDruidData.size() / (float) completSeries.size();
updateLogFrequencyCounter(ipFrequency);
- // p99/p50 > 10
- if(ipFrequency >ApplicationConfig.BASELINE_HISTORICAL_FREQUENCY_THREAD && p99/p50 > ApplicationConfig.BASELINE_TIMES_PERCENT_TIMES){
+ // 频率判断
+ if(ipFrequency >ApplicationConfig.BASELINE_HISTORICAL_FREQUENCY_THREAD ){
baselineGenerationType = 2;
- Arrays.fill(baselineArr, ipPercentile);
+ Arrays.fill(baselineArr, SeriesUtils.percentile(series, ApplicationConfig.BASELINE_TYPE2_PERCENTILE));
} else {
- return null;
+ baselineGenerationType = 3;
+ Arrays.fill(baselineArr, SeriesUtils.percentile(series, ApplicationConfig.BASELINE_TYPE3_PERCENTILE));
}
}
diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties
index 87ecfa3..a62f68a 100644
--- a/src/main/resources/application.properties
+++ b/src/main/resources/application.properties
@@ -57,6 +57,9 @@ baseline.exception.percentile=0.99
baseline.exception.fill.percentile=0.99
baseline.rational.percentile=0.99
+baseline.type2.percentile=1
+baseline.type3.percentile=1
+
# p99/p50 倍数阈值
baseline.times.percent.times=10