diff options
| author | 李玺康 <[email protected]> | 2020-07-28 17:11:42 +0800 |
|---|---|---|
| committer | 李玺康 <[email protected]> | 2020-07-28 17:11:42 +0800 |
| commit | ca856ff9e61b5b553c7f14119f853ac5b2f3d14f (patch) | |
| tree | 48106d93e811a64edd7da39eb56d2f000459d073 | |
flume拦截器,读取本机通联csv格式文件解析成json格式
| -rw-r--r-- | dependency-reduced-pom.xml | 68 | ||||
| -rw-r--r-- | flume-interceptor.iml | 2 | ||||
| -rw-r--r-- | pom.xml | 57 | ||||
| -rw-r--r-- | src/main/java/META-INF/MANIFEST.MF | 3 | ||||
| -rw-r--r-- | src/main/java/cn/ac/iie/flume/bean/Common.java | 384 | ||||
| -rw-r--r-- | src/main/java/cn/ac/iie/flume/bean/Connection.java | 151 | ||||
| -rw-r--r-- | src/main/java/cn/ac/iie/flume/bean/NewConn.java | 1185 | ||||
| -rw-r--r-- | src/main/java/cn/ac/iie/flume/bean/OldConn.java | 365 | ||||
| -rw-r--r-- | src/main/java/cn/ac/iie/flume/interceptor/Csv2Json.java | 124 | ||||
| -rw-r--r-- | src/main/java/cn/ac/iie/flume/interceptor/Json2Csv.java | 116 | ||||
| -rw-r--r-- | src/main/java/cn/ac/iie/flume/interceptor/Json2Json.java | 116 |
11 files changed, 2571 insertions, 0 deletions
diff --git a/dependency-reduced-pom.xml b/dependency-reduced-pom.xml new file mode 100644 index 0000000..a7d4f5b --- /dev/null +++ b/dependency-reduced-pom.xml @@ -0,0 +1,68 @@ +<?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/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <groupId>cn.ac.iie.flume</groupId> + <artifactId>flume-interceptor</artifactId> + <version>1.0-SNAPSHOT</version> + <build> + <resources> + <resource> + <directory>properties</directory> + <includes> + <include>**/*.properties</include> + </includes> + </resource> + <resource> + <directory>properties</directory> + <includes> + <include>log4j.properties</include> + </includes> + </resource> + </resources> + <plugins> + <plugin> + <artifactId>maven-shade-plugin</artifactId> + <version>2.4.2</version> + <executions> + <execution> + <phase>package</phase> + <goals> + <goal>shade</goal> + </goals> + <configuration> + <transformers> + <transformer> + <mainClass>cn.ac.iie.flume.interceptor.Json2Csv</mainClass> + </transformer> + <transformer> + <resource>META-INF/spring.handlers</resource> + </transformer> + <transformer> + <resource>META-INF/spring.schemas</resource> + </transformer> + </transformers> + </configuration> + </execution> + </executions> + </plugin> + <plugin> + <artifactId>maven-compiler-plugin</artifactId> + <version>2.3.2</version> + <configuration> + <source>1.8</source> + <target>1.8</target> + </configuration> + </plugin> + </plugins> + </build> + <dependencies> + <dependency> + <groupId>org.apache.commons.io</groupId> + <artifactId>commonsIO</artifactId> + <version>2.5.0</version> + <type>pom</type> + <scope>compile</scope> + </dependency> + </dependencies> +</project> + diff --git a/flume-interceptor.iml b/flume-interceptor.iml new file mode 100644 index 0000000..78b2cc5 --- /dev/null +++ b/flume-interceptor.iml @@ -0,0 +1,2 @@ +<?xml version="1.0" encoding="UTF-8"?> +<module type="JAVA_MODULE" version="4" />
\ No newline at end of file @@ -0,0 +1,57 @@ +<?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"> + <modelVersion>4.0.0</modelVersion> + + <groupId>cn.ac.iie.flume</groupId> + <artifactId>flume-interceptor</artifactId> + <version>1.0-SNAPSHOT</version> + + <dependencies> + <dependency> + <groupId>org.json</groupId> + <artifactId>json</artifactId> + <version>20160810</version> + </dependency> + + <dependency> + <groupId>org.apache.commons.io</groupId> + <artifactId>commonsIO</artifactId> + <version>2.5.0</version> + <type>pom</type> + </dependency> + <dependency> + <groupId>commons-io</groupId> + <artifactId>commons-io</artifactId> + <version>2.6</version> + </dependency> + + <dependency> + <groupId>com.alibaba</groupId> + <artifactId>fastjson</artifactId> + <version>1.2.59</version> + </dependency> + <dependency> + <groupId>org.apache.flume</groupId> + <artifactId>flume-ng-core</artifactId> + <version>1.9.0</version> + </dependency> + + </dependencies> + + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-compiler-plugin</artifactId> + <configuration> + <source>1.8</source> + <target>1.8</target> + <encoding>UTF-8</encoding> + </configuration> + </plugin> + </plugins> + </build> + +</project>
\ No newline at end of file diff --git a/src/main/java/META-INF/MANIFEST.MF b/src/main/java/META-INF/MANIFEST.MF new file mode 100644 index 0000000..af3a9e9 --- /dev/null +++ b/src/main/java/META-INF/MANIFEST.MF @@ -0,0 +1,3 @@ +Manifest-Version: 1.0 +Main-Class: cn.ac.iie.flume.interceptor.Json2Json + diff --git a/src/main/java/cn/ac/iie/flume/bean/Common.java b/src/main/java/cn/ac/iie/flume/bean/Common.java new file mode 100644 index 0000000..a5336bb --- /dev/null +++ b/src/main/java/cn/ac/iie/flume/bean/Common.java @@ -0,0 +1,384 @@ +package cn.ac.iie.flume.bean; + +public class Common { + + private int common_service; + private int common_direction; + private long common_recv_time; + private int common_address_type; + private int common_policy_id; + private int common_action; + private int common_client_port; + private int common_entrance_id; + private int common_link_id; + private int common_encapsulation; + private int common_server_port; + private int common_app_id; + private int common_protocol_id; + private int common_c2s_pkt_num; + private int common_s2c_pkt_num; + private long common_c2s_byte_num; + private long common_s2c_byte_num; + private int common_start_time; + private int common_end_time; + private int common_con_duration_ms; + private int common_stream_dir; + private int common_has_dup_traffic; + private long common_log_id; + + private String common_schema_type; + private String common_l4_protocol; + private String common_user_tags; + private String common_user_region; + private String common_client_ip; + private String common_device_id; + private String common_sub_action; + private String common_isp; + private String common_sled_ip; + private String common_client_location; + private String common_client_asn; + private String common_subscriber_id; + private String common_server_ip; + private String common_server_location; + private String common_server_asn; + private String common_app_label; + private String common_address_list; + private String common_stream_error; + private long common_stream_trace_id; + + public int getCommon_service() { + return common_service; + } + + public void setCommon_service(int common_service) { + this.common_service = common_service; + } + + public int getCommon_direction() { + return common_direction; + } + + public void setCommon_direction(int common_direction) { + this.common_direction = common_direction; + } + + public long getCommon_recv_time() { + return common_recv_time; + } + + public void setCommon_recv_time(long common_recv_time) { + this.common_recv_time = common_recv_time; + } + + public int getCommon_address_type() { + return common_address_type; + } + + public void setCommon_address_type(int common_address_type) { + this.common_address_type = common_address_type; + } + + public int getCommon_policy_id() { + return common_policy_id; + } + + public void setCommon_policy_id(int common_policy_id) { + this.common_policy_id = common_policy_id; + } + + public int getCommon_action() { + return common_action; + } + + public void setCommon_action(int common_action) { + this.common_action = common_action; + } + + public int getCommon_client_port() { + return common_client_port; + } + + public void setCommon_client_port(int common_client_port) { + this.common_client_port = common_client_port; + } + + public int getCommon_entrance_id() { + return common_entrance_id; + } + + public void setCommon_entrance_id(int common_entrance_id) { + this.common_entrance_id = common_entrance_id; + } + + public int getCommon_link_id() { + return common_link_id; + } + + public void setCommon_link_id(int common_link_id) { + this.common_link_id = common_link_id; + } + + public int getCommon_encapsulation() { + return common_encapsulation; + } + + public void setCommon_encapsulation(int common_encapsulation) { + this.common_encapsulation = common_encapsulation; + } + + public int getCommon_server_port() { + return common_server_port; + } + + public void setCommon_server_port(int common_server_port) { + this.common_server_port = common_server_port; + } + + public int getCommon_app_id() { + return common_app_id; + } + + public void setCommon_app_id(int common_app_id) { + this.common_app_id = common_app_id; + } + + public int getCommon_protocol_id() { + return common_protocol_id; + } + + public void setCommon_protocol_id(int common_protocol_id) { + this.common_protocol_id = common_protocol_id; + } + + public int getCommon_c2s_pkt_num() { + return common_c2s_pkt_num; + } + + public void setCommon_c2s_pkt_num(int common_c2s_pkt_num) { + this.common_c2s_pkt_num = common_c2s_pkt_num; + } + + public int getCommon_s2c_pkt_num() { + return common_s2c_pkt_num; + } + + public void setCommon_s2c_pkt_num(int common_s2c_pkt_num) { + this.common_s2c_pkt_num = common_s2c_pkt_num; + } + + public long getCommon_c2s_byte_num() { + return common_c2s_byte_num; + } + + public void setCommon_c2s_byte_num(long common_c2s_byte_num) { + this.common_c2s_byte_num = common_c2s_byte_num; + } + + public long getCommon_s2c_byte_num() { + return common_s2c_byte_num; + } + + public void setCommon_s2c_byte_num(long common_s2c_byte_num) { + this.common_s2c_byte_num = common_s2c_byte_num; + } + + public int getCommon_start_time() { + return common_start_time; + } + + public void setCommon_start_time(int common_start_time) { + this.common_start_time = common_start_time; + } + + public int getCommon_end_time() { + return common_end_time; + } + + public void setCommon_end_time(int common_end_time) { + this.common_end_time = common_end_time; + } + + public int getCommon_con_duration_ms() { + return common_con_duration_ms; + } + + public void setCommon_con_duration_ms(int common_con_duration_ms) { + this.common_con_duration_ms = common_con_duration_ms; + } + + public int getCommon_stream_dir() { + return common_stream_dir; + } + + public void setCommon_stream_dir(int common_stream_dir) { + this.common_stream_dir = common_stream_dir; + } + + public int getCommon_has_dup_traffic() { + return common_has_dup_traffic; + } + + public void setCommon_has_dup_traffic(int common_has_dup_traffic) { + this.common_has_dup_traffic = common_has_dup_traffic; + } + + public long getCommon_log_id() { + return common_log_id; + } + + public void setCommon_log_id(long common_log_id) { + this.common_log_id = common_log_id; + } + + public String getCommon_schema_type() { + return common_schema_type; + } + + public void setCommon_schema_type(String common_schema_type) { + this.common_schema_type = common_schema_type; + } + + public String getCommon_l4_protocol() { + return common_l4_protocol; + } + + public void setCommon_l4_protocol(String common_l4_protocol) { + this.common_l4_protocol = common_l4_protocol; + } + + public String getCommon_user_tags() { + return common_user_tags; + } + + public void setCommon_user_tags(String common_user_tags) { + this.common_user_tags = common_user_tags; + } + + public String getCommon_user_region() { + return common_user_region; + } + + public void setCommon_user_region(String common_user_region) { + this.common_user_region = common_user_region; + } + + public String getCommon_client_ip() { + return common_client_ip; + } + + public void setCommon_client_ip(String common_client_ip) { + this.common_client_ip = common_client_ip; + } + + public String getCommon_device_id() { + return common_device_id; + } + + public void setCommon_device_id(String common_device_id) { + this.common_device_id = common_device_id; + } + + public String getCommon_sub_action() { + return common_sub_action; + } + + public void setCommon_sub_action(String common_sub_action) { + this.common_sub_action = common_sub_action; + } + + public String getCommon_isp() { + return common_isp; + } + + public void setCommon_isp(String common_isp) { + this.common_isp = common_isp; + } + + public String getCommon_sled_ip() { + return common_sled_ip; + } + + public void setCommon_sled_ip(String common_sled_ip) { + this.common_sled_ip = common_sled_ip; + } + + public String getCommon_client_location() { + return common_client_location; + } + + public void setCommon_client_location(String common_client_location) { + this.common_client_location = common_client_location; + } + + public String getCommon_client_asn() { + return common_client_asn; + } + + public void setCommon_client_asn(String common_client_asn) { + this.common_client_asn = common_client_asn; + } + + public String getCommon_subscriber_id() { + return common_subscriber_id; + } + + public void setCommon_subscriber_id(String common_subscriber_id) { + this.common_subscriber_id = common_subscriber_id; + } + + public String getCommon_server_ip() { + return common_server_ip; + } + + public void setCommon_server_ip(String common_server_ip) { + this.common_server_ip = common_server_ip; + } + + public String getCommon_server_location() { + return common_server_location; + } + + public void setCommon_server_location(String common_server_location) { + this.common_server_location = common_server_location; + } + + public String getCommon_server_asn() { + return common_server_asn; + } + + public void setCommon_server_asn(String common_server_asn) { + this.common_server_asn = common_server_asn; + } + + public String getCommon_app_label() { + return common_app_label; + } + + public void setCommon_app_label(String common_app_label) { + this.common_app_label = common_app_label; + } + + public String getCommon_address_list() { + return common_address_list; + } + + public void setCommon_address_list(String common_address_list) { + this.common_address_list = common_address_list; + } + + public String getCommon_stream_error() { + return common_stream_error; + } + + public void setCommon_stream_error(String common_stream_error) { + this.common_stream_error = common_stream_error; + } + + public long getCommon_stream_trace_id() { + return common_stream_trace_id; + } + + public void setCommon_stream_trace_id(long common_stream_trace_id) { + this.common_stream_trace_id = common_stream_trace_id; + } +} diff --git a/src/main/java/cn/ac/iie/flume/bean/Connection.java b/src/main/java/cn/ac/iie/flume/bean/Connection.java new file mode 100644 index 0000000..494dd29 --- /dev/null +++ b/src/main/java/cn/ac/iie/flume/bean/Connection.java @@ -0,0 +1,151 @@ +package cn.ac.iie.flume.bean; + +/** + * @ClassNameConnection + * @Author [email protected] + * @Date2020/6/17 15:27 + * @Version V1.0 + **/ +public class Connection { + private int common_policy_id; + private long common_recv_time; + private String common_l4_protocol; + private String common_server_ip; + private String common_client_ip; + private int common_server_port; + private int common_device_id; + private String common_sled_ip; + private String common_server_location; + private String common_client_location; + private String common_subscriber_id; + private int common_c2s_pkt_num; + private int common_s2c_pkt_num; + private long common_c2s_byte_num; + private long common_s2c_byte_num; + + public int getCommon_policy_id() { + return common_policy_id; + } + + public void setCommon_policy_id(int common_policy_id) { + this.common_policy_id = common_policy_id; + } + + + + public void setCommon_recv_time(int common_recv_time) { + this.common_recv_time = common_recv_time; + } + + public String getCommon_l4_protocol() { + return common_l4_protocol; + } + + public void setCommon_l4_protocol(String common_l4_protocol) { + this.common_l4_protocol = common_l4_protocol; + } + + public String getCommon_server_ip() { + return common_server_ip; + } + + public void setCommon_server_ip(String common_server_ip) { + this.common_server_ip = common_server_ip; + } + + public String getCommon_client_ip() { + return common_client_ip; + } + + public void setCommon_recv_time(long common_recv_time) { + this.common_recv_time = common_recv_time; + } + + public void setCommon_client_ip(String common_client_ip) { + this.common_client_ip = common_client_ip; + } + + public int getCommon_server_port() { + return common_server_port; + } + + public void setCommon_server_port(int common_server_port) { + this.common_server_port = common_server_port; + } + + public int getCommon_device_id() { + return common_device_id; + } + + public void setCommon_device_id(int common_device_id) { + this.common_device_id = common_device_id; + } + + public String getCommon_sled_ip() { + return common_sled_ip; + } + + public void setCommon_sled_ip(String common_sled_ip) { + this.common_sled_ip = common_sled_ip; + } + + public String getCommon_server_location() { + return common_server_location; + } + + public void setCommon_server_location(String common_server_location) { + this.common_server_location = common_server_location; + } + + public String getCommon_client_location() { + return common_client_location; + } + + public void setCommon_client_location(String common_client_location) { + this.common_client_location = common_client_location; + } + + public String getCommon_subscriber_id() { + return common_subscriber_id; + } + + public void setCommon_subscriber_id(String common_subscriber_id) { + this.common_subscriber_id = common_subscriber_id; + } + + public int getCommon_c2s_pkt_num() { + return common_c2s_pkt_num; + } + + public void setCommon_c2s_pkt_num(int common_c2s_pkt_num) { + this.common_c2s_pkt_num = common_c2s_pkt_num; + } + + public int getCommon_s2c_pkt_num() { + return common_s2c_pkt_num; + } + + public void setCommon_s2c_pkt_num(int common_s2c_pkt_num) { + this.common_s2c_pkt_num = common_s2c_pkt_num; + } + + public long getCommon_recv_time() { + return common_recv_time; + } + + public long getCommon_c2s_byte_num() { + return common_c2s_byte_num; + } + + public long getCommon_s2c_byte_num() { + return common_s2c_byte_num; + } + + public void setCommon_c2s_byte_num(long common_c2s_byte_num) { + this.common_c2s_byte_num = common_c2s_byte_num; + } + + public void setCommon_s2c_byte_num(long common_s2c_byte_num) { + this.common_s2c_byte_num = common_s2c_byte_num; + } +} diff --git a/src/main/java/cn/ac/iie/flume/bean/NewConn.java b/src/main/java/cn/ac/iie/flume/bean/NewConn.java new file mode 100644 index 0000000..5408f51 --- /dev/null +++ b/src/main/java/cn/ac/iie/flume/bean/NewConn.java @@ -0,0 +1,1185 @@ +package cn.ac.iie.flume.bean; + +public class NewConn { + + private long common_log_id; + private int common_service; + private int common_recv_time; + private int common_direction; + private String common_l4_protocol; + private int common_address_type; + private String common_schema_type; + private int common_policy_id; + private String common_user_tags; + private int common_action; + private String common_sub_action; + private String common_user_region; + private String common_client_ip; + private int common_client_port; + private int common_entrance_id; + private String common_device_id; + private int common_link_id; + private String common_isp; + private int common_encapsulation; + private String common_sled_ip; + private String common_client_location; + private String common_client_asn; + private String common_subscriber_id; + private String common_server_ip; + private int common_server_port; + private String common_server_location; + private String common_server_asn; + private String common_protocol_label; + private String common_app_label; + private int common_sessions; + private int common_c2s_pkt_num; + private int common_s2c_pkt_num; + private int common_c2s_byte_num; + private int common_s2c_byte_num; + private int common_start_time; + private int common_end_time; + private int common_establish_latency_ms; + private int common_con_duration_ms; + private int common_stream_dir; + private String common_address_list; + private int common_has_dup_traffic; + private String common_stream_error; + private int common_stream_trace_id; + private String common_link_info; + private String http_url; + private String http_host; + private String http_domain; + private String http_request_line; + private String http_response_line; + private String http_request_header; + private String http_response_header; + private String http_request_body; + private String http_response_body; + private String http_request_body_key; + private String http_response_body_key; + private int http_proxy_flag; + private int http_sequence; + private String http_snapshot; + private String http_cookie; + private String http_referer; + private String http_user_agent; + private String http_content_length; + private String http_content_type; + private String http_set_cookie; + private String http_version; + private int http_response_lantency_ms; + private int http_session_duration_ms; + private int http_action_file_size; + private String mail_protocol_type; + private String mail_account; + private String mail_to_cmd; + private String mail_from_cmd; + private String mail_from; + private String mail_to; + private String mail_cc; + private String mail_bcc; + private String mail_subject; + private String mail_subject_charset; + private String mail_content; + private String mail_content_charset; + private String mail_attachment_name; + private String mail_attachment_name_charset; + private String mail_attachment_content; + private String mail_eml_file; + private String mail_snapshot; + private int dns_message_id; + private int dns_qr; + private int dns_opcode; + private int dns_aa; + private int dns_tc; + private int dns_rd; + private int dns_ra; + private int dns_rcode; + private int dns_qdcount; + private int dns_ancount; + private int dns_nscount; + private int dns_arcount; + private String dns_qname; + private int dns_qtype; + private int dns_qclass; + private String dns_cname; + private int dns_sub; + private String dns_rr; + private String ssl_version; + private String ssl_sni; + private String ssl_san; + private String ssl_cn; + private int ssl_pinningst; + private int ssl_intercept_state; + private int ssl_server_side_latency; + private int ssl_client_side_latency; + private String ssl_server_side_version; + private String ssl_client_side_version; + private int ssl_cert_verify; + private String ssl_error; + private int ssl_con_latency_ms; + private String quic_version; + private String quic_sni; + private String quic_user_agent; + private String ftp_account; + private String ftp_url; + private String ftp_content; + private int bgp_type; + private String bgp_as_num; + private String bgp_route; + private String voip_calling_account; + private String voip_called_account; + private String voip_calling_number; + private String voip_called_number; + private String streaming_media_url; + private String streaming_media_protocol; + + + public long getCommon_log_id() { + return common_log_id; + } + + public void setCommon_log_id(long common_log_id) { + this.common_log_id = common_log_id; + } + + public int getCommon_service() { + return common_service; + } + + public void setCommon_service(int common_service) { + this.common_service = common_service; + } + + public int getCommon_recv_time() { + return common_recv_time; + } + + public void setCommon_recv_time(int common_recv_time) { + this.common_recv_time = common_recv_time; + } + + public int getCommon_direction() { + return common_direction; + } + + public void setCommon_direction(int common_direction) { + this.common_direction = common_direction; + } + + public String getCommon_l4_protocol() { + return common_l4_protocol; + } + + public void setCommon_l4_protocol(String common_l4_protocol) { + this.common_l4_protocol = common_l4_protocol; + } + + public int getCommon_address_type() { + return common_address_type; + } + + public void setCommon_address_type(int common_address_type) { + this.common_address_type = common_address_type; + } + + public String getCommon_schema_type() { + return common_schema_type; + } + + public void setCommon_schema_type(String common_schema_type) { + this.common_schema_type = common_schema_type; + } + + public int getCommon_policy_id() { + return common_policy_id; + } + + public void setCommon_policy_id(int common_policy_id) { + this.common_policy_id = common_policy_id; + } + + public String getCommon_user_tags() { + return common_user_tags; + } + + public void setCommon_user_tags(String common_user_tags) { + this.common_user_tags = common_user_tags; + } + + public int getCommon_action() { + return common_action; + } + + public void setCommon_action(int common_action) { + this.common_action = common_action; + } + + public String getCommon_sub_action() { + return common_sub_action; + } + + public void setCommon_sub_action(String common_sub_action) { + this.common_sub_action = common_sub_action; + } + + public String getCommon_user_region() { + return common_user_region; + } + + public void setCommon_user_region(String common_user_region) { + this.common_user_region = common_user_region; + } + + public String getCommon_client_ip() { + return common_client_ip; + } + + public void setCommon_client_ip(String common_client_ip) { + this.common_client_ip = common_client_ip; + } + + public int getCommon_client_port() { + return common_client_port; + } + + public void setCommon_client_port(int common_client_port) { + this.common_client_port = common_client_port; + } + + public int getCommon_entrance_id() { + return common_entrance_id; + } + + public void setCommon_entrance_id(int common_entrance_id) { + this.common_entrance_id = common_entrance_id; + } + + public String getCommon_device_id() { + return common_device_id; + } + + public void setCommon_device_id(String common_device_id) { + this.common_device_id = common_device_id; + } + + public int getCommon_link_id() { + return common_link_id; + } + + public void setCommon_link_id(int common_link_id) { + this.common_link_id = common_link_id; + } + + public String getCommon_isp() { + return common_isp; + } + + public void setCommon_isp(String common_isp) { + this.common_isp = common_isp; + } + + public int getCommon_encapsulation() { + return common_encapsulation; + } + + public void setCommon_encapsulation(int common_encapsulation) { + this.common_encapsulation = common_encapsulation; + } + + public String getCommon_sled_ip() { + return common_sled_ip; + } + + public void setCommon_sled_ip(String common_sled_ip) { + this.common_sled_ip = common_sled_ip; + } + + public String getCommon_client_location() { + return common_client_location; + } + + public void setCommon_client_location(String common_client_location) { + this.common_client_location = common_client_location; + } + + public String getCommon_client_asn() { + return common_client_asn; + } + + public void setCommon_client_asn(String common_client_asn) { + this.common_client_asn = common_client_asn; + } + + public String getCommon_subscriber_id() { + return common_subscriber_id; + } + + public void setCommon_subscriber_id(String common_subscriber_id) { + this.common_subscriber_id = common_subscriber_id; + } + + public String getCommon_server_ip() { + return common_server_ip; + } + + public void setCommon_server_ip(String common_server_ip) { + this.common_server_ip = common_server_ip; + } + + public int getCommon_server_port() { + return common_server_port; + } + + public void setCommon_server_port(int common_server_port) { + this.common_server_port = common_server_port; + } + + public String getCommon_server_location() { + return common_server_location; + } + + public void setCommon_server_location(String common_server_location) { + this.common_server_location = common_server_location; + } + + public String getCommon_server_asn() { + return common_server_asn; + } + + public void setCommon_server_asn(String common_server_asn) { + this.common_server_asn = common_server_asn; + } + + public String getCommon_protocol_label() { + return common_protocol_label; + } + + public void setCommon_protocol_label(String common_protocol_label) { + this.common_protocol_label = common_protocol_label; + } + + public String getCommon_app_label() { + return common_app_label; + } + + public void setCommon_app_label(String common_app_label) { + this.common_app_label = common_app_label; + } + + public int getCommon_sessions() { + return common_sessions; + } + + public void setCommon_sessions(int common_sessions) { + this.common_sessions = common_sessions; + } + + public int getCommon_c2s_pkt_num() { + return common_c2s_pkt_num; + } + + public void setCommon_c2s_pkt_num(int common_c2s_pkt_num) { + this.common_c2s_pkt_num = common_c2s_pkt_num; + } + + public int getCommon_s2c_pkt_num() { + return common_s2c_pkt_num; + } + + public void setCommon_s2c_pkt_num(int common_s2c_pkt_num) { + this.common_s2c_pkt_num = common_s2c_pkt_num; + } + + public int getCommon_c2s_byte_num() { + return common_c2s_byte_num; + } + + public void setCommon_c2s_byte_num(int common_c2s_byte_num) { + this.common_c2s_byte_num = common_c2s_byte_num; + } + + public int getCommon_s2c_byte_num() { + return common_s2c_byte_num; + } + + public void setCommon_s2c_byte_num(int common_s2c_byte_num) { + this.common_s2c_byte_num = common_s2c_byte_num; + } + + public int getCommon_start_time() { + return common_start_time; + } + + public void setCommon_start_time(int common_start_time) { + this.common_start_time = common_start_time; + } + + public int getCommon_end_time() { + return common_end_time; + } + + public void setCommon_end_time(int common_end_time) { + this.common_end_time = common_end_time; + } + + public int getCommon_establish_latency_ms() { + return common_establish_latency_ms; + } + + public void setCommon_establish_latency_ms(int common_establish_latency_ms) { + this.common_establish_latency_ms = common_establish_latency_ms; + } + + public int getCommon_con_duration_ms() { + return common_con_duration_ms; + } + + public void setCommon_con_duration_ms(int common_con_duration_ms) { + this.common_con_duration_ms = common_con_duration_ms; + } + + public int getCommon_stream_dir() { + return common_stream_dir; + } + + public void setCommon_stream_dir(int common_stream_dir) { + this.common_stream_dir = common_stream_dir; + } + + public String getCommon_address_list() { + return common_address_list; + } + + public void setCommon_address_list(String common_address_list) { + this.common_address_list = common_address_list; + } + + public int getCommon_has_dup_traffic() { + return common_has_dup_traffic; + } + + public void setCommon_has_dup_traffic(int common_has_dup_traffic) { + this.common_has_dup_traffic = common_has_dup_traffic; + } + + public String getCommon_stream_error() { + return common_stream_error; + } + + public void setCommon_stream_error(String common_stream_error) { + this.common_stream_error = common_stream_error; + } + + public int getCommon_stream_trace_id() { + return common_stream_trace_id; + } + + public void setCommon_stream_trace_id(int common_stream_trace_id) { + this.common_stream_trace_id = common_stream_trace_id; + } + + public String getCommon_link_info() { + return common_link_info; + } + + public void setCommon_link_info(String common_link_info) { + this.common_link_info = common_link_info; + } + + public String getHttp_url() { + return http_url; + } + + public void setHttp_url(String http_url) { + this.http_url = http_url; + } + + public String getHttp_host() { + return http_host; + } + + public void setHttp_host(String http_host) { + this.http_host = http_host; + } + + public String getHttp_domain() { + return http_domain; + } + + public void setHttp_domain(String http_domain) { + this.http_domain = http_domain; + } + + public String getHttp_request_line() { + return http_request_line; + } + + public void setHttp_request_line(String http_request_line) { + this.http_request_line = http_request_line; + } + + public String getHttp_response_line() { + return http_response_line; + } + + public void setHttp_response_line(String http_response_line) { + this.http_response_line = http_response_line; + } + + public String getHttp_request_header() { + return http_request_header; + } + + public void setHttp_request_header(String http_request_header) { + this.http_request_header = http_request_header; + } + + public String getHttp_response_header() { + return http_response_header; + } + + public void setHttp_response_header(String http_response_header) { + this.http_response_header = http_response_header; + } + + public String getHttp_request_body() { + return http_request_body; + } + + public void setHttp_request_body(String http_request_body) { + this.http_request_body = http_request_body; + } + + public String getHttp_response_body() { + return http_response_body; + } + + public void setHttp_response_body(String http_response_body) { + this.http_response_body = http_response_body; + } + + public String getHttp_request_body_key() { + return http_request_body_key; + } + + public void setHttp_request_body_key(String http_request_body_key) { + this.http_request_body_key = http_request_body_key; + } + + public String getHttp_response_body_key() { + return http_response_body_key; + } + + public void setHttp_response_body_key(String http_response_body_key) { + this.http_response_body_key = http_response_body_key; + } + + public int getHttp_proxy_flag() { + return http_proxy_flag; + } + + public void setHttp_proxy_flag(int http_proxy_flag) { + this.http_proxy_flag = http_proxy_flag; + } + + public int getHttp_sequence() { + return http_sequence; + } + + public void setHttp_sequence(int http_sequence) { + this.http_sequence = http_sequence; + } + + public String getHttp_snapshot() { + return http_snapshot; + } + + public void setHttp_snapshot(String http_snapshot) { + this.http_snapshot = http_snapshot; + } + + public String getHttp_cookie() { + return http_cookie; + } + + public void setHttp_cookie(String http_cookie) { + this.http_cookie = http_cookie; + } + + public String getHttp_referer() { + return http_referer; + } + + public void setHttp_referer(String http_referer) { + this.http_referer = http_referer; + } + + public String getHttp_user_agent() { + return http_user_agent; + } + + public void setHttp_user_agent(String http_user_agent) { + this.http_user_agent = http_user_agent; + } + + public String getHttp_content_length() { + return http_content_length; + } + + public void setHttp_content_length(String http_content_length) { + this.http_content_length = http_content_length; + } + + public String getHttp_content_type() { + return http_content_type; + } + + public void setHttp_content_type(String http_content_type) { + this.http_content_type = http_content_type; + } + + public String getHttp_set_cookie() { + return http_set_cookie; + } + + public void setHttp_set_cookie(String http_set_cookie) { + this.http_set_cookie = http_set_cookie; + } + + public String getHttp_version() { + return http_version; + } + + public void setHttp_version(String http_version) { + this.http_version = http_version; + } + + public int getHttp_response_lantency_ms() { + return http_response_lantency_ms; + } + + public void setHttp_response_lantency_ms(int http_response_lantency_ms) { + this.http_response_lantency_ms = http_response_lantency_ms; + } + + public int getHttp_session_duration_ms() { + return http_session_duration_ms; + } + + public void setHttp_session_duration_ms(int http_session_duration_ms) { + this.http_session_duration_ms = http_session_duration_ms; + } + + public int getHttp_action_file_size() { + return http_action_file_size; + } + + public void setHttp_action_file_size(int http_action_file_size) { + this.http_action_file_size = http_action_file_size; + } + + public String getMail_protocol_type() { + return mail_protocol_type; + } + + public void setMail_protocol_type(String mail_protocol_type) { + this.mail_protocol_type = mail_protocol_type; + } + + public String getMail_account() { + return mail_account; + } + + public void setMail_account(String mail_account) { + this.mail_account = mail_account; + } + + public String getMail_to_cmd() { + return mail_to_cmd; + } + + public void setMail_to_cmd(String mail_to_cmd) { + this.mail_to_cmd = mail_to_cmd; + } + + public String getMail_from_cmd() { + return mail_from_cmd; + } + + public void setMail_from_cmd(String mail_from_cmd) { + this.mail_from_cmd = mail_from_cmd; + } + + public String getMail_from() { + return mail_from; + } + + public void setMail_from(String mail_from) { + this.mail_from = mail_from; + } + + public String getMail_to() { + return mail_to; + } + + public void setMail_to(String mail_to) { + this.mail_to = mail_to; + } + + public String getMail_cc() { + return mail_cc; + } + + public void setMail_cc(String mail_cc) { + this.mail_cc = mail_cc; + } + + public String getMail_bcc() { + return mail_bcc; + } + + public void setMail_bcc(String mail_bcc) { + this.mail_bcc = mail_bcc; + } + + public String getMail_subject() { + return mail_subject; + } + + public void setMail_subject(String mail_subject) { + this.mail_subject = mail_subject; + } + + public String getMail_subject_charset() { + return mail_subject_charset; + } + + public void setMail_subject_charset(String mail_subject_charset) { + this.mail_subject_charset = mail_subject_charset; + } + + public String getMail_content() { + return mail_content; + } + + public void setMail_content(String mail_content) { + this.mail_content = mail_content; + } + + public String getMail_content_charset() { + return mail_content_charset; + } + + public void setMail_content_charset(String mail_content_charset) { + this.mail_content_charset = mail_content_charset; + } + + public String getMail_attachment_name() { + return mail_attachment_name; + } + + public void setMail_attachment_name(String mail_attachment_name) { + this.mail_attachment_name = mail_attachment_name; + } + + public String getMail_attachment_name_charset() { + return mail_attachment_name_charset; + } + + public void setMail_attachment_name_charset(String mail_attachment_name_charset) { + this.mail_attachment_name_charset = mail_attachment_name_charset; + } + + public String getMail_attachment_content() { + return mail_attachment_content; + } + + public void setMail_attachment_content(String mail_attachment_content) { + this.mail_attachment_content = mail_attachment_content; + } + + public String getMail_eml_file() { + return mail_eml_file; + } + + public void setMail_eml_file(String mail_eml_file) { + this.mail_eml_file = mail_eml_file; + } + + public String getMail_snapshot() { + return mail_snapshot; + } + + public void setMail_snapshot(String mail_snapshot) { + this.mail_snapshot = mail_snapshot; + } + + public int getDns_message_id() { + return dns_message_id; + } + + public void setDns_message_id(int dns_message_id) { + this.dns_message_id = dns_message_id; + } + + public int getDns_qr() { + return dns_qr; + } + + public void setDns_qr(int dns_qr) { + this.dns_qr = dns_qr; + } + + public int getDns_opcode() { + return dns_opcode; + } + + public void setDns_opcode(int dns_opcode) { + this.dns_opcode = dns_opcode; + } + + public int getDns_aa() { + return dns_aa; + } + + public void setDns_aa(int dns_aa) { + this.dns_aa = dns_aa; + } + + public int getDns_tc() { + return dns_tc; + } + + public void setDns_tc(int dns_tc) { + this.dns_tc = dns_tc; + } + + public int getDns_rd() { + return dns_rd; + } + + public void setDns_rd(int dns_rd) { + this.dns_rd = dns_rd; + } + + public int getDns_ra() { + return dns_ra; + } + + public void setDns_ra(int dns_ra) { + this.dns_ra = dns_ra; + } + + public int getDns_rcode() { + return dns_rcode; + } + + public void setDns_rcode(int dns_rcode) { + this.dns_rcode = dns_rcode; + } + + public int getDns_qdcount() { + return dns_qdcount; + } + + public void setDns_qdcount(int dns_qdcount) { + this.dns_qdcount = dns_qdcount; + } + + public int getDns_ancount() { + return dns_ancount; + } + + public void setDns_ancount(int dns_ancount) { + this.dns_ancount = dns_ancount; + } + + public int getDns_nscount() { + return dns_nscount; + } + + public void setDns_nscount(int dns_nscount) { + this.dns_nscount = dns_nscount; + } + + public int getDns_arcount() { + return dns_arcount; + } + + public void setDns_arcount(int dns_arcount) { + this.dns_arcount = dns_arcount; + } + + public String getDns_qname() { + return dns_qname; + } + + public void setDns_qname(String dns_qname) { + this.dns_qname = dns_qname; + } + + public int getDns_qtype() { + return dns_qtype; + } + + public void setDns_qtype(int dns_qtype) { + this.dns_qtype = dns_qtype; + } + + public int getDns_qclass() { + return dns_qclass; + } + + public void setDns_qclass(int dns_qclass) { + this.dns_qclass = dns_qclass; + } + + public String getDns_cname() { + return dns_cname; + } + + public void setDns_cname(String dns_cname) { + this.dns_cname = dns_cname; + } + + public int getDns_sub() { + return dns_sub; + } + + public void setDns_sub(int dns_sub) { + this.dns_sub = dns_sub; + } + + public String getDns_rr() { + return dns_rr; + } + + public void setDns_rr(String dns_rr) { + this.dns_rr = dns_rr; + } + + public String getSsl_version() { + return ssl_version; + } + + public void setSsl_version(String ssl_version) { + this.ssl_version = ssl_version; + } + + public String getSsl_sni() { + return ssl_sni; + } + + public void setSsl_sni(String ssl_sni) { + this.ssl_sni = ssl_sni; + } + + public String getSsl_san() { + return ssl_san; + } + + public void setSsl_san(String ssl_san) { + this.ssl_san = ssl_san; + } + + public String getSsl_cn() { + return ssl_cn; + } + + public void setSsl_cn(String ssl_cn) { + this.ssl_cn = ssl_cn; + } + + public int getSsl_pinningst() { + return ssl_pinningst; + } + + public void setSsl_pinningst(int ssl_pinningst) { + this.ssl_pinningst = ssl_pinningst; + } + + public int getSsl_intercept_state() { + return ssl_intercept_state; + } + + public void setSsl_intercept_state(int ssl_intercept_state) { + this.ssl_intercept_state = ssl_intercept_state; + } + + public int getSsl_server_side_latency() { + return ssl_server_side_latency; + } + + public void setSsl_server_side_latency(int ssl_server_side_latency) { + this.ssl_server_side_latency = ssl_server_side_latency; + } + + public int getSsl_client_side_latency() { + return ssl_client_side_latency; + } + + public void setSsl_client_side_latency(int ssl_client_side_latency) { + this.ssl_client_side_latency = ssl_client_side_latency; + } + + public String getSsl_server_side_version() { + return ssl_server_side_version; + } + + public void setSsl_server_side_version(String ssl_server_side_version) { + this.ssl_server_side_version = ssl_server_side_version; + } + + public String getSsl_client_side_version() { + return ssl_client_side_version; + } + + public void setSsl_client_side_version(String ssl_client_side_version) { + this.ssl_client_side_version = ssl_client_side_version; + } + + public int getSsl_cert_verify() { + return ssl_cert_verify; + } + + public void setSsl_cert_verify(int ssl_cert_verify) { + this.ssl_cert_verify = ssl_cert_verify; + } + + public String getSsl_error() { + return ssl_error; + } + + public void setSsl_error(String ssl_error) { + this.ssl_error = ssl_error; + } + + public int getSsl_con_latency_ms() { + return ssl_con_latency_ms; + } + + public void setSsl_con_latency_ms(int ssl_con_latency_ms) { + this.ssl_con_latency_ms = ssl_con_latency_ms; + } + + public String getQuic_version() { + return quic_version; + } + + public void setQuic_version(String quic_version) { + this.quic_version = quic_version; + } + + public String getQuic_sni() { + return quic_sni; + } + + public void setQuic_sni(String quic_sni) { + this.quic_sni = quic_sni; + } + + public String getQuic_user_agent() { + return quic_user_agent; + } + + public void setQuic_user_agent(String quic_user_agent) { + this.quic_user_agent = quic_user_agent; + } + + public String getFtp_account() { + return ftp_account; + } + + public void setFtp_account(String ftp_account) { + this.ftp_account = ftp_account; + } + + public String getFtp_url() { + return ftp_url; + } + + public void setFtp_url(String ftp_url) { + this.ftp_url = ftp_url; + } + + public String getFtp_content() { + return ftp_content; + } + + public void setFtp_content(String ftp_content) { + this.ftp_content = ftp_content; + } + + public int getBgp_type() { + return bgp_type; + } + + public void setBgp_type(int bgp_type) { + this.bgp_type = bgp_type; + } + + public String getBgp_as_num() { + return bgp_as_num; + } + + public void setBgp_as_num(String bgp_as_num) { + this.bgp_as_num = bgp_as_num; + } + + public String getBgp_route() { + return bgp_route; + } + + public void setBgp_route(String bgp_route) { + this.bgp_route = bgp_route; + } + + public String getVoip_calling_account() { + return voip_calling_account; + } + + public void setVoip_calling_account(String voip_calling_account) { + this.voip_calling_account = voip_calling_account; + } + + public String getVoip_called_account() { + return voip_called_account; + } + + public void setVoip_called_account(String voip_called_account) { + this.voip_called_account = voip_called_account; + } + + public String getVoip_calling_number() { + return voip_calling_number; + } + + public void setVoip_calling_number(String voip_calling_number) { + this.voip_calling_number = voip_calling_number; + } + + public String getVoip_called_number() { + return voip_called_number; + } + + public void setVoip_called_number(String voip_called_number) { + this.voip_called_number = voip_called_number; + } + + public String getStreaming_media_url() { + return streaming_media_url; + } + + public void setStreaming_media_url(String streaming_media_url) { + this.streaming_media_url = streaming_media_url; + } + + public String getStreaming_media_protocol() { + return streaming_media_protocol; + } + + public void setStreaming_media_protocol(String streaming_media_protocol) { + this.streaming_media_protocol = streaming_media_protocol; + } +}
\ No newline at end of file diff --git a/src/main/java/cn/ac/iie/flume/bean/OldConn.java b/src/main/java/cn/ac/iie/flume/bean/OldConn.java new file mode 100644 index 0000000..5e2971c --- /dev/null +++ b/src/main/java/cn/ac/iie/flume/bean/OldConn.java @@ -0,0 +1,365 @@ +package cn.ac.iie.flume.bean; + +public class OldConn { + + private String log_id; + private int cfg_id; + private int found_time; + private int recv_time; + private String trans_proto; + private int addr_type; + private String d_ip; + private String s_ip; + private int d_port; + private int s_port; + private int service; + private int entrance_id; + private int device_id; + private int link_id; + private int encap_type; + private int direction; + private String inner_smac; + private String inner_dmac; + private int stream_dir; + private String cap_ip; + private String addr_list; + private String server_locate; + private String client_locate; + private String s_asn; + private String d_asn; + private String s_subscribe_id; + private String d_subscribe_id; + private String user_region; + private String scene_file; + private String app_label; + private int c2s_pkt_num; + private int s2c_pkt_num; + private int c2s_byte_num; + private int s2c_byte_num; + private int proto_id; + private int app_id; + private int os_id; + private int bs_id; + private int web_id; + private int behav_id; + + public String getLog_id() { + return log_id; + } + + public void setLog_id(String log_id) { + this.log_id = log_id; + } + + public int getCfg_id() { + return cfg_id; + } + + public void setCfg_id(int cfg_id) { + this.cfg_id = cfg_id; + } + + public int getFound_time() { + return found_time; + } + + public void setFound_time(int found_time) { + this.found_time = found_time; + } + + public int getRecv_time() { + return recv_time; + } + + public void setRecv_time(int recv_time) { + this.recv_time = recv_time; + } + + public String getTrans_proto() { + return trans_proto; + } + + public void setTrans_proto(String trans_proto) { + this.trans_proto = trans_proto; + } + + public int getAddr_type() { + return addr_type; + } + + public void setAddr_type(int addr_type) { + this.addr_type = addr_type; + } + + public String getD_ip() { + return d_ip; + } + + public void setD_ip(String d_ip) { + this.d_ip = d_ip; + } + + public String getS_ip() { + return s_ip; + } + + public void setS_ip(String s_ip) { + this.s_ip = s_ip; + } + + public int getD_port() { + return d_port; + } + + public void setD_port(int d_port) { + this.d_port = d_port; + } + + public int getS_port() { + return s_port; + } + + public void setS_port(int s_port) { + this.s_port = s_port; + } + + public int getService() { + return service; + } + + public void setService(int service) { + this.service = service; + } + + public int getEntrance_id() { + return entrance_id; + } + + public void setEntrance_id(int entrance_id) { + this.entrance_id = entrance_id; + } + + public int getDevice_id() { + return device_id; + } + + public void setDevice_id(int device_id) { + this.device_id = device_id; + } + + public int getLink_id() { + return link_id; + } + + public void setLink_id(int link_id) { + this.link_id = link_id; + } + + public int getEncap_type() { + return encap_type; + } + + public void setEncap_type(int encap_type) { + this.encap_type = encap_type; + } + + public int getDirection() { + return direction; + } + + public void setDirection(int direction) { + this.direction = direction; + } + + public String getInner_smac() { + return inner_smac; + } + + public void setInner_smac(String inner_smac) { + this.inner_smac = inner_smac; + } + + public String getInner_dmac() { + return inner_dmac; + } + + public void setInner_dmac(String inner_dmac) { + this.inner_dmac = inner_dmac; + } + + public int getStream_dir() { + return stream_dir; + } + + public void setStream_dir(int stream_dir) { + this.stream_dir = stream_dir; + } + + public String getCap_ip() { + return cap_ip; + } + + public void setCap_ip(String cap_ip) { + this.cap_ip = cap_ip; + } + + public String getAddr_list() { + return addr_list; + } + + public void setAddr_list(String addr_list) { + this.addr_list = addr_list; + } + + public String getServer_locate() { + return server_locate; + } + + public void setServer_locate(String server_locate) { + this.server_locate = server_locate; + } + + public String getClient_locate() { + return client_locate; + } + + public void setClient_locate(String client_locate) { + this.client_locate = client_locate; + } + + public String getS_asn() { + return s_asn; + } + + public void setS_asn(String s_asn) { + this.s_asn = s_asn; + } + + public String getD_asn() { + return d_asn; + } + + public void setD_asn(String d_asn) { + this.d_asn = d_asn; + } + + public String getS_subscribe_id() { + return s_subscribe_id; + } + + public void setS_subscribe_id(String s_subscribe_id) { + this.s_subscribe_id = s_subscribe_id; + } + + public String getD_subscribe_id() { + return d_subscribe_id; + } + + public void setD_subscribe_id(String d_subscribe_id) { + this.d_subscribe_id = d_subscribe_id; + } + + public String getUser_region() { + return user_region; + } + + public void setUser_region(String user_region) { + this.user_region = user_region; + } + + public String getScene_file() { + return scene_file; + } + + public void setScene_file(String scene_file) { + this.scene_file = scene_file; + } + + public String getApp_label() { + return app_label; + } + + public void setApp_label(String app_label) { + this.app_label = app_label; + } + + public int getC2s_pkt_num() { + return c2s_pkt_num; + } + + public void setC2s_pkt_num(int c2s_pkt_num) { + this.c2s_pkt_num = c2s_pkt_num; + } + + public int getS2c_pkt_num() { + return s2c_pkt_num; + } + + public void setS2c_pkt_num(int s2c_pkt_num) { + this.s2c_pkt_num = s2c_pkt_num; + } + + public int getC2s_byte_num() { + return c2s_byte_num; + } + + public void setC2s_byte_num(int c2s_byte_num) { + this.c2s_byte_num = c2s_byte_num; + } + + public int getS2c_byte_num() { + return s2c_byte_num; + } + + public void setS2c_byte_num(int s2c_byte_num) { + this.s2c_byte_num = s2c_byte_num; + } + + public int getProto_id() { + return proto_id; + } + + public void setProto_id(int proto_id) { + this.proto_id = proto_id; + } + + public int getApp_id() { + return app_id; + } + + public void setApp_id(int app_id) { + this.app_id = app_id; + } + + public int getOs_id() { + return os_id; + } + + public void setOs_id(int os_id) { + this.os_id = os_id; + } + + public int getBs_id() { + return bs_id; + } + + public void setBs_id(int bs_id) { + this.bs_id = bs_id; + } + + public int getWeb_id() { + return web_id; + } + + public void setWeb_id(int web_id) { + this.web_id = web_id; + } + + public int getBehav_id() { + return behav_id; + } + + public void setBehav_id(int behav_id) { + this.behav_id = behav_id; + } +}
\ No newline at end of file diff --git a/src/main/java/cn/ac/iie/flume/interceptor/Csv2Json.java b/src/main/java/cn/ac/iie/flume/interceptor/Csv2Json.java new file mode 100644 index 0000000..48f66ee --- /dev/null +++ b/src/main/java/cn/ac/iie/flume/interceptor/Csv2Json.java @@ -0,0 +1,124 @@ +package cn.ac.iie.flume.interceptor; + +import cn.ac.iie.flume.bean.Connection; +import cn.ac.iie.flume.bean.NewConn; +import com.alibaba.fastjson.JSONObject; +import org.apache.flume.Context; +import org.apache.flume.Event; +import org.apache.flume.interceptor.Interceptor; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +import java.util.ArrayList; +import java.util.List; + +public class Csv2Json implements Interceptor { + + //打印日志,便于测试方法的执行顺序 + private static final Logger logger = LoggerFactory.getLogger(Csv2Json.class); + + private static byte[] body; + + private static String json; + private NewConn newConn; + + + @Override + public void initialize() { + logger.info("----------自定义拦截器的initialize方法执行"); + } + + @Override + public Event intercept(Event event) { + logger.info("----------intercept(Event event)方法执行,处理单个event"); + + //TODO 处理单个event的代码 + //取出一条csv格式的数据 + body = event.getBody(); + json = new String(body); + + String[] strings = json.replaceAll("\t"," " ).replaceAll("\"","" ).split(","); + + newConn = new NewConn(); + + newConn.setCommon_log_id(Long.parseLong("0")); + newConn.setCommon_policy_id(Integer.parseInt(strings[1])); + newConn.setCommon_start_time(Integer.parseInt(strings[2])); + newConn.setCommon_recv_time(Integer.parseInt(strings[3])); + newConn.setCommon_l4_protocol(strings[4]); + newConn.setCommon_address_type(Integer.parseInt(strings[5])); + newConn.setCommon_client_ip(strings[6]); + newConn.setCommon_server_ip(strings[7]); + newConn.setCommon_client_port(Integer.parseInt(strings[8])); + newConn.setCommon_server_port(Integer.parseInt(strings[9])); + newConn.setCommon_service(Integer.parseInt(strings[10])); + newConn.setCommon_entrance_id(Integer.parseInt(strings[11])); + newConn.setCommon_device_id(strings[12]); + newConn.setCommon_link_id(Integer.parseInt(strings[13])); + newConn.setCommon_encapsulation(Integer.parseInt(strings[14])); + newConn.setCommon_direction(Integer.parseInt(strings[15])); + newConn.setCommon_stream_dir(Integer.parseInt(strings[18])); + newConn.setCommon_sled_ip(strings[19]); + newConn.setCommon_address_list(strings[20]); + newConn.setCommon_server_location(strings[21]); + newConn.setCommon_client_location(strings[22]); + newConn.setCommon_server_asn(strings[23]); + newConn.setCommon_client_asn(strings[24]); + newConn.setCommon_subscriber_id(strings[26]); + newConn.setCommon_user_region(strings[27]); + newConn.setCommon_c2s_pkt_num(Integer.parseInt(strings[30])); + newConn.setCommon_s2c_pkt_num(Integer.parseInt(strings[31])); + newConn.setCommon_c2s_byte_num(Integer.parseInt(strings[32])); + newConn.setCommon_s2c_byte_num(Integer.parseInt(strings[33])); + newConn.setCommon_protocol_label(strings[34]); + newConn.setCommon_app_label(strings[35]); + newConn.setCommon_action(Integer.parseInt(strings[39])); + + + json = JSONObject.toJSONString(newConn); + + body = json.getBytes(); + event.setBody(body); + return event; + } + + //TODO 处理多个event的函数 + @Override + public List<Event> intercept(List<Event> events) { + + List<Event> results = new ArrayList<>(); + Event event; + for (Event e : events) { + + event = intercept(e); + if (event != null) { + results.add(event); + } + } + return results; + } + + @Override + public void close() { + logger.info("----------自定义拦截器close方法执行"); + } + + public static class Builder implements Interceptor.Builder { + + @Override + public Interceptor build() { + logger.info("----------build方法执行"); + return new Csv2Json(); + } + + @Override + public void configure(Context context) { + logger.info("----------configure方法执行"); + } + } + + + public static void main(String[] args) { + + } +} diff --git a/src/main/java/cn/ac/iie/flume/interceptor/Json2Csv.java b/src/main/java/cn/ac/iie/flume/interceptor/Json2Csv.java new file mode 100644 index 0000000..0abbc01 --- /dev/null +++ b/src/main/java/cn/ac/iie/flume/interceptor/Json2Csv.java @@ -0,0 +1,116 @@ +package cn.ac.iie.flume.interceptor; + +import org.apache.commons.io.FileUtils; +import org.apache.flume.Context; +import org.apache.flume.Event; +import org.json.CDL; +import org.json.JSONArray; + +import java.io.File; +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; + +import org.apache.flume.interceptor.Interceptor; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +public class Json2Csv implements Interceptor{ + + //打印日志,便于测试方法的执行顺序 + private static final Logger logger = LoggerFactory.getLogger(Json2Csv.class); + + private static byte[] body; + + private static String json; + + + /** + * Json数据转换为Csv数据 + * @param json + * @return + */ + public static String Json2CsvUtils(String json) { + JSONArray jsonArray = new JSONArray(json); + String csv =CDL.toString(jsonArray); + return csv; + } + + @Override + public void initialize() { + logger.info("----------自定义拦截器的initialize方法执行"); + } + + @Override + public Event intercept(Event event) { + logger.info("----------intercept(Event event)方法执行,处理单个event"); + + //TODO 处理单个event的代码 + + body = event.getBody(); + + json= "[" + new String(body) + "]"; + + + String csv = Json2CsvUtils(json); + + String[] split = csv.split("\n"); + + body = split[1].getBytes(); + event.setBody(body); + return event; + } + + //TODO 处理多个event的函数 + @Override + public List<Event> intercept(List<Event> events) { + + List<Event> results = new ArrayList<>(); + Event event; + for (Event e : events) { + + event = intercept(e); + if (event != null) { + results.add(event); + } + } + return results; + } + + @Override + public void close() { + logger.info("----------自定义拦截器close方法执行"); + } + + public static class Builder implements Interceptor.Builder{ + + @Override + public Interceptor build() { + logger.info("----------build方法执行"); + return new Json2Csv(); + } + + @Override + public void configure(Context context) { + logger.info("----------configure方法执行"); + } + } + + + public static void main(String[] args) throws IOException, InterruptedException { +// String jsonstr = "[{\"common_server_ip\":\"211.90.25.35\",\"common_client_ip\":\"192.168.50.6\",\"common_server_port\":443,\"common_client_port\":59801,\"common_stream_dir\":3,\"common_address_type\":4,\"common_s2c_pkt_num\":97,\"common_s2c_byte_num\":107582,\"common_c2s_pkt_num\":65,\"common_c2s_byte_num\":1370,\"common_start_time\":1589795595,\"common_end_time\":1589795725,\"common_con_duration_ms\":130000,\"common_stream_trace_id\":8113956949548,\"common_l4_protocol\":\"IPv4_TCP\",\"common_address_list\":\"59801-443-192.168.50.6-211.90.25.35\",\"common_schema_type\":\"SSL\",\"common_has_dup_traffic\":0,\"ssl_sni\":\"p4.music.126.net\",\"ssl_pinningst\":0,\"ssl_intercept_state\":1,\"ssl_server_side_latency\":29,\"ssl_client_side_latency\":192,\"ssl_server_side_version\":\"TLSv1.2\",\"ssl_client_side_version\":\"TLSv1.2\",\"ssl_cert_verify\":1,\"common_sled_ip\":\"192.168.40.161\",\"common_policy_id\":14385,\"common_service\":0,\"common_action\":2},\n" + +// "{\"common_schema_type\":\"SSL\",\"ssl_sni\":\"docs.geedge.net\",\"common_server_ip\":\"47.93.59.84\",\"common_client_ip\":\"192.168.50.2\",\"common_server_port\":443,\"common_client_port\":61636,\"common_stream_dir\":3,\"common_address_type\":4,\"common_s2c_pkt_num\":2,\"common_s2c_byte_num\":0,\"common_c2s_pkt_num\":4,\"common_c2s_byte_num\":520,\"common_start_time\":1589795768,\"common_end_time\":1589795769,\"common_con_duration_ms\":1000,\"common_stream_trace_id\":8113962657521,\"common_l4_protocol\":\"IPv4_TCP\",\"common_address_list\":\"61636-443-192.168.50.2-47.93.59.84\",\"common_sled_ip\":\"192.168.40.161\",\"common_policy_id\":1,\"common_service\":0,\"common_action\":128}]"; +// String jsonstr = "[{\"common_action\":48,\"common_address_type\":4,\"common_client_asn\":\"N/A\",\"common_client_ip\":\"192.168.50.2\",\"common_client_location\":\"Private IP\",\"common_client_port\":61545,\"common_device_id\":\"0\",\"common_direction\":0,\"common_end_time\":1589795698,\"common_entrance_id\":0,\"common_l4_protocol\":\"IPv4_TCP\",\"common_link_id\":0,\"common_log_id\":117046227744456704,\"common_policy_id\":13840,\"common_recv_time\":1589795698,\"common_schema_type\":\"HTTP\",\"common_server_asn\":\"4808\",\"common_server_ip\":\"123.125.82.158\",\"common_server_location\":\"China\",\"common_server_port\":443,\"common_service\":0,\"common_sled_ip\":\"192.168.40.162\",\"common_start_time\":1589795698,\"common_stream_dir\":3,\"common_stream_trace_id\":8113956752685,\"common_sub_action\":\"monitor\",\"common_subscriber_id\":\"test2\",\"http_content_type\":\"text/html\",\"http_cookie\":\"__huid=11n3zx+KGEiggdircvQvnRhx24Z4pP+YuVpz2oC1+OIF4=\",\"http_domain\":\"360.cn\",\"http_host\":\"browser.360.cn\",\"http_request_line\":\"GET browser.360.cn/scene/total_plugin_hosts.html HTTP/2.0\",\"http_response_body\":\"http://192.168.40.223:9090/proxybucket/a6/42/cbeb56454318bd62c51699a53629a10159c6fad2f947b0bcd896a8c6799e\",\"http_response_line\":\"HTTP/2.0 200 OK\",\"http_url\":\"browser.360.cn/scene/total_plugin_hosts.html\",\"http_user_agent\":\"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/78.0.3904.108 Safari/537.36 QIHU 360SE\",\"http_version\":\"http2\"}]"; +String jsonstr = "[{\"bgp_type\":0,\"common_action\":0,\"common_address_list\":\"50615-443-37.150.10.41-96.46.176.133\",\"common_address_type\":4,\"common_app_id\":0,\"common_c2s_byte_num\":1385,\"common_c2s_pkt_num\":5,\"common_client_asn\":\"7979\",\"common_client_ip\":\"96.46.176.133\",\"common_client_location\":\"Ashburn,Virginia,美国\",\"common_client_port\":443,\"common_con_duration_ms\":0,\"common_direction\":1,\"common_encapsulation\":0,\"common_end_time\":0,\"common_entrance_id\":0,\"common_has_dup_traffic\":0,\"common_link_id\":0,\"common_log_id\":118459825951637508,\"common_policy_id\":0,\"common_protocol_id\":0,\"common_recv_time\":1589879955,\"common_s2c_byte_num\":5121,\"common_s2c_pkt_num\":8,\"common_schema_type\":\"IPv4_TCP\",\"common_server_asn\":\"9198\",\"common_server_ip\":\"37.150.10.41\",\"common_server_location\":\"哈萨克斯坦\",\"common_server_port\":50615,\"common_service\":0,\"common_sled_ip\":\"10.4.4.3\",\"common_start_time\":1547461445,\"common_stream_dir\":3,\"common_stream_trace_id\":0,\"dns_aa\":0,\"dns_ancount\":0,\"dns_arcount\":0,\"dns_message_id\":0,\"dns_nscount\":0,\"dns_qclass\":0,\"dns_qdcount\":0,\"dns_qtype\":0,\"dns_ra\":0,\"dns_rcode\":0,\"dns_rd\":0,\"dns_sub\":0,\"dns_tc\":0,\"http_proxy_flag\":0,\"http_sequence\":0,\"ssl_client_side_latency\":0,\"ssl_con_latency_ms\":0,\"ssl_server_side_latency\":0},\n" + + "{\"bgp_type\":0,\"common_action\":0,\"common_address_list\":\"15947-80-85.117.117.44-54.254.192.56\",\"common_address_type\":4,\"common_app_id\":0,\"common_c2s_byte_num\":506,\"common_c2s_pkt_num\":2,\"common_client_asn\":\"38895,16509\",\"common_client_ip\":\"54.254.192.56\",\"common_client_location\":\"Singapore,Singapore,新加坡\",\"common_client_port\":80,\"common_con_duration_ms\":0,\"common_direction\":0,\"common_encapsulation\":0,\"common_end_time\":0,\"common_entrance_id\":0,\"common_has_dup_traffic\":0,\"common_link_id\":0,\"common_log_id\":118459825951637509,\"common_policy_id\":0,\"common_protocol_id\":0,\"common_recv_time\":1589879955,\"common_s2c_byte_num\":1040,\"common_s2c_pkt_num\":2,\"common_schema_type\":\"IPv4_TCP\",\"common_server_asn\":\"29555\",\"common_server_ip\":\"85.117.117.44\",\"common_server_location\":\"哈萨克斯坦\",\"common_server_port\":15947,\"common_service\":0,\"common_sled_ip\":\"10.4.4.30\",\"common_start_time\":1547461445,\"common_stream_dir\":3,\"common_stream_trace_id\":0,\"dns_aa\":0,\"dns_ancount\":0,\"dns_arcount\":0,\"dns_message_id\":0,\"dns_nscount\":0,\"dns_qclass\":0,\"dns_qdcount\":0,\"dns_qtype\":0,\"dns_ra\":0,\"dns_rcode\":0,\"dns_rd\":0,\"dns_sub\":0,\"dns_tc\":0,\"http_proxy_flag\":0,\"http_sequence\":0,\"ssl_client_side_latency\":0,\"ssl_con_latency_ms\":0,\"ssl_server_side_latency\":0},\n" + + "{\"bgp_type\":0,\"common_action\":0,\"common_address_list\":\"IPv4_TCP<62648-443-5.251.150.58-10.100.100.1>|GRE<NULL>|IPv4<89.218.73.54-78.46.206.144>|MAC<000000000426-18100400033c>\",\"common_address_type\":4,\"common_app_id\":0,\"common_c2s_byte_num\":3292,\"common_c2s_pkt_num\":6,\"common_client_asn\":\"N/A\",\"common_client_ip\":\"10.100.100.1\",\"common_client_location\":\"-,-,-\",\"common_client_port\":443,\"common_con_duration_ms\":0,\"common_direction\":0,\"common_encapsulation\":0,\"common_end_time\":0,\"common_entrance_id\":0,\"common_has_dup_traffic\":0,\"common_link_id\":0,\"common_log_id\":118459825951637510,\"common_policy_id\":0,\"common_protocol_id\":0,\"common_recv_time\":1589879955,\"common_s2c_byte_num\":17667,\"common_s2c_pkt_num\":16,\"common_schema_type\":\"IPv4_TCP\",\"common_server_asn\":\"9198\",\"common_server_ip\":\"5.251.150.58\",\"common_server_location\":\"哈萨克斯坦\",\"common_server_port\":62648,\"common_service\":0,\"common_sled_ip\":\"10.4.4.60\",\"common_start_time\":1547461445,\"common_stream_dir\":3,\"common_stream_trace_id\":0,\"dns_aa\":0,\"dns_ancount\":0,\"dns_arcount\":0,\"dns_message_id\":0,\"dns_nscount\":0,\"dns_qclass\":0,\"dns_qdcount\":0,\"dns_qtype\":0,\"dns_ra\":0,\"dns_rcode\":0,\"dns_rd\":0,\"dns_sub\":0,\"dns_tc\":0,\"http_proxy_flag\":0,\"http_sequence\":0,\"ssl_client_side_latency\":0,\"ssl_con_latency_ms\":0,\"ssl_server_side_latency\":0},\n" + + "{\"bgp_type\":0,\"common_action\":0,\"common_address_list\":\"59653-443-95.59.99.58-173.194.122.143\",\"common_address_type\":4,\"common_app_id\":0,\"common_c2s_byte_num\":1240,\"common_c2s_pkt_num\":8,\"common_client_asn\":\"15169\",\"common_client_ip\":\"173.194.122.143\",\"common_client_location\":\"Mountain View,California,美国\",\"common_client_port\":443,\"common_con_duration_ms\":0,\"common_direction\":1,\"common_encapsulation\":0,\"common_end_time\":0,\"common_entrance_id\":0,\"common_has_dup_traffic\":0,\"common_link_id\":0,\"common_log_id\":118459825951637511,\"common_policy_id\":0,\"common_protocol_id\":0,\"common_recv_time\":1589879955,\"common_s2c_byte_num\":944,\"common_s2c_pkt_num\":9,\"common_schema_type\":\"IPv4_TCP\",\"common_server_asn\":\"9198\",\"common_server_ip\":\"95.59.99.58\",\"common_server_location\":\"哈萨克斯坦\",\"common_server_port\":59653,\"common_service\":0,\"common_sled_ip\":\"10.4.4.18\",\"common_start_time\":1547461445,\"common_stream_dir\":3,\"common_stream_trace_id\":0,\"dns_aa\":0,\"dns_ancount\":0,\"dns_arcount\":0,\"dns_message_id\":0,\"dns_nscount\":0,\"dns_qclass\":0,\"dns_qdcount\":0,\"dns_qtype\":0,\"dns_ra\":0,\"dns_rcode\":0,\"dns_rd\":0,\"dns_sub\":0,\"dns_tc\":0,\"http_proxy_flag\":0,\"http_sequence\":0,\"ssl_client_side_latency\":0,\"ssl_con_latency_ms\":0,\"ssl_server_side_latency\":0},\n" + + "{\"bgp_type\":0,\"common_action\":0,\"common_address_list\":\"41873-443-212.154.169.132-94.100.180.76\",\"common_address_type\":4,\"common_app_id\":0,\"common_c2s_byte_num\":1986,\"common_c2s_pkt_num\":5,\"common_client_asn\":\"47764\",\"common_client_ip\":\"94.100.180.76\",\"common_client_location\":\"Moscow,Moskva,俄罗斯\",\"common_client_port\":443,\"common_con_duration_ms\":0,\"common_direction\":0,\"common_encapsulation\":0,\"common_end_time\":0,\"common_entrance_id\":0,\"common_has_dup_traffic\":0,\"common_link_id\":0,\"common_log_id\":118459825951637512,\"common_policy_id\":0,\"common_protocol_id\":0,\"common_recv_time\":1589879955,\"common_s2c_byte_num\":513,\"common_s2c_pkt_num\":2,\"common_schema_type\":\"IPv4_TCP\",\"common_server_asn\":\"50482,9198\",\"common_server_ip\":\"212.154.169.132\",\"common_server_location\":\"哈萨克斯坦\",\"common_server_port\":41873,\"common_service\":0,\"common_sled_ip\":\"10.4.4.26\",\"common_start_time\":1547461445,\"common_stream_dir\":3,\"common_stream_trace_id\":0,\"dns_aa\":0,\"dns_ancount\":0,\"dns_arcount\":0,\"dns_message_id\":0,\"dns_nscount\":0,\"dns_qclass\":0,\"dns_qdcount\":0,\"dns_qtype\":0,\"dns_ra\":0,\"dns_rcode\":0,\"dns_rd\":0,\"dns_sub\":0,\"dns_tc\":0,\"http_proxy_flag\":0,\"http_sequence\":0,\"ssl_client_side_latency\":0,\"ssl_con_latency_ms\":0,\"ssl_server_side_latency\":0},\n" + + "{\"bgp_type\":0,\"common_action\":0,\"common_address_list\":\"23050-443-92.46.127.82-185.86.139.19\",\"common_address_type\":4,\"common_app_id\":0,\"common_c2s_byte_num\":4386,\"common_c2s_pkt_num\":9,\"common_client_asn\":\"201081\",\"common_client_ip\":\"185.86.139.19\",\"common_client_location\":\"Paris,Ile-de-France,法国\",\"common_client_port\":443,\"common_con_duration_ms\":0,\"common_direction\":0,\"common_encapsulation\":0,\"common_end_time\":0,\"common_entrance_id\":0,\"common_has_dup_traffic\":0,\"common_link_id\":0,\"common_log_id\":118459825968414720,\"common_policy_id\":0,\"common_protocol_id\":0,\"common_recv_time\":1589879955,\"common_s2c_byte_num\":3634,\"common_s2c_pkt_num\":5,\"common_schema_type\":\"IPv4_TCP\",\"common_server_asn\":\"9198\",\"common_server_ip\":\"92.46.127.82\",\"common_server_location\":\"哈萨克斯坦\",\"common_server_port\":23050,\"common_service\":0,\"common_sled_ip\":\"10.4.4.59\",\"common_start_time\":1547461445,\"common_stream_dir\":3,\"common_stream_trace_id\":0,\"dns_aa\":0,\"dns_ancount\":0,\"dns_arcount\":0,\"dns_message_id\":0,\"dns_nscount\":0,\"dns_qclass\":0,\"dns_qdcount\":0,\"dns_qtype\":0,\"dns_ra\":0,\"dns_rcode\":0,\"dns_rd\":0,\"dns_sub\":0,\"dns_tc\":0,\"http_proxy_flag\":0,\"http_sequence\":0,\"ssl_client_side_latency\":0,\"ssl_con_latency_ms\":0,\"ssl_server_side_latency\":0},\n" + + "{\"bgp_type\":0,\"common_action\":0,\"common_address_list\":\"51500-443-192.168.145.145-10.61.43.190\",\"common_address_type\":4,\"common_app_id\":0,\"common_c2s_byte_num\":1239,\"common_c2s_pkt_num\":3,\"common_client_asn\":\"N/A\",\"common_client_ip\":\"10.61.43.190\",\"common_client_location\":\"-,-,-\",\"common_client_port\":443,\"common_con_duration_ms\":0,\"common_direction\":1,\"common_encapsulation\":0,\"common_end_time\":0,\"common_entrance_id\":0,\"common_has_dup_traffic\":0,\"common_link_id\":0,\"common_log_id\":118459825968414721,\"common_policy_id\":0,\"common_protocol_id\":0,\"common_recv_time\":1589879955,\"common_s2c_byte_num\":3060,\"common_s2c_pkt_num\":5,\"common_schema_type\":\"IPv4_TCP\",\"common_server_asn\":\"N/A\",\"common_server_ip\":\"192.168.145.145\",\"common_server_location\":\"-\",\"common_server_port\":51500,\"common_service\":0,\"common_sled_ip\":\"10.4.4.37\",\"common_start_time\":1547461445,\"common_stream_dir\":3,\"common_stream_trace_id\":0,\"dns_aa\":0,\"dns_ancount\":0,\"dns_arcount\":0,\"dns_message_id\":0,\"dns_nscount\":0,\"dns_qclass\":0,\"dns_qdcount\":0,\"dns_qtype\":0,\"dns_ra\":0,\"dns_rcode\":0,\"dns_rd\":0,\"dns_sub\":0,\"dns_tc\":0,\"http_proxy_flag\":0,\"http_sequence\":0,\"ssl_client_side_latency\":0,\"ssl_con_latency_ms\":0,\"ssl_server_side_latency\":0}]"; + System.out.println("开始转换"); + FileUtils.writeStringToFile(new File("D:/Json2Csv/demo5.csv"), Json2CsvUtils(jsonstr),"UTF-8"); + Thread.sleep(10L); + System.out.println("转换结束"); + } +} diff --git a/src/main/java/cn/ac/iie/flume/interceptor/Json2Json.java b/src/main/java/cn/ac/iie/flume/interceptor/Json2Json.java new file mode 100644 index 0000000..d9a1af3 --- /dev/null +++ b/src/main/java/cn/ac/iie/flume/interceptor/Json2Json.java @@ -0,0 +1,116 @@ +package cn.ac.iie.flume.interceptor; + + +import cn.ac.iie.flume.bean.NewConn; +import cn.ac.iie.flume.bean.OldConn; +import org.apache.flume.Context; +import org.apache.flume.Event; +import org.apache.flume.interceptor.Interceptor; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import com.alibaba.fastjson.JSON; + +import java.util.ArrayList; +import java.util.List; + +public class Json2Json implements Interceptor { + + + //打印日志,便于测试方法的执行顺序 + private static final Logger logger = LoggerFactory.getLogger(Json2Json.class); + + private static byte[] body; + + private static String json; + + @Override + public void initialize() { + logger.info("----------自定义拦截器close方法开始执行"); + } + + @Override + public Event intercept(Event event) { + body = event.getBody(); + json = new String(body); + + OldConn oldConn = JSON.parseObject(json, OldConn.class); + + NewConn newConn = getNewConn(oldConn); + + body = JSON.toJSONString(newConn).getBytes(); + + event.setBody(body); + + return event; + } + + @Override + public List<Event> intercept(List<Event> events) { + List<Event> results = new ArrayList<>(); + Event event; + for (Event e : events) { + + event = intercept(e); + if (event != null) { + results.add(event); + } + } + return results; + } + + @Override + public void close() { + logger.info("----------自定义拦截器close方法结束执行"); + } + + public static NewConn getNewConn(OldConn oldConn){ + + NewConn newConn = new NewConn(); + + newConn.setCommon_policy_id(oldConn.getCfg_id()); + newConn.setCommon_start_time(oldConn.getFound_time()); + newConn.setCommon_recv_time(oldConn.getFound_time()); + newConn.setCommon_schema_type(oldConn.getTrans_proto()); + newConn.setCommon_address_type(oldConn.getAddr_type()); + newConn.setCommon_client_ip(oldConn.getD_ip()); + newConn.setCommon_server_ip(oldConn.getS_ip()); + newConn.setCommon_client_port(oldConn.getD_port()); + newConn.setCommon_server_port(oldConn.getS_port()); + newConn.setCommon_encapsulation(oldConn.getEncap_type()); + newConn.setCommon_direction(oldConn.getDirection()); + + newConn.setCommon_stream_dir(oldConn.getStream_dir()); + + newConn.setCommon_sled_ip(oldConn.getCap_ip()); + + newConn.setCommon_address_list(oldConn.getAddr_list()); + + newConn.setCommon_c2s_pkt_num(oldConn.getC2s_pkt_num()); + + newConn.setCommon_s2c_pkt_num(oldConn.getS2c_pkt_num()); + + newConn.setCommon_c2s_byte_num(oldConn.getC2s_byte_num()); + + newConn.setCommon_s2c_byte_num(oldConn.getS2c_byte_num()); + return newConn; + } + + public static class Builder implements Interceptor.Builder{ + + @Override + public Interceptor build() { + logger.info("----------build方法执行"); + return new Json2Json(); + } + + @Override + public void configure(Context context) { + logger.info("----------configure方法执行"); + } + } + + public static void main(String[] args) { + + } + +} |
