package com.nis.util; import java.util.Date; import java.util.HashMap; import java.util.Map; import com.google.gson.GsonBuilder; public final class Constants { /** * 报表去重连接符 */ public static final String REPORT_TRIM_CONNECTOR="_;_"; /** * 报表类型 */ public static final int REPORT_TYPE_HOUR=1; public static final int REPORT_TYPE_DAY=2; public static final int REPORT_TYPE_MONTH=3; /** * 配置审核下发的类型 maat类型 */ public static final int MAAT_TYPE=1; /** * 配置审核下发的类型 回调类型 */ public static final int CALLBACK_TYPE=2; /** * IP验证正则 */ public static final String IPV4_IP_SUBNET_REGEXP=Configurations.getStringProperty("ipv4_ip_subnet_regexp", "*"); public static final String IPV6_IP_SUBNET_REGEXP=Configurations.getStringProperty("ipv6_ip_subnet_regexp", "*"); public static final String IPV4_IP_RANGE_REGEXP=Configurations.getStringProperty("ipv4_ip_range_regexp", "*"); public static final String IPV6_IP_RANGE_REGEXP=Configurations.getStringProperty("ipv6_ip_range_regexp", "*"); public static final String IPV4_IP_REGEXP=Configurations.getStringProperty("ipv4_ip_regexp", "*"); public static final String IPV6_IP_REGEXP=Configurations.getStringProperty("ipv6_ip_regexp", "*"); /** * 用户自定义域,限速 */ public static final String USERREGION_RATE_LIMIT=Configurations.getStringProperty("userregion_rate_limit", "RATE_LIMIT"); /** * 用户自定义域,策略分组号 */ public static final String USERREGION_IR_STRATEGY=Configurations.getStringProperty("userregion_ir_strategy", "IR_STRATEGY"); /** * 用户自定义域,策略分组类型 */ public static final String USERREGION_IR_TYPE=Configurations.getStringProperty("userregion_ir_type", "IR_TYPE"); /** * 用户自定义域,域名ID */ public static final String USERREGION_DOMIAN_ID=Configurations.getStringProperty("userregion_domian_id", "DOMIAN_ID"); /** * 用户自定义域,域名 */ public static final String USERREGION_DOMIAN_STR=Configurations.getStringProperty("userregion_domian_str", "DOMIAN_STR"); /** * IP限速业务类型 */ public static final int SERVICE_IP_RATELIMIT = Configurations.getIntProperty("service_ip_ratelimit", 0x421); /** * 域名限速业务类型 */ public static final int SERVICE_DOMAIN_RATELIMIT = Configurations.getIntProperty("service_domain_ratelimit", 0x421); /** * IP复用业务类型 */ public static final int SERVICE_IP_MULITIPLEX = Configurations.getIntProperty("service_ip_mulitiplex", 768); /** * 域名拦截业务类型 */ public static final Integer SERVICE_PXY_DOMAIN_INTERCEPT = Configurations.getIntProperty("service_pxy_domain_intercept",0x201); /** * 当前时区 */ public static final int TIME_ZONE = Configurations.getIntProperty("time_zone", 8); /** * 区域GK类型 */ public static final int AREA_EFFECTIVE_TYPE_AREA_ISP = 1; public static final int AREA_EFFECTIVE_TYPE_AREA_IP = 0; /** * 是否区域GK */ public static final int IS_AREA_EFFECTIVE_YES = 1; public static final int IS_AREA_EFFECTIVE_NO = 0; /** * 字典表地域运营商 */ public static final int ITEM_TYPE_AREA = 1; public static final int ITEM_TYPE_ISP = 2; /** * action值 */ public static final int ACTION_DF = 1; public static final int ACTION_DJ = 2; public static final int ACTION_BMD = 5; public static final int ACTION_HMD = 8; public static final Integer DROP_ACTION = Configurations.getIntProperty("drop_action",32); public static final Integer LOOP_ACTION = Configurations.getIntProperty("loop_action",96); public static final int CFG_PAGE = 0; public static final int AUDIT_PAGE = 1; public static final String DEFAULT_CAPTCHA_PARAM = "captcha"; public static final String DEFAULT_MOBILE_PARAM = "mobileLogin"; public static final String DEFAULT_MESSAGE_PARAM = "message"; /** * 表类型 */ public static final int TABLE_TYPE_IP = 1; public static final int TABLE_TYPE_STRING = 2; public static final int TABLE_TYPE_NUMBER = 3; public static final int TABLE_TYPE_COMPLEX = 4; /** * 词典数据key */ public static final String CACHE_DICT_MAP = "dictMap"; /** * 特征域字典key */ public static final String CACHE_FEATURES_DICT_MAP = "featuresDictMap"; /** * 功能业务字典key */ public static final String CACHE_FUNCTION_SERVICE_DICT = "functionServiceDict"; /** * 功能配置域字典key */ public static final String CACHE_FUNCTION_REGION_DICT = "functionRegionDict"; /** * 词典数据分类 */ public static final int ITEM_TYPE_FL = 1; /** * 词典数据性质 */ public static final int ITEM_TYPE_XZ = 2; /** * 词典数据标签 */ public static final int ITEM_TYPE_LABEL = 3; /** * 配置有效标志,有效 */ public static final int VALID_YES=1; /** * 配置有效标志,无效 */ public static final int VALID_NO=0; /** * 配置有效标志,删除 */ public static final int VALID_DEL=-1; /** * 配置审核,未审核 */ public static final int AUDIT_NOT_YET=0; /** * 配置审核,审核通过 */ public static final int AUDIT_YES=1; /** * 配置审核,审核未通过 */ public static final int AUDIT_NO=2; /** * 配置审核,取消审核通过 */ public static final int AUDIT_NOT_YES=3; /** * 上传文件基础虚拟路径 */ public static final String USERFILES_BASE_URL = "/userfiles/"; public static final String HASH_ALGORITHM = "SHA-1"; public static final int HASH_INTERATIONS = 1024; public static final int SALT_SIZE = 8; public static final int LOG_ACCESS_SUCCESS = 1; public static final int LOG_ACCESS_EXCEPTION = 0; /** * 默认未知方法(未添加词典或未识别)操作类型值为:unknown(8000) */ public static final int DEFAULT_METHOD_TYPE = 8000; public static final String SYS_BUSINESS_MENU_NAME = "信访管理"; public static final String LABEL_DEFAULT = "label"; public static final String LABEL_SUCCESS = "label label-success"; public static final String LABEL_WARNING = "label label-warning"; public static final String LABEL_IMPORTANT = "label label-important"; public static final String LABEL_INFO = "label label-info"; public static final String LABEL_INVERSE = "label label-inverse"; /** * 生效系统 */ public static final String ACTIVESYS_A = "4"; public static final String ACTIVESYS_B = "2"; public static final String ACTIVESYS_C = "1"; public static final String ACTIVESYS_ALL = "7"; //A+B版 public static final String ACTIVESYS_AB = "6"; /** * 数据库操作 */ public static final String INSERT = "I"; public static final String UPDATE = "U"; public static final String DELETE = "D"; /** * 接口的操作行为opAction */ public static final int OPACTION_POST = 1; public static final int OPACTION_PUT = 2; public static final int OPACTION_DELETE = 3; public static final int OPACTION_GET = 4; /** * 是/否 */ public static final String YES = "1"; public static final String NO = "0"; /** * 每页最大显示数 */ public static final int MAX_PAGE_SIZE = Configurations.getIntProperty("maxPageSize", 100000); /** * 每次最大导出条数 */ public static final int MAX_EXPORT_SIZE = Configurations.getIntProperty("maxExportSize", 100000); /** * 对/错 */ public static final String TRUE = "true"; public static final String FALSE = "false"; /** * 服务器ip */ public static String SERVCER_HOST = null; /** * oracle redis数据 存储时间 */ public static final int ORACLE_EXPIRE = Configurations.getIntProperty("oracleExpire", 180); /** * hive redis数据 存储时间 */ public static final int HIVE_EXPIRE = Configurations.getIntProperty("hiveExpire", 180); /** * redis开关 */ public static final boolean IS_OPEN_REDIS = Configurations.getBooleanProperty("isOpenRedis", false); /** * es开关 */ public static final boolean IS_USE_ES = Configurations.getBooleanProperty("isUseES", false); /** * 数据中心日志redis开关 */ public static final boolean DATACENTER_OPEN_REDIS = Configurations.getBooleanProperty("dataCenterOpenRedis", false); /** * 是否使用use soq_log命令 */ // public static final boolean IS_USE_HIVE_DB = // Configurations.getBooleanProperty("isUseHiveDb", true); /** * 是否获取数据中心查询记录的总条数 */ public static final boolean IS_GET_HIVECOUNT = Configurations.getBooleanProperty("isGetHiveCount", true); /** * 是否获取数据中心[神通]查询记录的总条数 */ public static final boolean IS_SELECT_CLUSTER = Configurations.getBooleanProperty("isSelectCluster", false); /** * 神通数据库A的数据最早时间 */ public static final Long CLUSTER_A_START_TIME = Configurations.getLongProperty("clusterAStartTime", new Date().getTime()); /** * 神通数据库B的数据最早时间 */ public static final Long CLUSTER_B_START_TIME = Configurations.getLongProperty("clusterBStartTime", new Date().getTime()); /** * 每次获取数据中心多少条数据,咱们在对获取的数据进行分页处理 */ public static final Long EVERY_GETHIVEDATANUM = Configurations.getLongProperty("everyGetHiveDataNum", 10000); /** * 是否开启基础校验 */ public static final boolean BASE_VALIDATE = Configurations.getBooleanProperty("baseValidate", true); public static final Long DATACENTER_TIME = Configurations.getLongProperty("dataCenterTime", 48); /** * 是否开启业务校验 */ public static final boolean SERVICE_VALIDATE = Configurations.getBooleanProperty("serviceValidate", true); /** * 日志本地存储时间 */ public static final Long LOG_LOCAL_TIME = Configurations.getLongProperty("logLocalTime", 48); /** * 实时统计默认时间 */ public static final Long REPORT_LOCAL_TIME = Configurations.getLongProperty("reportLocalTime", 1); /** * 日志是否从hive中查询 */ public static final boolean SEL_FROM_HIVE = Configurations.getBooleanProperty("selFromHive", true); public static final boolean ONLY_SEL_FROM_HIVE = Configurations.getBooleanProperty("onlySelFromHive", true); /** * 跨域问题解决,允许跨域的url */ public static final String TARGET_URL = Configurations.getStringProperty("target_url", "*"); public static final String ACCESS_CONTROL_MAX_AGE = Configurations.getStringProperty("ACCESS_CONTROL_MAX_AGE", "3600"); /** * elasticsearch 检索相关 */ public static final String SEARCH_DATEFORMAT = Configurations.getStringProperty("search.dateformat", "yyyy-MM-dd HH:mm:ss"); public static final String SEARCH_ES_HOSTANDPORT_A = Configurations.getStringProperty("search.eshostandport_A", null); public static final String SEARCH_ES_HOSTANDPORT_B = Configurations.getStringProperty("search.eshostandport_B", null); public static final String SEARCH_ES_HOSTANDPORT_C = Configurations.getStringProperty("search.eshostandport_C", null); /** * 数据中心A版数据库名称,程序中每次查询时使用的数据库名称 use HIVEADBNAME */ public static final String HIVEADBNAME = Configurations.getStringProperty("jdbc.hive.AName", "xa_dfbhit_hive"); /** * 数据中心B版数据库名称,程序中每次查询时使用的数据库名称 use HIVEBDBNAME */ public static final String HIVEBDBNAME = Configurations.getStringProperty("jdbc.hive.BName", "xa_z2_mesalog_hive"); public static final GsonBuilder gsonbuilder=new GsonBuilder(); //综合服务接口URL public static final String SERVICE_URL = Configurations.getStringProperty("httpUrl",""); public static final String MAAT_CFG= Configurations.getStringProperty("maatCfg","configSources"); public static final String CALLBACK_CFG = Configurations.getStringProperty("callbackCfg","commonSources"); public static final String FILE_UPLOAD_CFG = Configurations.getStringProperty("fileUploadCfg","fileUploadSources"); public static final String FILE_DIGEST_CFG=Configurations.getStringProperty("fileDigestCfg","fileDigestSources"); public static final String CONFIG_ID_SOURCES=Configurations.getStringProperty("configIdSources","configPzIdSources"); //日志查询接口URL public static final String LOG_BASE_URL = Configurations.getStringProperty("logBaseUrl",""); public static final String NTC_SERVICE_REPORT=Configurations.getStringProperty("ntcServiceReport","ntcServiceReport"); public static final String NTC_TAG_REPORT=Configurations.getStringProperty("ntcTagReport","ntcTagReport"); public static final String NTC_PZ_REPORT=Configurations.getStringProperty("ntcPzReport","ntcPzReport"); public static final String NTC_IP_LOG = Configurations.getStringProperty("ntcIpLog",""); public static final String NTC_HTTP_LOG = Configurations.getStringProperty("ntcHttpLog",""); public static final String NTC_DNS_LOG = Configurations.getStringProperty("ntcDnsLog",""); public static final String NTC_SSL_LOG = Configurations.getStringProperty("ntcSslLog",""); public static final String NTC_PPTP_LOG = Configurations.getStringProperty("ntcPptpLog",""); public static final String NTC_L2TP_LOG = Configurations.getStringProperty("ntcL2tpLog",""); public static final String NTC_OPENVPN_LOG = Configurations.getStringProperty("ntcOpenvpnLog",""); public static final String NTC_IPSEC_LOG = Configurations.getStringProperty("ntcIpsecLog",""); public static final String NTC_SSH_LOG = Configurations.getStringProperty("ntcSshLog",""); public static final String NTC_MAIL_LOG = Configurations.getStringProperty("ntcMailLog",""); public static final String NTC_FTP_LOG = Configurations.getStringProperty("ntcFtpLog",""); //报表类型,1- 配置命中总量业务 public static final Integer BUSINESSTYPE_CONFIG=Configurations.getIntProperty("businesstype_config", 1); //报表类型,2- 配置报表业务 public static final Integer BUSINESSTYPE_REPORT=Configurations.getIntProperty("businesstype_report", 2); //默认日志查询时长(ms) public static final Integer LOG_TIME_RANGE = Configurations.getIntProperty("log_time_range", 300000); /**请求头参数*/ public static final Map REQUEST_HEADER = new HashMap(); public static final Integer CLIENT_CONNECT_TIMEOUT = Configurations.getIntProperty("client_connect_timeout",1000); public static final Integer CLIENT_READ_TIMEOUT = Configurations.getIntProperty("client_read_timeout",1000); public static final Integer CLIENT_SOCKET_TIMEOUT = Configurations.getIntProperty("client_socket_timeout",1000); public static final String AREA_REGION = Configurations.getStringProperty("area_region","area_ip"); public static final String HTTP_IP_REGION = Configurations.getStringProperty("http_ip_region","http_ip"); public static final String HTTP_REQ_HEAD_REGION = Configurations.getStringProperty("http_req_hdr_region","http_req_hdr"); public static final String HTTP_REQ_BODY_REGION = Configurations.getStringProperty("http_req_body_region","http_req_body"); public static final String HTTP_RES_HEAD_REGION = Configurations.getStringProperty("http_res_hdr_region","http_res_hdr"); public static final String HTTP_RES_BODY_REGION = Configurations.getStringProperty("http_res_body_region","http_res_body"); public static final String HTTP_URL_REGION = Configurations.getStringProperty("http_url_region","http_url"); public static final String VOIP_IP_REGION = Configurations.getStringProperty("voip_ip","av_voip_ip"); public static final String VOIP_ACCOUNT_REGION = Configurations.getStringProperty("voip_account","av_voip_account"); public static final String MAAT_VERSION = Configurations.getStringProperty("maat_version","1.0"); public static final Integer INSERT_ACTION = Configurations.getIntProperty("insert_action",1); public static final Integer UPDATE_ACTION = Configurations.getIntProperty("update_action",2); public static final Integer DELETE_ACTION = Configurations.getIntProperty("delete_action",3); public static final String SSL_IP_REGION = Configurations.getStringProperty("ssl_ip_region","ssl_ip"); public static final String SSL_SNI_REGION = Configurations.getStringProperty("ssl_sni_region","ssl_sni"); public static final String SSL_SAN_REGION = Configurations.getStringProperty("ssl_san_region","ssl_san"); public static final String SSL_CA_REGION = Configurations.getStringProperty("ssl_ca_region","ssl_ca"); public static final String PROTOCOL_NUM_REGION = Configurations.getStringProperty("protocol_num_region","protocol_num"); public static final String BGP_IP_REGION = Configurations.getStringProperty("bgp_ip_region","bgp_ip"); public static final String KEYWORD_EXPR = Configurations.getStringProperty("keyword_expr","***and***"); //用户自定义域分隔符 public static final String USER_REGION_SPLIT = Configurations.getStringProperty("user_region_split", ";"); //用户自定义域占位符 public static final String USER_REGION_PLACEHOLDER = Configurations.getStringProperty("user_region_placeholder", ";;"); //HTTP REPLACE USER_REGION ZONE KEY public static final String REPLACE_TYPE_KEY = Configurations.getStringProperty("userregion_replace_type_key", "zone"); //HTTP REPLACE USER_REGION ZONE REQ KEY VALUE public static final String REPLACE_REQ_KEY_VALUE = Configurations.getStringProperty("userregion_replace_req_key_value", "http_req_replace_body"); //HTTP REPLACE USER_REGION ZONE RES KEY VALUE public static final String REPLACE_RES_KEY_VALUE = Configurations.getStringProperty("userregion_replace_res_key_value", "http_res_replace_body"); //HTTP REPLACE USER_REGION REGEX KEY public static final String REPLACE_REGEX_KEY = Configurations.getStringProperty("userregion_replace_regex_key", "regex"); //HTTP重定向配置域 public static final String HTTP_REDIRECT_URL_REGION = Configurations.getStringProperty("http_redirect_url_region","PXY_CTRL_HTTP_URL"); public static final String HTTP_REDIRECT_REQ_HEAD_REGION = Configurations.getStringProperty("http_redirect_req_hdr_region","PXY_CTRL_HTTP_REQ_HDR"); public static final String HTTP_REDIRECT_RES_HEAD_REGION = Configurations.getStringProperty("http_redirect_res_hdr_region","PXY_CTRL_HTTP_RES_HDR"); public static final String HTTP_REDIRECT_REQ_BODY_REGION = Configurations.getStringProperty("http_redirect_req_body_region","PXY_CTRL_HTTP_REQ_BODY"); public static final String HTTP_REDIRECT_RES_BODY_REGION = Configurations.getStringProperty("http_redirect_res_body_region","PXY_CTRL_HTTP_RES_BODY"); public static final String REDIRECT_RESPONSE_CODE_KEY = Configurations.getStringProperty("redirect_response_code_key","code"); public static final String REDIRECT_URL_KEY = Configurations.getStringProperty("redirect_url_key","url"); public static final String REDIRECT_CONTENT_KEY = Configurations.getStringProperty("redirect_content_key","content"); public static final String REDIRECT_RESPONSE_CODE_STARTWITH = Configurations.getStringProperty("redirect_response_code_startwith","30"); public static final String SAMPLE_UPLOAD_URL_KEYWORD = Configurations.getStringProperty("sample_upload_url_keyword","av"); public static final String DIGEST_UPLOAD_URL_KEYWORD = Configurations.getStringProperty("digest_upload_url_keyword","fileTransfer"); public static final String SAMPLE_FILE_TYPE = Configurations.getStringProperty("sample_file_type",""); public static final long SAMPLE_SINGLE_FILE_MAX_SIZE = Configurations.getLongProperty("sample_single_file_max_size",10485760l);//10M public static final long SAMPLE_TOTAL_FILE_MAX_SIZE = Configurations.getLongProperty("sample_total_file_max_size",52428800l);//50M public static final String DIGEST_FILE_TYPE = Configurations.getStringProperty("digest_file_type",""); public static final long DIGEST_SINGLE_FILE_MAX_SIZE = Configurations.getLongProperty("digest_single_file_max_size",10485760l);//10M public static final long DIGEST_TOTAL_FILE_MAX_SIZE = Configurations.getLongProperty("digest_total_file_max_size",52428800l);//50M //YSP文件特征配置相关参数,用于调用外部程序生成特征文件时使用 public static final String AV_FILE_PATH = Configurations.getStringProperty("av_file_path", "/home/ysp/"); public static final String AV_SAMPLE_AUDIO_REGION = Configurations.getStringProperty("av_sample_audio_region", "av_sample_audio"); public static final String AV_SAMPLE_VEDIO_REGION = Configurations.getStringProperty("av_sample_vedio_region", "av_sample_vedio"); public static final String AV_SAMPLE_PITURE_REGION = Configurations.getStringProperty("av_sample_pitrue_region", "av_sample_pitrue"); public static final String AV_SAMPLE_VOIP_REGION = Configurations.getStringProperty("av_sample_voip_region", "av_sample_voip"); public static final String AUDIO_SAMPLE_CREATE_PROC = Configurations.getStringProperty("audio_sample_create_proc", "./audio_convert_proc"); public static final String VEDIO_SAMPLE_CREATE_PROC = Configurations.getStringProperty("vedio_sample_create_proc", "./vedio_convert_proc"); public static final String PICTURE_SAMPLE_CREATE_PROC = Configurations.getStringProperty("picture_sample_create_proc", "./picture_convert_proc"); //HTTP自定义域相关参数 public static String HTTP_HEADER_USER_REGION_KEY=Configurations.getStringProperty("http_header_user_region_key", "HTTP_HEADER"); public static String HTTP_HEADER_DICT_MODULE=Configurations.getStringProperty("http_header_dict_module", "REQUEST_HEADER_DISTRICT"); //DNS自定义域参数 public static String DNS_STRATEGY_USER_REGION_KEY=Configurations.getStringProperty("dns_strategy_user_region_key", "DNS_STRATEGY"); }