133 lines
9.8 KiB
Java
133 lines
9.8 KiB
Java
package com.mesasoft.cn.sketch.util;
|
||
|
||
import cn.hutool.core.date.DateUtil;
|
||
import com.alibaba.druid.pool.DruidDataSourceFactory;
|
||
import me.geso.jdbcutils.JDBCUtils;
|
||
import org.apache.commons.lang3.time.StopWatch;
|
||
|
||
import javax.sql.DataSource;
|
||
import java.math.BigInteger;
|
||
import java.sql.*;
|
||
import java.util.Properties;
|
||
|
||
/**
|
||
* Druid连接池的工具类
|
||
*/
|
||
public class MariaDBUtils {
|
||
private static DataSource ds;
|
||
|
||
static {
|
||
try {
|
||
Properties pro = new Properties();
|
||
pro.load(JDBCUtils.class.getClassLoader().getResourceAsStream("druid.properties"));
|
||
ds = DruidDataSourceFactory.createDataSource(pro);
|
||
} catch (Exception e) {
|
||
e.printStackTrace();
|
||
}
|
||
}
|
||
|
||
/**
|
||
* 获取连接
|
||
*/
|
||
public static Connection getConnection() throws SQLException {
|
||
return ds.getConnection();
|
||
}
|
||
|
||
/**
|
||
* 释放资源
|
||
*/
|
||
public static void close(Statement stmt, Connection conn) {
|
||
|
||
close(null, stmt, conn);
|
||
}
|
||
|
||
|
||
public static void close(ResultSet rs, Statement stmt, Connection conn) {
|
||
|
||
|
||
if (rs != null) {
|
||
try {
|
||
rs.close();
|
||
} catch (SQLException e) {
|
||
e.printStackTrace();
|
||
}
|
||
}
|
||
|
||
|
||
if (stmt != null) {
|
||
try {
|
||
stmt.close();
|
||
} catch (SQLException e) {
|
||
e.printStackTrace();
|
||
}
|
||
}
|
||
|
||
if (conn != null) {
|
||
try {
|
||
conn.close();
|
||
} catch (SQLException e) {
|
||
e.printStackTrace();
|
||
}
|
||
}
|
||
}
|
||
|
||
/**
|
||
* 获取连接池方法
|
||
*/
|
||
public static DataSource getDataSource() {
|
||
return ds;
|
||
}
|
||
|
||
public static void main(String[] args) {
|
||
|
||
try {
|
||
Class.forName("ru.yandex.clickhouse.ClickHouseDriver");// 驱动包
|
||
String url = "jdbc:clickhouse://192.168.44.85:8123/tsg_galaxy_v3";// url路径
|
||
String user = "tsg_insert";// 账号
|
||
String password = "galaxy2019";// 密码
|
||
Connection connection = DriverManager.getConnection(url, user, password);
|
||
|
||
|
||
StopWatch stopWatch = new StopWatch();
|
||
stopWatch.start();
|
||
System.err.println("开始写入ck数据 :{}");
|
||
|
||
connection.setAutoCommit(false);
|
||
|
||
PreparedStatement preparedStatement = null;
|
||
long time = DateUtil.currentSeconds();
|
||
time = time - 1;
|
||
// String sql = "INSERT INTO tsg_galaxy_v3.connection_record_log_local" +
|
||
// "(cap_ip,recv_ip,src_ip,dst_ip,src_port,dst_port,addr_type,protocol,fxo_id,link_status,dir_status,total_cs_pkts,total_sc_pkts,total_cs_bytes,total_sc_bytes,log_gen_time,aa,wv,yy,user_mask,conn_start_time,app_class,app_id,http_host,http_url,http_cookie,`http_user-agent`,http_method,http_accept,http_accept_encoding,http_referer,http_rescode,tls_sni,tls_cert,phone_num,imei,imsi) VALUES " +
|
||
// "('127.0.0.1', '192.168.44.12', 'aaa', 'String', 123456789, 123456789, 123456789, 123456789, 123456789, 123456789, 123456789, 123456789, 123456789, 123456789, 123456789, 1657526027, 123456789, 123456789, 123456789, 123456789, "+ time +", 123456789, 123456789, 'String', 'String', 'String', 'String', 'String', 'String', 'String', 'String', 123456789, 'String', 'String', 123456789, 123456789, 123456789);";
|
||
|
||
// String sql ="INSERT INTO tsg_galaxy_v3.session_record\n" +
|
||
// "(common_recv_time, common_log_id, common_stream_trace_id, common_direction, common_stream_dir, common_start_time, common_end_time, common_con_duration_ms, common_establish_latency_ms, common_processing_time, common_ingestion_time, common_entrance_id, common_device_id, common_egress_link_id, common_ingress_link_id, common_isp, common_data_center, common_sled_ip, common_device_group, common_app_behavior, common_action, common_sub_action, common_policy_id, common_user_tags, common_user_region, common_client_ip, common_internal_ip, common_client_port, common_client_location, common_client_asn, common_subscriber_id, common_imei, common_imsi, common_phone_number, common_server_ip, common_external_ip, common_server_port, common_server_location, common_server_asn, common_app_id, common_userdefine_app_name, common_app_identify_info, common_app_label, common_app_surrogate_id, common_l7_protocol, common_protocol_label, common_service_category, common_service, common_l4_protocol, common_sessions, common_c2s_pkt_num, common_s2c_pkt_num, common_c2s_pkt_diff, common_s2c_pkt_diff, common_c2s_byte_num, common_s2c_byte_num, common_c2s_byte_diff, common_s2c_byte_diff, common_c2s_ipfrag_num, common_s2c_ipfrag_num, common_c2s_tcp_lostlen, common_s2c_tcp_lostlen, common_c2s_tcp_unorder_num, common_s2c_tcp_unorder_num, common_c2s_pkt_retrans, common_s2c_pkt_retrans, common_c2s_byte_retrans, common_s2c_byte_retrans, common_first_ttl, common_tcp_client_isn, common_tcp_server_isn, common_mirrored_pkts, common_mirrored_bytes, common_address_type, common_schema_type, common_device_tag, common_encapsulation, common_tunnels, common_address_list, common_has_dup_traffic, common_stream_error, common_link_info_c2s, common_link_info_s2c, common_packet_capture_file, http_url, http_host, http_domain, http_request_line, http_response_line, http_request_header, http_response_header, http_request_content, http_response_content, http_request_body, http_response_body, http_request_body_key, http_response_body_key, http_proxy_flag, http_sequence, http_snapshot, http_cookie, http_referer, http_user_agent, http_request_content_length, http_request_content_type, http_response_content_length, http_response_content_type, http_content_length, http_content_type, http_set_cookie, http_version, http_response_latency_ms, http_session_duration_ms, http_action_file_size, mail_protocol_type, mail_account, mail_to_cmd, mail_from_cmd, mail_from, mail_to, mail_cc, mail_bcc, mail_subject, mail_subject_charset, mail_content, mail_content_charset, mail_attachment_name, mail_attachment_name_charset, mail_attachment_content, mail_eml_file, mail_snapshot, dns_message_id, dns_qr, dns_opcode, dns_aa, dns_tc, dns_rd, dns_ra, dns_rcode, dns_qdcount, dns_ancount, dns_nscount, dns_arcount, dns_qname, dns_qtype, dns_qclass, dns_cname, dns_sub, dns_rr, dns_response_latency_ms, ssl_version, ssl_sni, ssl_san, ssl_cn, ssl_pinningst, ssl_intercept_state, ssl_passthrough_reason, ssl_server_side_latency, ssl_client_side_latency, ssl_server_side_version, ssl_client_side_version, ssl_cert_verify, ssl_error, ssl_con_latency_ms, ssl_ja3_fingerprint, ssl_ja3_hash, ssl_cert_issuer, ssl_cert_subject, quic_version, quic_sni, quic_user_agent, ftp_account, ftp_url, ftp_content, ftp_link_type, bgp_type, bgp_as_num, bgp_route, voip_calling_account, voip_called_account, voip_calling_number, voip_called_number, streaming_media_url, streaming_media_protocol, app_extra_info, sip_call_id, sip_originator_description, sip_responder_description, sip_user_agent, sip_server, sip_originator_sdp_connect_ip, sip_originator_sdp_media_port, sip_originator_sdp_media_type, sip_originator_sdp_content, sip_responder_sdp_connect_ip, sip_responder_sdp_media_port, sip_responder_sdp_media_type, sip_responder_sdp_content, sip_duration_s, sip_bye, rtp_payload_type_c2s, rtp_payload_type_s2c, rtp_pcap_path, rtp_originator_dir, ssh_version, ssh_auth_success, ssh_client_version, ssh_server_version, ssh_cipher_alg, ssh_mac_alg, ssh_compression_alg, ssh_kex_alg, ssh_host_key_alg, ssh_host_key, ssh_hassh, stratum_cryptocurrency, stratum_mining_pools, stratum_mining_program, rdp_encryption_method, rdp_encryption_level, rdp_certificate_permanent, rdp_certificate_count, rdp_certificate_type, rdp_requested_color_depth, rdp_desktop_height, rdp_desktop_width, rdp_client_product_id, rdp_client_name, rdp_client_version, rdp_keyboard_layout, rdp_client_channels, rdp_security_protocol, rdp_cookie)\n" +
|
||
// "VALUES("+time+", 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', 0, 0, '', '', '', '', '', 0, '', 0, '', '', '', '', 0, '', '', '', '', '', '', '', '', 0, '', '', '', '', '', '', '', '', '', null, 0, '', 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', '', 0, '', '', 0, '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', 0, 0, '', '', '', '', '', '', '', '', '', '', '', '', 0, 0, 0, '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, '', 0, 0, '', 0, '', 0, '', '', '', '', 0, 0, '', 0, 0, '', '', 0, '', 0, '', '', '', '', '', '', '', '', '', '', '', 0, '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', 0, '', '', '', 0, '', '', 0, '', 0, 0, '', 0, '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', 0, 0, '', '', '', '', '', '', '', '', '', '', '');\n";
|
||
preparedStatement = connection.prepareStatement("INSERT INTO tsg_galaxy_v3.connection_relation_log" +
|
||
"(start_time, src_ip, dst_ip,bytes)" +
|
||
"VALUES(?, ?, ?, ?)");
|
||
for (int i = 0; i < 10; i++) {
|
||
preparedStatement.setLong(1, time);
|
||
preparedStatement.setString(2, "127.0.0.1");
|
||
preparedStatement.setString(3, "127.0.0.1");
|
||
BigInteger bytes = BigInteger.valueOf(Long.MAX_VALUE).add(BigInteger.valueOf(Long.MAX_VALUE));
|
||
System.err.println(bytes);
|
||
System.err.println(bytes.bitLength());
|
||
preparedStatement.setObject(4, bytes);
|
||
preparedStatement.addBatch();
|
||
}
|
||
preparedStatement.executeBatch();
|
||
connection.commit();
|
||
stopWatch.stop();
|
||
System.err.println("总共花费时间 {}" + stopWatch.getTime());
|
||
} catch (ClassNotFoundException e) {
|
||
e.printStackTrace();
|
||
} catch (SQLException throwables) {
|
||
throwables.printStackTrace();
|
||
}
|
||
|
||
|
||
}
|
||
|
||
} |