From 857474babc4f8314b2aa0a1b286062a97dd8bba8 Mon Sep 17 00:00:00 2001 From: yinjiangyi Date: Mon, 2 Aug 2021 14:13:50 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=A4=9A=E6=94=BB=E5=87=BB?= =?UTF-8?q?=E7=B1=BB=E5=9E=8B=E5=A4=9A=E7=BA=BF=E7=A8=8B=E6=97=B6OriginalD?= =?UTF-8?q?ata=E4=B8=BA=E7=A9=BA=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- logs/ddos_baselines.log | 66 ++++++++++++++++++ .../mesalab/service/BaselineGeneration.java | 7 +- src/main/resources/application.properties | 2 +- target/classes/application.properties | 2 +- .../mesalab/service/BaselineGeneration.class | Bin 10646 -> 10720 bytes 5 files changed, 72 insertions(+), 5 deletions(-) diff --git a/logs/ddos_baselines.log b/logs/ddos_baselines.log index 77ac220..363f844 100644 --- a/logs/ddos_baselines.log +++ b/logs/ddos_baselines.log @@ -3284,3 +3284,69 @@ [2021-08-02 13:37:32] [INFO ] [Thread:main] cn.mesalab.service.BaselineGeneration.generateBaselinesThread(BaselineGeneration.java:96) - BaselineGeneration 共写入数据条数:10 [2021-08-02 13:37:32] [WARN ] [Thread:main] cn.mesalab.service.BaselineGeneration.perform(BaselineGeneration.java:52) - 运行时间:3486 [2021-08-02 13:37:32] [INFO ] [Thread:main] cn.mesalab.service.BaselineGeneration.perform(BaselineGeneration.java:56) - Druid 关闭连接 +[2021-08-02 13:38:13] [WARN ] [Thread:main] org.apache.hadoop.util.NativeCodeLoader.(NativeCodeLoader.java:62) - Unable to load native-hadoop library for your platform... using builtin-java classes where applicable +[2021-08-02 13:38:13] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654] org.apache.zookeeper.Environment.logEnv(Environment.java:100) - Client environment:zookeeper.version=3.4.10-39d3a4f269333c922ed3db283be479f9deacaa0f, built on 03/23/2017 10:13 GMT +[2021-08-02 13:38:13] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654] org.apache.zookeeper.Environment.logEnv(Environment.java:100) - Client environment:host.name=192.168.36.74 +[2021-08-02 13:38:13] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654] org.apache.zookeeper.Environment.logEnv(Environment.java:100) - Client environment:java.version=1.8.0_271 +[2021-08-02 13:38:13] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654] org.apache.zookeeper.Environment.logEnv(Environment.java:100) - Client environment:java.vendor=Oracle Corporation +[2021-08-02 13:38:13] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654] org.apache.zookeeper.Environment.logEnv(Environment.java:100) - Client environment:java.home=/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre +[2021-08-02 13:38:13] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654] org.apache.zookeeper.Environment.logEnv(Environment.java:100) - Client environment:java.class.path=/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/charsets.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/deploy.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/ext/cldrdata.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/ext/dnsns.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/ext/jaccess.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/ext/jfxrt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/ext/localedata.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/ext/nashorn.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/ext/sunec.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/ext/sunjce_provider.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/ext/sunpkcs11.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/ext/zipfs.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/javaws.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/jce.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/jfr.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/jfxswt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/jsse.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/management-agent.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/plugin.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/resources.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/rt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/lib/ant-javafx.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/lib/dt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/lib/javafx-mx.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/lib/jconsole.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/lib/packager.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/lib/sa-jdi.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/lib/tools.jar:/Users/joy/work/iie/project/cyber_narrator/DDos/code/generate-baselines/target/classes:/Users/joy/.m2/repository/org/apache/hbase/hbase-client/2.2.3/hbase-client-2.2.3.jar:/Users/joy/.m2/repository/org/apache/hbase/thirdparty/hbase-shaded-protobuf/2.2.1/hbase-shaded-protobuf-2.2.1.jar:/Users/joy/.m2/repository/org/apache/hbase/hbase-common/2.2.3/hbase-common-2.2.3.jar:/Users/joy/.m2/repository/com/github/stephenc/findbugs/findbugs-annotations/1.3.9-1/findbugs-annotations-1.3.9-1.jar:/Users/joy/.m2/repository/log4j/log4j/1.2.17/log4j-1.2.17.jar:/Users/joy/.m2/repository/org/apache/hbase/hbase-hadoop-compat/2.2.3/hbase-hadoop-compat-2.2.3.jar:/Users/joy/.m2/repository/org/apache/hbase/hbase-metrics-api/2.2.3/hbase-metrics-api-2.2.3.jar:/Users/joy/.m2/repository/org/apache/hbase/hbase-hadoop2-compat/2.2.3/hbase-hadoop2-compat-2.2.3.jar:/Users/joy/.m2/repository/org/apache/hbase/hbase-metrics/2.2.3/hbase-metrics-2.2.3.jar:/Users/joy/.m2/repository/org/apache/hbase/hbase-protocol-shaded/2.2.3/hbase-protocol-shaded-2.2.3.jar:/Users/joy/.m2/repository/org/apache/hbase/hbase-protocol/2.2.3/hbase-protocol-2.2.3.jar:/Users/joy/.m2/repository/commons-codec/commons-codec/1.10/commons-codec-1.10.jar:/Users/joy/.m2/repository/commons-io/commons-io/2.5/commons-io-2.5.jar:/Users/joy/.m2/repository/org/apache/commons/commons-lang3/3.6/commons-lang3-3.6.jar:/Users/joy/.m2/repository/org/apache/hbase/thirdparty/hbase-shaded-miscellaneous/2.2.1/hbase-shaded-miscellaneous-2.2.1.jar:/Users/joy/.m2/repository/com/google/errorprone/error_prone_annotations/2.3.3/error_prone_annotations-2.3.3.jar:/Users/joy/.m2/repository/org/apache/hbase/thirdparty/hbase-shaded-netty/2.2.1/hbase-shaded-netty-2.2.1.jar:/Users/joy/.m2/repository/org/apache/zookeeper/zookeeper/3.4.10/zookeeper-3.4.10.jar:/Users/joy/.m2/repository/org/slf4j/slf4j-log4j12/1.6.1/slf4j-log4j12-1.6.1.jar:/Users/joy/.m2/repository/org/apache/htrace/htrace-core4/4.2.0-incubating/htrace-core4-4.2.0-incubating.jar:/Users/joy/.m2/repository/org/jruby/jcodings/jcodings/1.0.18/jcodings-1.0.18.jar:/Users/joy/.m2/repository/org/jruby/joni/joni/2.1.11/joni-2.1.11.jar:/Users/joy/.m2/repository/io/dropwizard/metrics/metrics-core/3.2.6/metrics-core-3.2.6.jar:/Users/joy/.m2/repository/org/apache/commons/commons-crypto/1.0.0/commons-crypto-1.0.0.jar:/Users/joy/.m2/repository/org/apache/hadoop/hadoop-auth/2.8.5/hadoop-auth-2.8.5.jar:/Users/joy/.m2/repository/com/nimbusds/nimbus-jose-jwt/4.41.1/nimbus-jose-jwt-4.41.1.jar:/Users/joy/.m2/repository/com/github/stephenc/jcip/jcip-annotations/1.0-1/jcip-annotations-1.0-1.jar:/Users/joy/.m2/repository/org/apache/directory/server/apacheds-kerberos-codec/2.0.0-M15/apacheds-kerberos-codec-2.0.0-M15.jar:/Users/joy/.m2/repository/org/apache/directory/server/apacheds-i18n/2.0.0-M15/apacheds-i18n-2.0.0-M15.jar:/Users/joy/.m2/repository/org/apache/directory/api/api-asn1-api/1.0.0-M20/api-asn1-api-1.0.0-M20.jar:/Users/joy/.m2/repository/org/apache/directory/api/api-util/1.0.0-M20/api-util-1.0.0-M20.jar:/Users/joy/.m2/repository/org/apache/curator/curator-framework/2.7.1/curator-framework-2.7.1.jar:/Users/joy/.m2/repository/org/apache/hadoop/hadoop-common/2.8.5/hadoop-common-2.8.5.jar:/Users/joy/.m2/repository/org/apache/hadoop/hadoop-annotations/2.8.5/hadoop-annotations-2.8.5.jar:/Users/joy/.m2/repository/com/google/guava/guava/11.0.2/guava-11.0.2.jar:/Users/joy/.m2/repository/commons-cli/commons-cli/1.2/commons-cli-1.2.jar:/Users/joy/.m2/repository/org/apache/commons/commons-math3/3.1.1/commons-math3-3.1.1.jar:/Users/joy/.m2/repository/xmlenc/xmlenc/0.52/xmlenc-0.52.jar:/Users/joy/.m2/repository/commons-net/commons-net/3.1/commons-net-3.1.jar:/Users/joy/.m2/repository/commons-collections/commons-collections/3.2.2/commons-collections-3.2.2.jar:/Users/joy/.m2/repository/org/mortbay/jetty/jetty-sslengine/6.1.26/jetty-sslengine-6.1.26.jar:/Users/joy/.m2/repository/commons-logging/commons-logging/1.1.3/commons-logging-1.1.3.jar:/Users/joy/.m2/repository/commons-lang/commons-lang/2.6/commons-lang-2.6.jar:/Users/joy/.m2/repository/commons-configuration/commons-configuration/1.6/commons-configuration-1.6.jar:/Users/joy/.m2/repository/commons-digester/commons-digester/1.8/commons-digester-1.8.jar:/Users/joy/.m2/repository/commons-beanutils/commons-beanutils/1.7.0/commons-beanutils-1.7.0.jar:/Users/joy/.m2/repository/commons-beanutils/commons-beanutils-core/1.8.0/commons-beanutils-core-1.8.0.jar:/Users/joy/.m2/repository/org/codehaus/jackson/jackson-core-asl/1.9.13/jackson-core-asl-1.9.13.jar:/Users/joy/.m2/repository/org/codehaus/jackson/jackson-mapper-asl/1.9.13/jackson-mapper-asl-1.9.13.jar:/Users/joy/.m2/repository/org/apache/avro/avro/1.7.4/avro-1.7.4.jar:/Users/joy/.m2/repository/com/thoughtworks/paranamer/paranamer/2.3/paranamer-2.3.jar:/Users/joy/.m2/repository/org/xerial/snappy/snappy-java/1.0.4.1/snappy-java-1.0.4.1.jar:/Users/joy/.m2/repository/com/google/code/gson/gson/2.2.4/gson-2.2.4.jar:/Users/joy/.m2/repository/com/jcraft/jsch/0.1.54/jsch-0.1.54.jar:/Users/joy/.m2/repository/org/apache/curator/curator-client/2.7.1/curator-client-2.7.1.jar:/Users/joy/.m2/repository/org/apache/curator/curator-recipes/2.7.1/curator-recipes-2.7.1.jar:/Users/joy/.m2/repository/com/google/code/findbugs/jsr305/3.0.0/jsr305-3.0.0.jar:/Users/joy/.m2/repository/org/apache/commons/commons-compress/1.4.1/commons-compress-1.4.1.jar:/Users/joy/.m2/repository/org/tukaani/xz/1.0/xz-1.0.jar:/Users/joy/.m2/repository/org/apache/yetus/audience-annotations/0.5.0/audience-annotations-0.5.0.jar:/Users/joy/.m2/repository/org/jfree/jfreechart/1.0.18/jfreechart-1.0.18.jar:/Users/joy/.m2/repository/org/jfree/jcommon/1.0.21/jcommon-1.0.21.jar:/Users/joy/.m2/repository/xml-apis/xml-apis/1.3.04/xml-apis-1.3.04.jar:/Users/joy/.m2/repository/org/apache/calcite/avatica/avatica-core/1.15.0/avatica-core-1.15.0.jar:/Users/joy/.m2/repository/org/apache/calcite/avatica/avatica-metrics/1.15.0/avatica-metrics-1.15.0.jar:/Users/joy/.m2/repository/com/fasterxml/jackson/core/jackson-core/2.9.8/jackson-core-2.9.8.jar:/Users/joy/.m2/repository/com/fasterxml/jackson/core/jackson-annotations/2.9.8/jackson-annotations-2.9.8.jar:/Users/joy/.m2/repository/com/fasterxml/jackson/core/jackson-databind/2.9.8/jackson-databind-2.9.8.jar:/Users/joy/.m2/repository/org/apache/httpcomponents/httpclient/4.5.6/httpclient-4.5.6.jar:/Users/joy/.m2/repository/org/apache/httpcomponents/httpcore/4.4.10/httpcore-4.4.10.jar:/Users/joy/.m2/repository/com/typesafe/config/1.2.1/config-1.2.1.jar:/Users/joy/.m2/repository/com/google/protobuf/protobuf-java/3.5.1/protobuf-java-3.5.1.jar:/Users/joy/.m2/repository/io/vavr/vavr/0.10.2/vavr-0.10.2.jar:/Users/joy/.m2/repository/io/vavr/vavr-match/0.10.2/vavr-match-0.10.2.jar:/Users/joy/.m2/repository/org/springframework/spring-core/5.1.4.RELEASE/spring-core-5.1.4.RELEASE.jar:/Users/joy/.m2/repository/org/springframework/spring-jcl/5.1.4.RELEASE/spring-jcl-5.1.4.RELEASE.jar:/Users/joy/.m2/repository/org/slf4j/slf4j-api/1.7.26/slf4j-api-1.7.26.jar:/Applications/IntelliJ IDEA CE.app/Contents/lib/idea_rt.jar +[2021-08-02 13:38:13] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654] org.apache.zookeeper.Environment.logEnv(Environment.java:100) - Client environment:java.library.path=/Users/joy/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:. +[2021-08-02 13:38:13] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654] org.apache.zookeeper.Environment.logEnv(Environment.java:100) - Client environment:java.io.tmpdir=/var/folders/y_/8fnngp3d0v96m1nvj7m_v9gm0000gn/T/ +[2021-08-02 13:38:13] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654] org.apache.zookeeper.Environment.logEnv(Environment.java:100) - Client environment:java.compiler= +[2021-08-02 13:38:13] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654] org.apache.zookeeper.Environment.logEnv(Environment.java:100) - Client environment:os.name=Mac OS X +[2021-08-02 13:38:13] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654] org.apache.zookeeper.Environment.logEnv(Environment.java:100) - Client environment:os.arch=x86_64 +[2021-08-02 13:38:13] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654] org.apache.zookeeper.Environment.logEnv(Environment.java:100) - Client environment:os.version=10.16 +[2021-08-02 13:38:13] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654] org.apache.zookeeper.Environment.logEnv(Environment.java:100) - Client environment:user.name=joy +[2021-08-02 13:38:13] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654] org.apache.zookeeper.Environment.logEnv(Environment.java:100) - Client environment:user.home=/Users/joy +[2021-08-02 13:38:13] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654] org.apache.zookeeper.Environment.logEnv(Environment.java:100) - Client environment:user.dir=/Users/joy/work/iie/project/cyber_narrator/DDos/code/generate-baselines +[2021-08-02 13:38:13] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654] org.apache.zookeeper.ZooKeeper.(ZooKeeper.java:438) - Initiating client connection, connectString=192.168.44.12:2181 sessionTimeout=90000 watcher=org.apache.hadoop.hbase.zookeeper.ReadOnlyZKClient$$Lambda$13/2018968879@57db765c +[2021-08-02 13:38:13] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654-SendThread(192.168.44.12:2181)] org.apache.zookeeper.ClientCnxn$SendThread.logStartConnect(ClientCnxn.java:1032) - Opening socket connection to server 192.168.44.12/192.168.44.12:2181. Will not attempt to authenticate using SASL (unknown error) +[2021-08-02 13:38:13] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654-SendThread(192.168.44.12:2181)] org.apache.zookeeper.ClientCnxn$SendThread.primeConnection(ClientCnxn.java:876) - Socket connection established to 192.168.44.12/192.168.44.12:2181, initiating session +[2021-08-02 13:38:13] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654-SendThread(192.168.44.12:2181)] org.apache.zookeeper.ClientCnxn$SendThread.onConnected(ClientCnxn.java:1299) - Session establishment complete on server 192.168.44.12/192.168.44.12:2181, sessionid = 0x17aaebc650746b2, negotiated timeout = 90000 +[2021-08-02 13:38:14] [INFO ] [Thread:main] cn.mesalab.service.BaselineGeneration.perform(BaselineGeneration.java:43) - Druid 成功建立连接 +[2021-08-02 13:38:14] [INFO ] [Thread:main] cn.mesalab.dao.DruidData.getServerIpList(DruidData.java:73) - 性能测试:ip list查询耗时——215 +[2021-08-02 13:38:14] [INFO ] [Thread:main] cn.mesalab.service.BaselineGeneration.generateBaselinesThread(BaselineGeneration.java:82) - 查询到服务端ip共 10 个 +[2021-08-02 13:38:15] [INFO ] [Thread:sessions-baseline-demo-1] cn.mesalab.service.BaselineGeneration.generateBaselines(BaselineGeneration.java:129) - HBase 处理数据条数 5 +[2021-08-02 13:38:15] [INFO ] [Thread:sessions-baseline-demo-0] cn.mesalab.service.BaselineGeneration.generateBaselines(BaselineGeneration.java:129) - HBase 处理数据条数 5 +[2021-08-02 13:38:15] [INFO ] [Thread:main] cn.mesalab.service.BaselineGeneration.generateBaselinesThread(BaselineGeneration.java:95) - BaselineGeneration 完成:sessions +[2021-08-02 13:38:15] [INFO ] [Thread:main] cn.mesalab.service.BaselineGeneration.generateBaselinesThread(BaselineGeneration.java:96) - BaselineGeneration 共写入数据条数:10 +[2021-08-02 13:38:15] [INFO ] [Thread:main] cn.mesalab.dao.DruidData.getServerIpList(DruidData.java:73) - 性能测试:ip list查询耗时——29 +[2021-08-02 13:38:15] [INFO ] [Thread:main] cn.mesalab.service.BaselineGeneration.generateBaselines(BaselineGeneration.java:129) - HBase 处理数据条数 5 +[2021-08-02 13:38:15] [INFO ] [Thread:main] cn.mesalab.service.BaselineGeneration.generateBaselines(BaselineGeneration.java:102) - BaselineGeneration 完成:null +[2021-08-02 13:38:15] [INFO ] [Thread:main] cn.mesalab.service.BaselineGeneration.generateBaselines(BaselineGeneration.java:103) - BaselineGeneration 共写入数据条数:0 +[2021-08-02 13:38:15] [WARN ] [Thread:main] cn.mesalab.service.BaselineGeneration.perform(BaselineGeneration.java:52) - 运行时间:3280 +[2021-08-02 13:38:15] [INFO ] [Thread:main] cn.mesalab.service.BaselineGeneration.perform(BaselineGeneration.java:56) - Druid 关闭连接 +[2021-08-02 13:41:22] [WARN ] [Thread:main] org.apache.hadoop.util.NativeCodeLoader.(NativeCodeLoader.java:62) - Unable to load native-hadoop library for your platform... using builtin-java classes where applicable +[2021-08-02 13:41:22] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654] org.apache.zookeeper.Environment.logEnv(Environment.java:100) - Client environment:zookeeper.version=3.4.10-39d3a4f269333c922ed3db283be479f9deacaa0f, built on 03/23/2017 10:13 GMT +[2021-08-02 13:41:22] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654] org.apache.zookeeper.Environment.logEnv(Environment.java:100) - Client environment:host.name=localhost +[2021-08-02 13:41:22] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654] org.apache.zookeeper.Environment.logEnv(Environment.java:100) - Client environment:java.version=1.8.0_271 +[2021-08-02 13:41:22] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654] org.apache.zookeeper.Environment.logEnv(Environment.java:100) - Client environment:java.vendor=Oracle Corporation +[2021-08-02 13:41:22] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654] org.apache.zookeeper.Environment.logEnv(Environment.java:100) - Client environment:java.home=/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre +[2021-08-02 13:41:22] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654] org.apache.zookeeper.Environment.logEnv(Environment.java:100) - Client environment:java.class.path=/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/charsets.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/deploy.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/ext/cldrdata.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/ext/dnsns.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/ext/jaccess.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/ext/jfxrt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/ext/localedata.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/ext/nashorn.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/ext/sunec.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/ext/sunjce_provider.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/ext/sunpkcs11.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/ext/zipfs.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/javaws.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/jce.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/jfr.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/jfxswt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/jsse.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/management-agent.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/plugin.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/resources.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/jre/lib/rt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/lib/ant-javafx.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/lib/dt.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/lib/javafx-mx.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/lib/jconsole.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/lib/packager.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/lib/sa-jdi.jar:/Library/Java/JavaVirtualMachines/jdk1.8.0_271.jdk/Contents/Home/lib/tools.jar:/Users/joy/work/iie/project/cyber_narrator/DDos/code/generate-baselines/target/classes:/Users/joy/.m2/repository/org/apache/hbase/hbase-client/2.2.3/hbase-client-2.2.3.jar:/Users/joy/.m2/repository/org/apache/hbase/thirdparty/hbase-shaded-protobuf/2.2.1/hbase-shaded-protobuf-2.2.1.jar:/Users/joy/.m2/repository/org/apache/hbase/hbase-common/2.2.3/hbase-common-2.2.3.jar:/Users/joy/.m2/repository/com/github/stephenc/findbugs/findbugs-annotations/1.3.9-1/findbugs-annotations-1.3.9-1.jar:/Users/joy/.m2/repository/log4j/log4j/1.2.17/log4j-1.2.17.jar:/Users/joy/.m2/repository/org/apache/hbase/hbase-hadoop-compat/2.2.3/hbase-hadoop-compat-2.2.3.jar:/Users/joy/.m2/repository/org/apache/hbase/hbase-metrics-api/2.2.3/hbase-metrics-api-2.2.3.jar:/Users/joy/.m2/repository/org/apache/hbase/hbase-hadoop2-compat/2.2.3/hbase-hadoop2-compat-2.2.3.jar:/Users/joy/.m2/repository/org/apache/hbase/hbase-metrics/2.2.3/hbase-metrics-2.2.3.jar:/Users/joy/.m2/repository/org/apache/hbase/hbase-protocol-shaded/2.2.3/hbase-protocol-shaded-2.2.3.jar:/Users/joy/.m2/repository/org/apache/hbase/hbase-protocol/2.2.3/hbase-protocol-2.2.3.jar:/Users/joy/.m2/repository/commons-codec/commons-codec/1.10/commons-codec-1.10.jar:/Users/joy/.m2/repository/commons-io/commons-io/2.5/commons-io-2.5.jar:/Users/joy/.m2/repository/org/apache/commons/commons-lang3/3.6/commons-lang3-3.6.jar:/Users/joy/.m2/repository/org/apache/hbase/thirdparty/hbase-shaded-miscellaneous/2.2.1/hbase-shaded-miscellaneous-2.2.1.jar:/Users/joy/.m2/repository/com/google/errorprone/error_prone_annotations/2.3.3/error_prone_annotations-2.3.3.jar:/Users/joy/.m2/repository/org/apache/hbase/thirdparty/hbase-shaded-netty/2.2.1/hbase-shaded-netty-2.2.1.jar:/Users/joy/.m2/repository/org/apache/zookeeper/zookeeper/3.4.10/zookeeper-3.4.10.jar:/Users/joy/.m2/repository/org/slf4j/slf4j-log4j12/1.6.1/slf4j-log4j12-1.6.1.jar:/Users/joy/.m2/repository/org/apache/htrace/htrace-core4/4.2.0-incubating/htrace-core4-4.2.0-incubating.jar:/Users/joy/.m2/repository/org/jruby/jcodings/jcodings/1.0.18/jcodings-1.0.18.jar:/Users/joy/.m2/repository/org/jruby/joni/joni/2.1.11/joni-2.1.11.jar:/Users/joy/.m2/repository/io/dropwizard/metrics/metrics-core/3.2.6/metrics-core-3.2.6.jar:/Users/joy/.m2/repository/org/apache/commons/commons-crypto/1.0.0/commons-crypto-1.0.0.jar:/Users/joy/.m2/repository/org/apache/hadoop/hadoop-auth/2.8.5/hadoop-auth-2.8.5.jar:/Users/joy/.m2/repository/com/nimbusds/nimbus-jose-jwt/4.41.1/nimbus-jose-jwt-4.41.1.jar:/Users/joy/.m2/repository/com/github/stephenc/jcip/jcip-annotations/1.0-1/jcip-annotations-1.0-1.jar:/Users/joy/.m2/repository/org/apache/directory/server/apacheds-kerberos-codec/2.0.0-M15/apacheds-kerberos-codec-2.0.0-M15.jar:/Users/joy/.m2/repository/org/apache/directory/server/apacheds-i18n/2.0.0-M15/apacheds-i18n-2.0.0-M15.jar:/Users/joy/.m2/repository/org/apache/directory/api/api-asn1-api/1.0.0-M20/api-asn1-api-1.0.0-M20.jar:/Users/joy/.m2/repository/org/apache/directory/api/api-util/1.0.0-M20/api-util-1.0.0-M20.jar:/Users/joy/.m2/repository/org/apache/curator/curator-framework/2.7.1/curator-framework-2.7.1.jar:/Users/joy/.m2/repository/org/apache/hadoop/hadoop-common/2.8.5/hadoop-common-2.8.5.jar:/Users/joy/.m2/repository/org/apache/hadoop/hadoop-annotations/2.8.5/hadoop-annotations-2.8.5.jar:/Users/joy/.m2/repository/com/google/guava/guava/11.0.2/guava-11.0.2.jar:/Users/joy/.m2/repository/commons-cli/commons-cli/1.2/commons-cli-1.2.jar:/Users/joy/.m2/repository/org/apache/commons/commons-math3/3.1.1/commons-math3-3.1.1.jar:/Users/joy/.m2/repository/xmlenc/xmlenc/0.52/xmlenc-0.52.jar:/Users/joy/.m2/repository/commons-net/commons-net/3.1/commons-net-3.1.jar:/Users/joy/.m2/repository/commons-collections/commons-collections/3.2.2/commons-collections-3.2.2.jar:/Users/joy/.m2/repository/org/mortbay/jetty/jetty-sslengine/6.1.26/jetty-sslengine-6.1.26.jar:/Users/joy/.m2/repository/commons-logging/commons-logging/1.1.3/commons-logging-1.1.3.jar:/Users/joy/.m2/repository/commons-lang/commons-lang/2.6/commons-lang-2.6.jar:/Users/joy/.m2/repository/commons-configuration/commons-configuration/1.6/commons-configuration-1.6.jar:/Users/joy/.m2/repository/commons-digester/commons-digester/1.8/commons-digester-1.8.jar:/Users/joy/.m2/repository/commons-beanutils/commons-beanutils/1.7.0/commons-beanutils-1.7.0.jar:/Users/joy/.m2/repository/commons-beanutils/commons-beanutils-core/1.8.0/commons-beanutils-core-1.8.0.jar:/Users/joy/.m2/repository/org/codehaus/jackson/jackson-core-asl/1.9.13/jackson-core-asl-1.9.13.jar:/Users/joy/.m2/repository/org/codehaus/jackson/jackson-mapper-asl/1.9.13/jackson-mapper-asl-1.9.13.jar:/Users/joy/.m2/repository/org/apache/avro/avro/1.7.4/avro-1.7.4.jar:/Users/joy/.m2/repository/com/thoughtworks/paranamer/paranamer/2.3/paranamer-2.3.jar:/Users/joy/.m2/repository/org/xerial/snappy/snappy-java/1.0.4.1/snappy-java-1.0.4.1.jar:/Users/joy/.m2/repository/com/google/code/gson/gson/2.2.4/gson-2.2.4.jar:/Users/joy/.m2/repository/com/jcraft/jsch/0.1.54/jsch-0.1.54.jar:/Users/joy/.m2/repository/org/apache/curator/curator-client/2.7.1/curator-client-2.7.1.jar:/Users/joy/.m2/repository/org/apache/curator/curator-recipes/2.7.1/curator-recipes-2.7.1.jar:/Users/joy/.m2/repository/com/google/code/findbugs/jsr305/3.0.0/jsr305-3.0.0.jar:/Users/joy/.m2/repository/org/apache/commons/commons-compress/1.4.1/commons-compress-1.4.1.jar:/Users/joy/.m2/repository/org/tukaani/xz/1.0/xz-1.0.jar:/Users/joy/.m2/repository/org/apache/yetus/audience-annotations/0.5.0/audience-annotations-0.5.0.jar:/Users/joy/.m2/repository/org/jfree/jfreechart/1.0.18/jfreechart-1.0.18.jar:/Users/joy/.m2/repository/org/jfree/jcommon/1.0.21/jcommon-1.0.21.jar:/Users/joy/.m2/repository/xml-apis/xml-apis/1.3.04/xml-apis-1.3.04.jar:/Users/joy/.m2/repository/org/apache/calcite/avatica/avatica-core/1.15.0/avatica-core-1.15.0.jar:/Users/joy/.m2/repository/org/apache/calcite/avatica/avatica-metrics/1.15.0/avatica-metrics-1.15.0.jar:/Users/joy/.m2/repository/com/fasterxml/jackson/core/jackson-core/2.9.8/jackson-core-2.9.8.jar:/Users/joy/.m2/repository/com/fasterxml/jackson/core/jackson-annotations/2.9.8/jackson-annotations-2.9.8.jar:/Users/joy/.m2/repository/com/fasterxml/jackson/core/jackson-databind/2.9.8/jackson-databind-2.9.8.jar:/Users/joy/.m2/repository/org/apache/httpcomponents/httpclient/4.5.6/httpclient-4.5.6.jar:/Users/joy/.m2/repository/org/apache/httpcomponents/httpcore/4.4.10/httpcore-4.4.10.jar:/Users/joy/.m2/repository/com/typesafe/config/1.2.1/config-1.2.1.jar:/Users/joy/.m2/repository/com/google/protobuf/protobuf-java/3.5.1/protobuf-java-3.5.1.jar:/Users/joy/.m2/repository/io/vavr/vavr/0.10.2/vavr-0.10.2.jar:/Users/joy/.m2/repository/io/vavr/vavr-match/0.10.2/vavr-match-0.10.2.jar:/Users/joy/.m2/repository/org/springframework/spring-core/5.1.4.RELEASE/spring-core-5.1.4.RELEASE.jar:/Users/joy/.m2/repository/org/springframework/spring-jcl/5.1.4.RELEASE/spring-jcl-5.1.4.RELEASE.jar:/Users/joy/.m2/repository/org/slf4j/slf4j-api/1.7.26/slf4j-api-1.7.26.jar:/Applications/IntelliJ IDEA CE.app/Contents/lib/idea_rt.jar +[2021-08-02 13:41:22] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654] org.apache.zookeeper.Environment.logEnv(Environment.java:100) - Client environment:java.library.path=/Users/joy/Library/Java/Extensions:/Library/Java/Extensions:/Network/Library/Java/Extensions:/System/Library/Java/Extensions:/usr/lib/java:. +[2021-08-02 13:41:22] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654] org.apache.zookeeper.Environment.logEnv(Environment.java:100) - Client environment:java.io.tmpdir=/var/folders/y_/8fnngp3d0v96m1nvj7m_v9gm0000gn/T/ +[2021-08-02 13:41:22] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654] org.apache.zookeeper.Environment.logEnv(Environment.java:100) - Client environment:java.compiler= +[2021-08-02 13:41:22] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654] org.apache.zookeeper.Environment.logEnv(Environment.java:100) - Client environment:os.name=Mac OS X +[2021-08-02 13:41:22] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654] org.apache.zookeeper.Environment.logEnv(Environment.java:100) - Client environment:os.arch=x86_64 +[2021-08-02 13:41:22] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654] org.apache.zookeeper.Environment.logEnv(Environment.java:100) - Client environment:os.version=10.16 +[2021-08-02 13:41:22] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654] org.apache.zookeeper.Environment.logEnv(Environment.java:100) - Client environment:user.name=joy +[2021-08-02 13:41:22] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654] org.apache.zookeeper.Environment.logEnv(Environment.java:100) - Client environment:user.home=/Users/joy +[2021-08-02 13:41:22] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654] org.apache.zookeeper.Environment.logEnv(Environment.java:100) - Client environment:user.dir=/Users/joy/work/iie/project/cyber_narrator/DDos/code/generate-baselines +[2021-08-02 13:41:22] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654] org.apache.zookeeper.ZooKeeper.(ZooKeeper.java:438) - Initiating client connection, connectString=192.168.44.12:2181 sessionTimeout=90000 watcher=org.apache.hadoop.hbase.zookeeper.ReadOnlyZKClient$$Lambda$13/1776675806@4305f6df +[2021-08-02 13:41:22] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654-SendThread(192.168.44.12:2181)] org.apache.zookeeper.ClientCnxn$SendThread.logStartConnect(ClientCnxn.java:1032) - Opening socket connection to server 192.168.44.12/192.168.44.12:2181. Will not attempt to authenticate using SASL (unknown error) +[2021-08-02 13:41:22] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654-SendThread(192.168.44.12:2181)] org.apache.zookeeper.ClientCnxn$SendThread.primeConnection(ClientCnxn.java:876) - Socket connection established to 192.168.44.12/192.168.44.12:2181, initiating session +[2021-08-02 13:41:22] [INFO ] [Thread:ReadOnlyZKClient-192.168.44.12:2181@0x16aa8654-SendThread(192.168.44.12:2181)] org.apache.zookeeper.ClientCnxn$SendThread.onConnected(ClientCnxn.java:1299) - Session establishment complete on server 192.168.44.12/192.168.44.12:2181, sessionid = 0x17aaebc650746b3, negotiated timeout = 90000 +[2021-08-02 13:41:22] [INFO ] [Thread:main] cn.mesalab.service.BaselineGeneration.perform(BaselineGeneration.java:43) - Druid 成功建立连接 +[2021-08-02 13:41:23] [INFO ] [Thread:main] cn.mesalab.dao.DruidData.getServerIpList(DruidData.java:73) - 性能测试:ip list查询耗时——199 +[2021-08-02 13:41:23] [INFO ] [Thread:main] cn.mesalab.service.BaselineGeneration.generateBaselinesThread(BaselineGeneration.java:82) - 查询到服务端ip共 10 个 +[2021-08-02 13:41:24] [INFO ] [Thread:sessions-baseline-demo-1] cn.mesalab.service.BaselineGeneration.generateBaselines(BaselineGeneration.java:131) - HBase 处理数据条数 5 +[2021-08-02 13:41:24] [INFO ] [Thread:sessions-baseline-demo-0] cn.mesalab.service.BaselineGeneration.generateBaselines(BaselineGeneration.java:131) - HBase 处理数据条数 5 +[2021-08-02 13:41:24] [INFO ] [Thread:main] cn.mesalab.service.BaselineGeneration.generateBaselinesThread(BaselineGeneration.java:97) - BaselineGeneration 完成:sessions +[2021-08-02 13:41:24] [INFO ] [Thread:main] cn.mesalab.service.BaselineGeneration.generateBaselinesThread(BaselineGeneration.java:98) - BaselineGeneration 共写入数据条数:10 +[2021-08-02 13:41:24] [INFO ] [Thread:main] cn.mesalab.dao.DruidData.getServerIpList(DruidData.java:73) - 性能测试:ip list查询耗时——505 +[2021-08-02 13:41:24] [INFO ] [Thread:main] cn.mesalab.service.BaselineGeneration.generateBaselines(BaselineGeneration.java:131) - HBase 处理数据条数 5 +[2021-08-02 13:41:24] [INFO ] [Thread:main] cn.mesalab.service.BaselineGeneration.generateBaselines(BaselineGeneration.java:104) - BaselineGeneration 完成:bytes +[2021-08-02 13:41:24] [INFO ] [Thread:main] cn.mesalab.service.BaselineGeneration.generateBaselines(BaselineGeneration.java:105) - BaselineGeneration 共写入数据条数:10 +[2021-08-02 13:41:24] [WARN ] [Thread:main] cn.mesalab.service.BaselineGeneration.perform(BaselineGeneration.java:52) - 运行时间:3573 +[2021-08-02 13:41:24] [INFO ] [Thread:main] cn.mesalab.service.BaselineGeneration.perform(BaselineGeneration.java:56) - Druid 关闭连接 diff --git a/src/main/java/cn/mesalab/service/BaselineGeneration.java b/src/main/java/cn/mesalab/service/BaselineGeneration.java index 66db8d9..16de5c8 100644 --- a/src/main/java/cn/mesalab/service/BaselineGeneration.java +++ b/src/main/java/cn/mesalab/service/BaselineGeneration.java @@ -28,7 +28,6 @@ public class BaselineGeneration { private static DruidData druidData; private static HbaseUtils hbaseUtils; private static Table hbaseTable; - private static List> batchDruidData = new ArrayList<>(); private static final Integer BASELINE_POINT_NUM = ApplicationConfig.BASELINE_RANGE_DAYS * 24 * (60/ApplicationConfig.HISTORICAL_GRAD); @@ -44,7 +43,7 @@ public class BaselineGeneration { try{ generateBaselinesThread(ApplicationConfig.DRUID_ATTACKTYPE_TCP_SYN_FLOOD); -// generateBaselines(ApplicationConfig.DRUID_ATTACKTYPE_UDP_FLOOD); + generateBaselines(ApplicationConfig.DRUID_ATTACKTYPE_UDP_FLOOD); // generateBaselines(ApplicationConfig.DRUID_ATTACKTYPE_ICMP_FLOOD); // generateBaselines(ApplicationConfig.DRUID_ATTACKTYPE_DNS_AMPL); @@ -86,7 +85,9 @@ public class BaselineGeneration { for (int batchCurrent = 0; batchCurrent batchIps = destinationIps.subList(batchCurrent*ApplicationConfig.GENERATE_BATCH_NUM, (batchCurrent+1)*ApplicationConfig.GENERATE_BATCH_NUM); - executor.execute(() -> generateBaselines(batchIps, attackType)); + if(batchIps.size()>0){ + executor.execute(() -> generateBaselines(batchIps, attackType)); + } } executor.shutdown(); diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties index b5edb74..76b7906 100644 --- a/src/main/resources/application.properties +++ b/src/main/resources/application.properties @@ -6,7 +6,7 @@ druid.table=top_server_ip_test_log #字段映射 druid.attacktype.tcpsynflood=sessions -#druid.attacktype.udpflood=IPv6_TCP +druid.attacktype.udpflood=bytes #druid.attacktype.icmpflood=IPv6_UDP #druid.attacktype.dnsamplification=IPv4_UDP druid.serverip.columnname=destination diff --git a/target/classes/application.properties b/target/classes/application.properties index b5edb74..76b7906 100644 --- a/target/classes/application.properties +++ b/target/classes/application.properties @@ -6,7 +6,7 @@ druid.table=top_server_ip_test_log #字段映射 druid.attacktype.tcpsynflood=sessions -#druid.attacktype.udpflood=IPv6_TCP +druid.attacktype.udpflood=bytes #druid.attacktype.icmpflood=IPv6_UDP #druid.attacktype.dnsamplification=IPv4_UDP druid.serverip.columnname=destination diff --git a/target/classes/cn/mesalab/service/BaselineGeneration.class b/target/classes/cn/mesalab/service/BaselineGeneration.class index 89a4e2c38a66761b859c529cd63471698a3c23c9..3fe06ff5bf8e92797f4d92843353e05b239e0b50 100644 GIT binary patch delta 4348 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