diff options
12 files changed, 1 insertions, 527 deletions
diff --git a/dos-detection/pom.xml b/dos-detection/pom.xml deleted file mode 100644 index 4cf6291..0000000 --- a/dos-detection/pom.xml +++ /dev/null @@ -1,28 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<project xmlns="http://maven.apache.org/POM/4.0.0" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> - <parent> - <artifactId>flink-stream-schedule-platform</artifactId> - <groupId>com.zdjizhi</groupId> - <version>1.0-SNAPSHOT</version> - </parent> - <modelVersion>4.0.0</modelVersion> - - <artifactId>dos-detection</artifactId> - - <dependencies> - <dependency> - <groupId>com.zdjizhi</groupId> - <artifactId>platform-base</artifactId> - <version>1.0-SNAPSHOT</version> - </dependency> - - <dependency> - <groupId>com.zdjizhi</groupId> - <artifactId>platform-etl</artifactId> - <version>1.0-SNAPSHOT</version> - </dependency> - </dependencies> - -</project>
\ No newline at end of file diff --git a/dos-detection/src/main/java/com/zdjizhi/dos/EtlProcessFunction.java b/dos-detection/src/main/java/com/zdjizhi/dos/EtlProcessFunction.java deleted file mode 100644 index c2e56da..0000000 --- a/dos-detection/src/main/java/com/zdjizhi/dos/EtlProcessFunction.java +++ /dev/null @@ -1,97 +0,0 @@ -package com.zdjizhi.dos; - -import com.zdjizhi.base.common.DosSketchLog; -import com.zdjizhi.dos.common.CommonConfig; -import com.zdjizhi.dos.common.DosMetricsLog; -import org.apache.commons.lang3.StringUtils; -import org.apache.flink.api.java.tuple.Tuple2; -import org.apache.flink.api.java.tuple.Tuple6; -import org.apache.flink.streaming.api.functions.windowing.ProcessWindowFunction; -import org.apache.flink.streaming.api.windowing.windows.TimeWindow; -import org.apache.flink.util.Collector; -import org.apache.flink.util.OutputTag; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import java.util.HashSet; - -public class EtlProcessFunction extends ProcessWindowFunction<DosSketchLog, DosSketchLog, Tuple2<String,String>, TimeWindow> { - - private static final Logger logger = LoggerFactory.getLogger(EtlProcessFunction.class); - private static final String EMPTY_SOURCE_IP_IPV4 = "0.0.0.0"; - private static final String EMPTY_SOURCE_IP_IPV6 = "::"; - private static OutputTag<DosMetricsLog> outputTag = new OutputTag<DosMetricsLog>("traffic server ip metrics"){}; - - @Override - public void process(Tuple2<String, String> keys, - Context context, Iterable<DosSketchLog> elements, - Collector<DosSketchLog> out) { - DosSketchLog middleResult = getMiddleResult(keys, elements); - try { - if (middleResult != null){ - out.collect(middleResult); - logger.debug("获取中间聚合结果:{}",middleResult.toString()); - context.output(outputTag,TrafficServerIpMetrics.getOutputMetric(middleResult)); - } - }catch (Exception e){ - logger.error("获取中间聚合结果失败,middleResult: {}\n{}",middleResult.toString(),e); - } - } - - private DosSketchLog getMiddleResult(Tuple2<String, String> keys,Iterable<DosSketchLog> elements){ - - DosSketchLog midResuleLog = new DosSketchLog(); - Tuple6<Long, Long, Long,String,Long,Long> values = sketchAggregate(elements); - try { - if (values != null){ - midResuleLog.setAttack_type(keys.f0); - midResuleLog.setDestination_ip(keys.f1); - midResuleLog.setSketch_start_time(values.f4); - midResuleLog.setSketch_duration(values.f5); - midResuleLog.setSource_ip(values.f3); - midResuleLog.setSketch_sessions(values.f0); - midResuleLog.setSketch_packets(values.f1); - midResuleLog.setSketch_bytes(values.f2); - return midResuleLog; - } - } catch (Exception e){ - logger.error("加载中间结果集失败,keys: {} values: {}\n{}",keys,values,e); - } - return null; - } - - private Tuple6<Long, Long, Long,String,Long,Long> sketchAggregate(Iterable<DosSketchLog> elements){ - long sessions = 0; - long packets = 0 ; - long bytes = 0; - long startTime = System.currentTimeMillis()/1000; - long endTime = System.currentTimeMillis()/1000; - long duration = 0; - HashSet<String> sourceIpSet = new HashSet<>(); - try { - for (DosSketchLog newSketchLog : elements){ - String sourceIp = newSketchLog.getSource_ip(); - if (StringUtils.equals(sourceIp,EMPTY_SOURCE_IP_IPV4) || StringUtils.equals(sourceIp,EMPTY_SOURCE_IP_IPV6)){ - sessions += newSketchLog.getSketch_sessions(); - packets += newSketchLog.getSketch_packets(); - bytes += newSketchLog.getSketch_bytes(); - startTime = newSketchLog.getSketch_start_time() > startTime ? startTime : newSketchLog.getSketch_start_time(); - endTime = newSketchLog.getSketch_start_time() > endTime ? newSketchLog.getSketch_start_time() : endTime; - duration = endTime - startTime == 0 ? 5 : endTime - startTime; - }else { - if (sourceIpSet.size() < CommonConfig.SOURCE_IP_LIST_LIMIT){ - sourceIpSet.add(sourceIp); - } - } - } - String sourceIpList = StringUtils.join(sourceIpSet, ","); - return Tuple6.of(sessions/CommonConfig.FLINK_WINDOW_MAX_TIME,packets/CommonConfig.FLINK_WINDOW_MAX_TIME, - bytes*8/CommonConfig.FLINK_WINDOW_MAX_TIME,sourceIpList,startTime,duration); - }catch (Exception e){ - logger.error("聚合中间结果集失败 {}",e); - } - return null; - } - - -} diff --git a/dos-detection/src/main/java/com/zdjizhi/dos/KeysSelector.java b/dos-detection/src/main/java/com/zdjizhi/dos/KeysSelector.java deleted file mode 100644 index fcddd88..0000000 --- a/dos-detection/src/main/java/com/zdjizhi/dos/KeysSelector.java +++ /dev/null @@ -1,16 +0,0 @@ -package com.zdjizhi.dos; - -import com.zdjizhi.base.common.DosSketchLog; -import org.apache.flink.api.java.functions.KeySelector; -import org.apache.flink.api.java.tuple.Tuple2; - -public class KeysSelector implements KeySelector<DosSketchLog, Tuple2<String, String>> { - - @Override - public Tuple2<String, String> getKey(DosSketchLog dosSketchLog){ - return Tuple2.of( - dosSketchLog.getAttack_type(), - dosSketchLog.getDestination_ip()); - } - -} diff --git a/dos-detection/src/main/java/com/zdjizhi/dos/TrafficServerIpMetrics.java b/dos-detection/src/main/java/com/zdjizhi/dos/TrafficServerIpMetrics.java deleted file mode 100644 index a16480e..0000000 --- a/dos-detection/src/main/java/com/zdjizhi/dos/TrafficServerIpMetrics.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.zdjizhi.dos; - - -import com.zdjizhi.base.common.DosSketchLog; -import com.zdjizhi.dos.common.CommonConfig; -import com.zdjizhi.dos.common.DosMetricsLog; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - - -class TrafficServerIpMetrics { - - private static final Logger logger = LoggerFactory.getLogger(TrafficServerIpMetrics.class); - - static DosMetricsLog getOutputMetric(DosSketchLog midResuleLog) { - DosMetricsLog dosMetricsLog = new DosMetricsLog(); - dosMetricsLog.setSketch_start_time(timeFloor(System.currentTimeMillis()/1000)); - dosMetricsLog.setDestination_ip(midResuleLog.getDestination_ip()); - dosMetricsLog.setAttack_type(midResuleLog.getAttack_type()); - dosMetricsLog.setSession_rate(midResuleLog.getSketch_sessions()); - dosMetricsLog.setPacket_rate(midResuleLog.getSketch_packets()); - dosMetricsLog.setBit_rate(midResuleLog.getSketch_bytes()); - dosMetricsLog.setPartition_num(getPartitionNumByIp(midResuleLog.getDestination_ip())); - logger.debug("metric 结果已加载:{}",dosMetricsLog.toString()); - return dosMetricsLog; - } - - private static long timeFloor(long sketchStartTime){ - return sketchStartTime / CommonConfig.FLINK_WINDOW_MAX_TIME * CommonConfig.FLINK_WINDOW_MAX_TIME; - } - - private static int getPartitionNumByIp(String destinationIp){ - return Math.abs(destinationIp.hashCode()) % CommonConfig.DESTINATION_IP_PARTITION_NUM; - } - - public static void main(String[] args) { - System.out.println(getPartitionNumByIp("146.177.223.43")); - System.out.println("146.177.223.43".hashCode()); - } - -} diff --git a/dos-detection/src/main/java/com/zdjizhi/dos/common/CommonConfig.java b/dos-detection/src/main/java/com/zdjizhi/dos/common/CommonConfig.java deleted file mode 100644 index b8bc0f2..0000000 --- a/dos-detection/src/main/java/com/zdjizhi/dos/common/CommonConfig.java +++ /dev/null @@ -1,77 +0,0 @@ -package com.zdjizhi.dos.common; -import com.zdjizhi.base.utils.CommonConfigurations; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -import java.util.Properties; - -/** - * @author wlh - * @date 2021/1/6 - */ -public class CommonConfig { - - private static CommonConfigurations configurations; - private static final Logger logger = LoggerFactory.getLogger(CommonConfig.class); - - static { - Properties propService; - try { - propService = new Properties(); - propService.load(CommonConfigurations.class.getClassLoader().getResourceAsStream("dos-detection.properties")); - configurations = new CommonConfigurations(propService); - } catch (Exception e) { - logger.error("加载dos-detection.properties配置文件失败"); - System.exit(1); - } - } - - public static final int KAFKA_OUTPUT_METRIC_PARALLELISM = configurations.getIntProperty("kafka.output.metric.parallelism"); - public static final String KAFKA_OUTPUT_METRIC_TOPIC_NAME = configurations.getStringProperty("kafka.output.metric.topic.name"); - public static final int KAFKA_OUTPUT_EVENT_PARALLELISM = configurations.getIntProperty("kafka.output.event.parallelism"); - public static final String KAFKA_OUTPUT_EVENT_TOPIC_NAME = configurations.getStringProperty("kafka.output.event.topic.name"); - - public static final String HBASE_ZOOKEEPER_QUORUM = configurations.getStringProperty("hbase.zookeeper.quorum"); - public static final int HBASE_CLIENT_OPERATION_TIMEOUT = configurations.getIntProperty("hbase.client.operation.timeout"); - public static final int HBASE_CLIENT_SCANNER_TIMEOUT_PERIOD = configurations.getIntProperty("hbase.client.scanner.timeout.period"); - - public static final String HBASE_BASELINE_TABLE_NAME = configurations.getStringProperty("hbase.baseline.table.name"); - public static final int HBASE_BASELINE_TOTAL_NUM = configurations.getIntProperty("hbase.baseline.total.num"); - public static final int HBASE_BASELINE_TTL = configurations.getIntProperty("hbase.baseline.ttl"); - - public static final int FLINK_FIRST_AGG_PARALLELISM = configurations.getIntProperty("flink.first.agg.parallelism"); - public static final int FLINK_DETECTION_MAP_PARALLELISM = configurations.getIntProperty("flink.detection.map.parallelism"); - public static final int FLINK_WATERMARK_MAX_ORDERNESS = configurations.getIntProperty("flink.watermark.max.orderness"); - public static final int FLINK_WINDOW_MAX_TIME = configurations.getIntProperty("flink.window.max.time"); - - public static final int SOURCE_IP_LIST_LIMIT = configurations.getIntProperty("source.ip.list.limit"); - public static final int DESTINATION_IP_PARTITION_NUM = configurations.getIntProperty("destination.ip.partition.num"); - public static final int DATA_CENTER_ID_NUM = configurations.getIntProperty("data.center.id.num"); - - public static final String IP_MMDB_PATH = configurations.getStringProperty("ip.mmdb.path"); - - public static final int STATIC_SENSITIVITY_THRESHOLD = configurations.getIntProperty("static.sensitivity.threshold"); - public static final double BASELINE_SENSITIVITY_THRESHOLD = configurations.getDoubleProperty("baseline.sensitivity.threshold"); - - public static final double BASELINE_SESSIONS_MINOR_THRESHOLD = configurations.getDoubleProperty("baseline.sessions.minor.threshold"); - public static final double BASELINE_SESSIONS_WARNING_THRESHOLD = configurations.getDoubleProperty("baseline.sessions.warning.threshold"); - public static final double BASELINE_SESSIONS_MAJOR_THRESHOLD = configurations.getDoubleProperty("baseline.sessions.major.threshold"); - public static final double BASELINE_SESSIONS_SEVERE_THRESHOLD = configurations.getDoubleProperty("baseline.sessions.severe.threshold"); - public static final double BASELINE_SESSIONS_CRITICAL_THRESHOLD = configurations.getDoubleProperty("baseline.sessions.critical.threshold"); - - public static final String BIFANG_SERVER_URI = configurations.getStringProperty("bifang.server.uri"); - public static final String BIFANG_SERVER_TOKEN = configurations.getStringProperty("bifang.server.token"); - public static final String BIFANG_SERVER_ENCRYPTPWD_PATH = configurations.getStringProperty("bifang.server.encryptpwd.path"); - public static final String BIFANG_SERVER_LOGIN_PATH = configurations.getStringProperty("bifang.server.login.path"); - public static final String BIFANG_SERVER_POLICY_THRESHOLD_PATH = configurations.getStringProperty("bifang.server.policy.threshold.path"); - - public static final int HTTP_POOL_MAX_CONNECTION = configurations.getIntProperty("http.pool.max.connection"); - public static final int HTTP_POOL_MAX_PER_ROUTE = configurations.getIntProperty("http.pool.max.per.route"); - public static final int HTTP_POOL_REQUEST_TIMEOUT = configurations.getIntProperty("http.pool.request.timeout"); - public static final int HTTP_POOL_CONNECT_TIMEOUT = configurations.getIntProperty("http.pool.connect.timeout"); - public static final int HTTP_POOL_RESPONSE_TIMEOUT = configurations.getIntProperty("http.pool.response.timeout"); - - public static final int STATIC_THRESHOLD_SCHEDULE_MINUTES = configurations.getIntProperty("static.threshold.schedule.minutes"); - public static final int BASELINE_THRESHOLD_SCHEDULE_DAYS = configurations.getIntProperty("baseline.threshold.schedule.days"); - -} diff --git a/dos-detection/src/main/java/com/zdjizhi/dos/common/DosMetricsLog.java b/dos-detection/src/main/java/com/zdjizhi/dos/common/DosMetricsLog.java deleted file mode 100644 index b66ff9f..0000000 --- a/dos-detection/src/main/java/com/zdjizhi/dos/common/DosMetricsLog.java +++ /dev/null @@ -1,107 +0,0 @@ -package com.zdjizhi.dos.common; - -import java.io.Serializable; -import java.util.Objects; - -public class DosMetricsLog implements Serializable { - - private long sketch_start_time; - private String attack_type; - private String destination_ip; - private long session_rate; - private long packet_rate; - private long bit_rate; - private int partition_num; - - public int getPartition_num() { - return partition_num; - } - - public void setPartition_num(int partition_num) { - this.partition_num = partition_num; - } - - public long getSketch_start_time() { - return sketch_start_time; - } - - public void setSketch_start_time(long sketch_start_time) { - this.sketch_start_time = sketch_start_time; - } - - public String getAttack_type() { - return attack_type; - } - - public void setAttack_type(String attack_type) { - this.attack_type = attack_type; - } - - public String getDestination_ip() { - return destination_ip; - } - - public void setDestination_ip(String destination_ip) { - this.destination_ip = destination_ip; - } - - public long getSession_rate() { - return session_rate; - } - - public void setSession_rate(long session_rate) { - this.session_rate = session_rate; - } - - public long getPacket_rate() { - return packet_rate; - } - - public void setPacket_rate(long packet_rate) { - this.packet_rate = packet_rate; - } - - public long getBit_rate() { - return bit_rate; - } - - public void setBit_rate(long bit_rate) { - this.bit_rate = bit_rate; - } - - @Override - public String toString() { - return "DosMetricsLog{" + - "sketch_start_time=" + sketch_start_time + - ", attack_type='" + attack_type + '\'' + - ", destination_ip='" + destination_ip + '\'' + - ", session_rate=" + session_rate + - ", packet_rate=" + packet_rate + - ", bit_rate=" + bit_rate + - ", partition_num=" + partition_num + - '}'; - } - - @Override - public boolean equals(Object o) { - if (this == o) { - return true; - } - if (!(o instanceof DosMetricsLog)) { - return false; - } - DosMetricsLog that = (DosMetricsLog) o; - return getSketch_start_time() == that.getSketch_start_time() && - getSession_rate() == that.getSession_rate() && - getPacket_rate() == that.getPacket_rate() && - getBit_rate() == that.getBit_rate() && - getPartition_num() == that.getPartition_num() && - Objects.equals(getAttack_type(), that.getAttack_type()) && - Objects.equals(getDestination_ip(), that.getDestination_ip()); - } - - @Override - public int hashCode() { - return Objects.hash(getSketch_start_time(), getAttack_type(), getDestination_ip(), getSession_rate(), getPacket_rate(), getBit_rate(), getPartition_num()); - } -} diff --git a/dos-detection/src/main/java/com/zdjizhi/dos/sink/DosMetricsSink.java b/dos-detection/src/main/java/com/zdjizhi/dos/sink/DosMetricsSink.java deleted file mode 100644 index 0ddf8be..0000000 --- a/dos-detection/src/main/java/com/zdjizhi/dos/sink/DosMetricsSink.java +++ /dev/null @@ -1,30 +0,0 @@ -package com.zdjizhi.dos.sink; - -import com.zdjizhi.base.platform.Schedule; -import com.zdjizhi.base.utils.FlinkEnvironmentUtils; -import com.zdjizhi.dos.EtlProcessFunction; -import com.zdjizhi.dos.KeysSelector; -import com.zdjizhi.dos.common.CommonConfig; -import com.zdjizhi.etl.DosSketchEtl; -import org.apache.flink.streaming.api.windowing.assigners.TumblingEventTimeWindows; -import org.apache.flink.streaming.api.windowing.time.Time; - -import java.time.Duration; - -public class DosMetricsSink implements Schedule { - - @Override - public void schedule() throws Exception { - DosSketchEtl.getSketchSource().assignTimestampsAndWatermarks( - FlinkEnvironmentUtils.createWatermarkStrategy( - Duration.ofSeconds(10), - (event, timestamp) -> event.getSketch_start_time() * 1000)) - .keyBy(new KeysSelector()) - .window(TumblingEventTimeWindows.of(Time.seconds(CommonConfig.FLINK_WINDOW_MAX_TIME))) - .process(new EtlProcessFunction()) - .print() - .setParallelism(1); - } - - -} diff --git a/dos-detection/src/main/java/com/zdjizhi/dos/sink/OutputStreamSink.java b/dos-detection/src/main/java/com/zdjizhi/dos/sink/OutputStreamSink.java deleted file mode 100644 index b688463..0000000 --- a/dos-detection/src/main/java/com/zdjizhi/dos/sink/OutputStreamSink.java +++ /dev/null @@ -1,22 +0,0 @@ -package com.zdjizhi.dos.sink; - -import com.zdjizhi.base.platform.Schedule; -import com.zdjizhi.base.utils.FlinkEnvironmentUtils; -import com.zdjizhi.etl.DosSketchEtl; - -import java.time.Duration; - -/** - * @author 94976 - */ -public class OutputStreamSink implements Schedule { - - @Override - public void schedule() throws Exception { - DosSketchEtl.getSketchSource().assignTimestampsAndWatermarks( - FlinkEnvironmentUtils.createWatermarkStrategy( - Duration.ofSeconds(10), - (event, timestamp) -> event.getSketch_start_time() * 1000)) - .print(); - } -} diff --git a/dos-detection/src/main/resources/dos-detection.properties b/dos-detection/src/main/resources/dos-detection.properties deleted file mode 100644 index 2af2a12..0000000 --- a/dos-detection/src/main/resources/dos-detection.properties +++ /dev/null @@ -1,105 +0,0 @@ -#发送kafka metrics并行度大小 -kafka.output.metric.parallelism=1 - -#发送kafka metrics topic名 -#kafka.output.metric.topic.name=TRAFFIC-TOP-DESTINATION-IP-METRICS -kafka.output.metric.topic.name=test - -#发送kafka event并行度大小 -kafka.output.event.parallelism=1 - -#发送kafka event topic名 -kafka.output.event.topic.name=dos-test - -#zookeeper地址 -hbase.zookeeper.quorum=192.168.44.12:2181 -#hbase.zookeeper.quorum=192.168.44.11:2181,192.168.44.14:2181,192.168.44.15:2181 - -#hbase客户端处理时间 -hbase.client.operation.timeout=30000 -hbase.client.scanner.timeout.period=30000 - -##hbase baseline表名 -hbase.baseline.table.name=dos:ddos_traffic_baselines - -#读取baseline限制 -hbase.baseline.total.num=1000000 - -#baseline ttl,单位:天 -hbase.baseline.ttl=30 - -#设置聚合并行度,2个key -flink.first.agg.parallelism=1 - -#设置结果判定并行度 -flink.detection.map.parallelism=1 - -#watermark延迟 -flink.watermark.max.orderness=10 - -#计算窗口大小,默认600s -flink.window.max.time=10 - -#dos event结果中distinct source IP限制 -source.ip.list.limit=10000 - -#基于目的IP的分区数,默认为10000,一般不变 -destination.ip.partition.num=10000 - -data.center.id.num=15 - -#IP mmdb库路径 -ip.mmdb.path=D:\\data\\dat\\ -#ip.mmdb.path=/home/bigdata/topology/dat/ -#ip.mmdb.path=/home/bigdata/wlh/topology/dos-detection/dat/ - -#静态敏感阈值,速率小于此值不报警 -static.sensitivity.threshold=500 - -#基线敏感阈值 -baseline.sensitivity.threshold=0.2 - -#基于baseline判定dos攻击的上下限 -baseline.sessions.minor.threshold=0.5 -baseline.sessions.warning.threshold=1 -baseline.sessions.major.threshold=2.5 -baseline.sessions.severe.threshold=5 -baseline.sessions.critical.threshold=8 - -#bifang服务访问地址 -#bifang.server.uri=http://192.168.44.72:80 -bifang.server.uri=http://192.168.44.3:80 - -#访问bifang只读权限token,bifang内置,无需修改 -bifang.server.token=ed04b942-7df4-4e3d-b9a9-a881ca98a867 - -#加密密码路径信息 -bifang.server.encryptpwd.path=/v1/user/encryptpwd - -#登录bifang服务路径信息 -bifang.server.login.path=/v1/user/login - -#获取静态阈值路径信息 -bifang.server.policy.threshold.path=/v1/policy/profile/DoS/detection/threshold - -#http请求相关参数 -#最大连接数 -http.pool.max.connection=400 - -#单路由最大连接数 -http.pool.max.per.route=80 - -#向服务端请求超时时间设置(单位:毫秒) -http.pool.request.timeout=60000 - -#向服务端连接超时时间设置(单位:毫秒) -http.pool.connect.timeout=60000 - -#服务端响应超时时间设置(单位:毫秒) -http.pool.response.timeout=60000 - -#获取静态阈值周期,默认十分钟 -static.threshold.schedule.minutes=10 - -#获取baseline周期,默认7天 -baseline.threshold.schedule.days=1
\ No newline at end of file diff --git a/platform-schedule/pom.xml b/platform-schedule/pom.xml index 671147e..d4835aa 100644 --- a/platform-schedule/pom.xml +++ b/platform-schedule/pom.xml @@ -14,7 +14,7 @@ <dependencies> <dependency> <groupId>com.zdjizhi</groupId> - <artifactId>dos-detection</artifactId> + <artifactId>platform-etl</artifactId> <version>1.0-SNAPSHOT</version> </dependency> </dependencies> diff --git a/platform-schedule/src/main/resources/business.properties b/platform-schedule/src/main/resources/business.properties index 7a52c77..ca7a72f 100644 --- a/platform-schedule/src/main/resources/business.properties +++ b/platform-schedule/src/main/resources/business.properties @@ -1,3 +1 @@ -dos.detection.task.class=com.zdjizhi.dos.sink.OutputStreamSink -dos.detection.metric.class=com.zdjizhi.dos.sink.DosMetricsSink dos.sketch.etl.class=com.zdjizhi.etl.DosSketchEtl
\ No newline at end of file @@ -9,7 +9,6 @@ <packaging>pom</packaging> <version>1.0-SNAPSHOT</version> <modules> - <module>dos-detection</module> <module>platform-base</module> <module>platform-schedule</module> <module>platform-etl</module> |
