20 Commits

Author SHA1 Message Date
duandongmei
4b7bde7084 国内部署版本区域运营商换成国内的;
去掉系统中的限速动作
2019-10-21 10:11:15 +08:00
shangguan
b96cde52d8 日志检索-APP协议页面-修改监测动作,列表展示为数字的BUG 2019-10-16 10:42:46 +08:00
duandongmei
3b943be13b IP Spoofing和IP Payload新增隐藏log opation 2019-09-09 11:23:23 +08:00
zhangwenqing
4c2980669d 修正 IpPayload配置下载导入模板时异常
Conflicts:
	src/main/java/com/nis/util/excel/ExportExcel.java
2019-08-26 09:52:33 +08:00
zhangwenqing
2b4a09ea2a 修正FTP配置批量删除功能 2019-08-26 09:50:52 +08:00
shangguan
6855909f00 表结构sql文件中-协议字典表(code_protocol_type_dic)中增加HTTP协议字典数据 2019-08-14 16:24:26 +08:00
shangguan
75b880ede5 表结构sql文件中-表ip_reuse_policy_cfg中src_ip_pattern字段改为ip_pattern,去掉dest_ip_pattern字段 2019-08-14 10:40:12 +08:00
duandongmei
d5ebc0ff04 IPSpoofing调整权限标识 2019-07-12 15:14:31 +08:00
duandongmei
bba21287df 清空定时任务旧数据 2019-07-12 11:28:05 +08:00
duandongmei
0ee38c42d4 去掉APP相关监测动作必须绑定IP的校验 2019-07-12 10:35:20 +08:00
duandongmei
5280741d26 general分支增加其他攻击菜单及其国际化 2019-07-12 09:54:28 +08:00
shangguanyanfei
f3e726e0c1 首页的统计页面和日志检索模块下面的所有页面 去掉地域和运营商的查询条件 2019-07-11 17:58:22 +08:00
shangguanyanfei
66052be81d nis文件中 ceiec 目录都替换为mesasoft 2019-07-10 18:18:52 +08:00
段冬梅
011533528e general分支清理数据sql增加自增id的初始化;
ntc_db初始化app_topic_domain_cfg配置,配置Id从1开始
2019-07-09 13:36:04 +08:00
shangguanyanfei
47b9fdbaae 首页的图表展示 数据源修改 2019-07-09 10:12:21 +08:00
shangguanyanfei
406a5d83cd 流量日志菜单下新增 文件扫描菜单 2019-07-04 18:35:14 +08:00
duandongmei
ca84326442 NTC通用版本提交:修改数据库sql,修改log 2019-07-03 14:28:19 +08:00
段冬梅
fd20c50d1b 通用sql 2019-07-03 12:47:54 +08:00
段冬梅
382c6e48c4 Update README.md 2019-07-03 11:19:14 +08:00
duandongmei
de1eb563a3 时间间隔默认5分钟,日志导出最大条数修改为2万 2019-06-03 17:07:53 +08:00
66 changed files with 7099 additions and 360 deletions

View File

@@ -1,3 +1 @@
610功能升级
系统需要支持对 生效中的配置 进行修改的功能;
统计的时间修改为一个月,性能是否可以;
NTC通用分支

View File

@@ -0,0 +1,160 @@
package com.nis.domain.log;
import com.nis.util.excel.ExcelField;
/**
*
*文件离线扫描结果 实体类
*
*/
public class NtcHttpObjScanResultLog extends BaseLogEntity<NtcHttpObjScanResultLog> {
private static final long serialVersionUID = -7697668215327123848L;
@ExcelField(title = "URL", sort = 8)
private String url;
@ExcelField(title = "req_hdr_key", sort = 9)
private String reqHdrKey;// 请求头转储文件key
@ExcelField(title = "req_hdr_file", sort = 10)
private String reqHdrFile;
@ExcelField(title = "req_body_key", sort = 11)
private String reqBodyKey;// 请求体转储文件key
@ExcelField(title = "req_body_file", sort = 12)
private String reqBodyFile;
@ExcelField(title = "res_hdr_key", sort = 13)
private String resHdrKey;// 应答头转储文件key
@ExcelField(title = "res_hdr_file", sort = 14)
private String resHdrFile;
@ExcelField(title = "res_body_key", sort = 15)
private String resBodyKey;// 应答体转储文件key
@ExcelField(title = "res_body_file", sort = 16)
private String resBodyFile;
@ExcelField(title = "topic_name", sort = 16)
private String topicName;//原始消息所属的topic
@ExcelField(title = "malware_id", sort = 16)
private Integer malwareId;//恶意文件命中病毒ID
@ExcelField(title = "malware_type", sort = 16)
private String malwareType;//恶意病毒类型
@ExcelField(title = "malware_name", sort = 16)
private String malwareName;//恶意病毒名称
public String getReqHdrFile() {
return reqHdrFile;
}
public void setReqHdrFile(String reqHdrFile) {
this.reqHdrFile = reqHdrFile;
}
public String getReqBodyFile() {
return reqBodyFile;
}
public void setReqBodyFile(String reqBodyFile) {
this.reqBodyFile = reqBodyFile;
}
public String getResHdrFile() {
return resHdrFile;
}
public void setResHdrFile(String resHdrFile) {
this.resHdrFile = resHdrFile;
}
public String getResBodyFile() {
return resBodyFile;
}
public void setResBodyFile(String resBodyFile) {
this.resBodyFile = resBodyFile;
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
public String getReqHdrKey() {
return reqHdrKey;
}
public void setReqHdrKey(String reqHdrKey) {
this.reqHdrKey = reqHdrKey;
}
public String getReqBodyKey() {
return reqBodyKey;
}
public void setReqBodyKey(String reqBodyKey) {
this.reqBodyKey = reqBodyKey;
}
public String getResHdrKey() {
return resHdrKey;
}
public void setResHdrKey(String resHdrKey) {
this.resHdrKey = resHdrKey;
}
public String getResBodyKey() {
return resBodyKey;
}
public void setResBodyKey(String resBodyKey) {
this.resBodyKey = resBodyKey;
}
public String getTopicName() {
return topicName;
}
public void setTopicName(String topicName) {
this.topicName = topicName;
}
public Integer getMalwareId() {
return malwareId;
}
public void setMalwareId(Integer malwareId) {
this.malwareId = malwareId;
}
public String getMalwareType() {
return malwareType;
}
public void setMalwareType(String malwareType) {
this.malwareType = malwareType;
}
public String getMalwareName() {
return malwareName;
}
public void setMalwareName(String malwareName) {
this.malwareName = malwareName;
}
}

View File

@@ -795,4 +795,9 @@ public final class Constants {
* 管理员用户预警查询服务配置总量接口
*/
public static final String CONFIG_BY_SERVICE = Configurations.getStringProperty("getConfigByService","");
/**
* 文件扫描结果接口
*/
public static final String NTC_HTTP_OBJSCAN_RESULT_LOGS = Configurations.getStringProperty("ntcHttpObjscanResultLogs","");
}

View File

@@ -295,7 +295,7 @@ public class ExportExcel {
}
}
/*** HTTP(s)替换 搜索区域 ***/
if(("replace_zone".equals(headerStr)) && (region.getFunctionId().equals(209))){
if(("replace_zone".equals(headerStr)) && (region.getFunctionId().equals(209) || "80".equals(region.getAction()+""))){
commentStr="";
List<SysDataDictionaryItem> dict=DictUtils.getDictList("CONTROL_REPLACE_ZONE");
if(dict !=null && dict.size()>0){

View File

@@ -0,0 +1,175 @@
package com.nis.web.controller.log.ntc;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.lang.StringEscapeUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.mvc.support.RedirectAttributes;
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.gson.reflect.TypeToken;
import com.nis.domain.FunctionServiceDict;
import com.nis.domain.Page;
import com.nis.domain.PageLog;
import com.nis.domain.SysUser;
import com.nis.domain.log.NtcHttpObjScanResultLog;
import com.nis.domain.maat.LogRecvData;
import com.nis.util.Constants;
import com.nis.util.DictUtils;
import com.nis.util.LogUtils;
import com.nis.util.httpclient.HttpClientUtil;
import com.nis.web.controller.BaseController;
import com.nis.web.security.UserUtils;
@Controller
@RequestMapping("${adminPath}/log/ntc/httpObjScanResult")
public class HttpObjScanResultLogController extends BaseController {
@RequestMapping(value = { "list", "" })
public String list(@ModelAttribute("log") NtcHttpObjScanResultLog log, Model model, HttpServletRequest request,
HttpServletResponse response) {
try {
PageLog<NtcHttpObjScanResultLog> page = new PageLog<NtcHttpObjScanResultLog>(request, response);
Map<String, Object> params = new HashMap<String, Object>();
params.put("pageSize", page.getPageSize());
params.put("pageNo", page.getPageNo());
if (StringUtils.isNotBlank(log.getUrl())) {
String httpurl = StringEscapeUtils.unescapeHtml(log.getUrl());
params.put("searchUrl", httpurl);
}
initLogSearchValue(log, params);
if (StringUtils.isNotBlank(log.getdPort())) {
params.put("searchDPort", log.getdPort());
}
if (StringUtils.isNotBlank(log.getsPort())) {
params.put("searchSPort", log.getsPort());
}
if (null != log.getDeviceId()) {
params.put("searchDeviceId", log.getDeviceId());
}
List<FunctionServiceDict> serviceList = DictUtils.getFunctionServiceDictList(log.getFunctionId());
model.addAttribute("serviceList", serviceList);
String url = Constants.LOG_BASE_URL + Constants.NTC_HTTP_OBJSCAN_RESULT_LOGS;
String recv = HttpClientUtil.getMsg(url, params, request);
Gson gson = new GsonBuilder().create();
LogRecvData<NtcHttpObjScanResultLog> fromJson = gson.fromJson(recv,
new TypeToken<LogRecvData<NtcHttpObjScanResultLog>>() {
}.getType());
if (fromJson.getStatus().intValue() == 200) {
Page<NtcHttpObjScanResultLog> data = fromJson.getData();
page.setCount(data.getCount());
page.setLast(data.getLast());
page.setList(data.getList());
List<NtcHttpObjScanResultLog> list = page.getList();
for (NtcHttpObjScanResultLog l : list) {
l.setFunctionId(log.getFunctionId());
setLogAction(l, serviceList);
}
model.addAttribute("page", page);
}
} catch (Exception e) {
logger.error("查询失败", e);
addMessageLog(model, e.getMessage());
LogUtils.saveLog(request, null, e, null);
}
return "/log/ntc/httpObjScanResultList";
}
// 文件离线扫描结果 导出
@RequestMapping(value = "exportHttpObjScanResult")
public void exportHttpObjScanResult(@ModelAttribute("log") NtcHttpObjScanResultLog log, Model model, String hColumns, String type,
HttpServletRequest request, HttpServletResponse response, RedirectAttributes redirectAttributes) {
try {
// export data info
List<String> titleList = new ArrayList<String>();
Map<String, Class<?>> classMap = new HashMap<String, Class<?>>();
Map<String, List> dataMap = new HashMap<String, List>();
Map<String, String> noExportMap = new HashMap<String, String>();
// ---------------------------
PageLog<NtcHttpObjScanResultLog> page = new PageLog<NtcHttpObjScanResultLog>(request, response);
page.setPageNo(1);
page.setPageSize(Constants.MAX_LOG_EXPORT_SIZE);
Map<String, Object> params = new HashMap<String, Object>();
params.put("pageSize", page.getPageSize());
params.put("pageNo", page.getPageNo());
if (StringUtils.isNotBlank(log.getUrl())) {
String httpurl = StringEscapeUtils.unescapeHtml(log.getUrl());
params.put("searchUrl", httpurl);
}
initLogSearchValue(log, params);
if (StringUtils.isNotBlank(log.getdPort())) {
params.put("searchDport", log.getdPort());
}
if (StringUtils.isNotBlank(log.getsPort())) {
params.put("searchSport", log.getsPort());
}
if (null != log.getDeviceId()) {
params.put("searchDeviceId", log.getDeviceId());
}
List<FunctionServiceDict> serviceList = DictUtils.getFunctionServiceDictList(log.getFunctionId());
model.addAttribute("serviceList", serviceList);
String url = Constants.LOG_BASE_URL + Constants.NTC_HTTP_OBJSCAN_RESULT_LOGS;
String recv = HttpClientUtil.getMsg(url, params, request);
List<NtcHttpObjScanResultLog> list = new ArrayList<NtcHttpObjScanResultLog>();
if (StringUtils.isNotBlank(recv)) {
Gson gson = new GsonBuilder().create();
LogRecvData<NtcHttpObjScanResultLog> fromJson = gson.fromJson(recv,
new TypeToken<LogRecvData<NtcHttpObjScanResultLog>>() {
}.getType());
if (fromJson.getStatus().intValue() == 200) {
Page<NtcHttpObjScanResultLog> data = fromJson.getData();
list = data.getList();
}
}
for (NtcHttpObjScanResultLog l : list) {
l.setFunctionId(log.getFunctionId());
setLogAction(l, serviceList);
}
titleList.add("http_obj_scan_result");
classMap.put("http_obj_scan_result", NtcHttpObjScanResultLog.class);
SysUser user = UserUtils.getUser();
if (!user.isAdmin()) {
hColumns += ",scene_file,";
} else {
hColumns += ",";
}
String cfgIndexInfoNoExport = ",action,cfg_id,"
+ hColumns;
noExportMap.put("http_obj_scan_result", cfgIndexInfoNoExport);
dataMap.put("http_obj_scan_result", list);
String timeRange = initLogMap(log, "http_obj_scan_result");
noExportMap.put("timeRange", timeRange);
if ("csv".equals(type)) {
this._exportCsv(model, request, response, redirectAttributes, "http_obj_scan_result", titleList, classMap,
dataMap, noExportMap);
} else {
this._export(model, request, response, redirectAttributes, "http_obj_scan_result", titleList, classMap, dataMap,
noExportMap);
}
} catch (Exception e) {
logger.error("http_obj_scan_result export failed", e);
addMessage(redirectAttributes, "error", "export_failed");
LogUtils.saveLog(request, null, e, null);
}
}
}

View File

@@ -97,7 +97,7 @@ public class MailRecordLogController extends BaseController {
@RequestMapping(value = "exportMail")
public void exportMail(@ModelAttribute("log") NtcMailLog log, Model model, String hColumns, String type,
HttpServletRequest request, HttpServletResponse response, RedirectAttributes redirectAttributes) {
System.out.println("进来了Mail泛收");
// System.out.println("进来了Mail泛收");
try {
// export data info
List<String> titleList = new ArrayList<String>();

View File

@@ -226,12 +226,6 @@
<if test="action != null">
AND a.ACTION=#{action,jdbcType=INTEGER}
</if>
<if test="isValid != null">
AND a.IS_VALID=#{isValid,jdbcType=INTEGER}
</if>
<if test="isValid == null">
AND a.IS_VALID != -1
</if>
<choose>
<!-- 判断是否批量操作 -->
<when test="batchValidValue != null and batchValidValue != ''">

View File

@@ -699,7 +699,7 @@ group_name=Group Name
default_group=Default Group
policy_group_manage=Policy Group
ip_Reuse_policy=IP Reuse Policy
target_ip_protect=Anti DDOS
target_ip_protect=Anti DDoS
ratelimit_config=Rate Limit
ip_ratelimit=IP Rate Limit
domain_ratelimit=Website Rate Limit
@@ -1528,3 +1528,11 @@ range_cross=Found intersections between Server IP address and Client IP address
app_ip_correlation=APP IP Correlation
public_private_file_error=Public-private key mismatch
https_url_format_tip=URL(http[s]://xxx.xx)
http_obj_scan_result=File Scan
topic_name=TOPIC NAME
malware_id=MALWARE ID
malware_type=MALWARE TYPE
malware_name=MALWARE NAME
ddos_log=Attacks
other_system_ddos_log_menu=Attack Chain
other_system_ddos_report_menu=Attack Posture

View File

@@ -547,7 +547,7 @@ ftp_ip=\u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f
dns_ip=\u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f DNS IP
dns_domain=\u041a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u0434\u043e\u043c\u0435\u043d\u0430 DNS
action=\u0414\u0435\u0439\u0441\u0442\u0432\u0438\u0435
has_prohibit_delete= только удаляет незаконченные настройки и отменяет проверку конфигурации
has_prohibit_delete=\u807d\u890c\u82af\u8c22\u891c\u6cfb\u82af \u890d\u5199\u90aa\u8c22\u891f\u68b0\u890c \u85aa\u68b0\u87f9\u90aa\u6cfb\u82af\u85aa\u8914\u68b0\u85aa\u85aa\u8918\u68b0 \u85aa\u90aa\u890b\u890c\u8909\u82af\u6cc4\u6cfb\u61c8 \u61c8 \u82af\u890c\u5c51\u68b0\u85aa\u891f\u68b0\u890c \u950c\u8909\u82af\u80c1\u68b0\u8909\u6cfb\u890d \u6cfb\u82af\u85aa\u890e\u61c8\u8c10\u890d\u8909\u90aa\u8911\u61c8\u61c8
has_prohibit_nopass=\u0422\u043e\u043b\u044c\u043a\u043e \u043d\u0435\u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u043d\u0430\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0430
has_prohibit_pass=\u0422\u043e\u043b\u044c\u043a\u043e \u043d\u0435\u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u043d\u0430\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0430
multiple_keywords_tip=\u041c\u043e\u0436\u043d\u043e \u0432\u0432\u0435\u0441\u0442\u0438 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043a\u043b\u044e\u0447\u0435\u0432\u044b\u0445 \u0441\u043b\u043e\u0432,\u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u0435 \u0438\u0445 \u043a\u043b\u0430\u0432\u0438\u0448\u0435\u0439 "Enter".
@@ -699,7 +699,7 @@ group_name=\u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u0433\u0440\u0443\u
default_group=\u0413\u0440\u0443\u043f\u043f\u0430 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e
policy_group_manage=\u0413\u0440\u0443\u043f\u043f\u0430 \u043f\u043e\u043b\u0438\u0442\u0438\u043a
ip_Reuse_policy=\u041f\u043e\u043b\u0438\u0442\u0438\u043a\u0430 \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u043e\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f IP
target_ip_protect=\u0410\u043d\u0442\u0438-DDOS
target_ip_protect=\u0410\u043d\u0442\u0438-DDoS
ratelimit_config=\u041e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438
ip_ratelimit=\u041e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438 IP
domain_ratelimit=\u041e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438 \u0432\u0435\u0431-\u0441\u0441\u0430\u0439\u0442\u0430
@@ -1513,7 +1513,7 @@ admin_user_warn=\u041f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u04
interface_total=\u041e\u0431\u0449\u0435\u0435 \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0418\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430
service_total=\u041e\u0431\u0449\u0435\u0435 \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0421\u0435\u0440\u0432\u0438\u0441\u0430
none_file_tip=\u041f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430, \u0432\u044b\u0431\u0435\u0440\u0438\u0442\u0435 \u0444\u0430\u0439\u043b%21
the_same_ip_type=IP-\u0430\u0434\u0440\u0435\u0441 \u043A\u043B\u0438\u0435\u043D\u0442\u0430 \u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0434\u043E\u043B\u0436\u043D\u044B \u0438\u043C\u0435\u0442\u044C \u043E\u0434\u0438\u043D \u0438 \u0442\u043E\u0442 \u0436\u0435 \u0442\u0438\u043F.
the_same_ip_type=IP-\u0430\u0434\u0440\u0435\u0441 \u043a\u043b\u0438\u0435\u043d\u0442\u0430 \u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0434\u043e\u043b\u0436\u043d\u044b \u0438\u043c\u0435\u0442\u044c \u043e\u0434\u0438\u043d \u0438 \u0442\u043e\u0442 \u0436\u0435 \u0442\u0438\u043f.
src_ip_pattern=\u0424\u043e\u0440\u043c\u0430\u0442 ip \u041a\u043b\u0438\u0435\u043d\u0442\u0430
dest_ip_pattern=\u0424\u043e\u0440\u043c\u0430\u0442 ip \u0421\u0435\u0440\u0432\u0435\u0440\u0430
src_port_pattern=\u0424\u043e\u0440\u043c\u0430\u0442 \u041f\u043e\u0440\u0442\u0430 \u041a\u043b\u0438\u0435\u043d\u0442\u0430
@@ -1531,3 +1531,11 @@ range_cross=\u041d\u0430\u0439\u0434\u0435\u043d\u044b \u043f\u0435\u0440\u0435\
app_ip_correlation=\u041a\u043e\u0440\u0440\u0435\u043b\u044f\u0446\u0438\u044f ip-\u0430\u0434\u0440\u0435\u0441\u043e\u0432 \u041f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439
public_private_file_error=\u041d\u0435\u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0435 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u043e-\u043f\u0440\u0438\u0432\u0430\u0442\u043d\u043e\u0433\u043e \u043a\u043b\u044e\u0447\u0430.
https_url_format_tip=URL(http[s]://xxx.xx)
http_obj_scan_result=File Scan
topic_name=TOPIC NAME
malware_id=MALWARE ID
malware_type=MALWARE TYPE
malware_name=MALWARE NAME
ddos_log=\u0430\u0442\u0430\u043a\u0438
other_system_ddos_log_menu=\u0414\u0435\u0442\u0430\u043b\u0438 \u0426\u0435\u043f\u043e\u0447\u043a\u0438
other_system_ddos_report_menu=\u0440\u0435\u0436\u0438\u043c \u0430\u0442\u0430\u043a\u0438

View File

@@ -167,7 +167,7 @@ realtime_report=\u5b9e\u65f6\u62a5\u8868
protocol_and_app=\u534f\u8bae\u53ca\u5e94\u7528
text_content_monitor=\u6587\u672c\u5185\u5bb9\u76d1\u7ba1
multimedia=\u591a\u5a92\u4f53
ddos_system=\u6297DDOS\u653b\u51fb\u7cfb\u7edf
ddos_system=\u6297DDoS\u653b\u51fb\u7cfb\u7edf
ip_reuse_system=IP\u590d\u7528
service_dict_id=\u5b57\u5178ID
item_type=\u6570\u636e\u7c7b\u578b
@@ -698,7 +698,7 @@ group_name=\u5206\u7ec4\u540d\u79f0
default_group=\u7f3a\u7701\u7ec4
policy_group_manage=\u7b56\u7565\u5206\u7ec4
ratelimit_config=\u9650\u901f
target_ip_protect=\u6297DDOS\u653b\u51fb
target_ip_protect=\u6297DDoS\u653b\u51fb
ip_ratelimit=IP\u9650\u6d41
domain_ratelimit=\u57df\u540d\u9650\u6d41
ratelimit=\u4e22\u5305\u7387
@@ -706,7 +706,7 @@ ir_type=\u590d\u7528\u7c7b\u578b
dns_strategy_id=DNS\u7b56\u7565ID
no_strategy=\u9ed8\u8ba4\u7b56\u7565
domain=\u57df\u540d
app_ip_config=APP\u534F\u8BAEIP\u914D\u7F6E
app_ip_config=APP\u534f\u8baeIP\u914d\u7f6e
bytes=\u5b57\u8282
app_http_config=APP HTTP\u7279\u5f81
app_domain_config=APP\u57df\u540d\u7279\u5f81
@@ -1134,10 +1134,10 @@ label_proto_source=\u534f\u8bae\u6765\u6e90
label_behav_source=\u884c\u4e3a\u6765\u6e90
label_app_source=\u5e94\u7528\u6765\u6e90
packet=\u5305
stream=\u6D41
stream=\u6d41
protocol_menu=Protocol
advanced=Advanced
protocol_identify=\u57FA\u7840\u534F\u8BAE
protocol_identify=\u57fa\u7840\u534f\u8bae
MM_FILE_DIGEST=\u6587\u4ef6\u6458\u8981
NTC_ASN_IP=ASN
NTC_STREAMING_MEDIA_URL=URL
@@ -1255,9 +1255,9 @@ user_behavior_data=\u7528\u6237\u7edf\u8ba1
ip_behavior_data=\u7528\u6237IP\u7edf\u8ba1
not_valid_domain=%s\u4e0d\u662f\u4e00\u4e2a\u5408\u6cd5\u57df\u540d
cert_not_match_domain=\u57df\u540d\u4e0e\u6240\u9009\u8bc1\u4e66\u4fe1\u606f\u4e0d\u7b26\u5408\uff01
certificate_file_error=\u8BC1\u4E66\u683C\u5F0F\u9519\u8BEF
certificate_file_error=\u8bc1\u4e66\u683c\u5f0f\u9519\u8bef
PXY_OBJ_TRUSTED_CA_CERT=\u53ef\u4fe1\u8bc1\u4e66
crl_file_error=CRL\u6587\u4EF6\u683C\u5F0F\u9519\u8BEF
crl_file_error=CRL\u6587\u4ef6\u683c\u5f0f\u9519\u8bef
crl_issuer_error=crl\u6587\u4ef6\u7684issuer\u4e0e\u8bc1\u4e66\u6587\u4ef6\u7684issuer\u4e0d\u5339\u914d
cert_name=\u8bc1\u4e66\u540d\u79f0
add_crl_file=Add CRL File
@@ -1508,14 +1508,14 @@ effective=\u6709\u6548
admin_user_warn=\u7ba1\u7406\u5458\u7528\u6237\u9884\u8b66
interface_total=\u754c\u9762\u603b\u91cf
service_total=\u670d\u52a1\u603b\u91cf
unapproved_all=\u5ba1\u6838\u4E0D\u901a\u8fc7\u6240\u6709\u914d\u7f6e!
unapproved_all=\u5ba1\u6838\u4e0d\u901a\u8fc7\u6240\u6709\u914d\u7f6e!
delete_all=\u5220\u9664\u6240\u6709\u914d\u7f6e!
none_file_tip=\u8BF7\u9009\u62E9\u6587\u4EF6!
none_file_tip=\u8bf7\u9009\u62e9\u6587\u4ef6!
the_same_ip_type=\u6e90IP\u4e0e\u76ee\u7684IP\u7684IP\u7c7b\u578b\u5fc5\u987b\u76f8\u540c
src_ip_pattern=\u6E90IP\u683C\u5F0F
dest_ip_pattern=\u76EE\u7684IP\u683C\u5F0F
src_port_pattern=\u6E90\u7AEF\u53E3\u683C\u5F0F
dest_port_pattern=\u76EE\u7684\u7AEF\u53E3\u683C\u5F0F
src_ip_pattern=\u6e90IP\u683c\u5f0f
dest_ip_pattern=\u76ee\u7684IP\u683c\u5f0f
src_port_pattern=\u6e90\u7aef\u53e3\u683c\u5f0f
dest_port_pattern=\u76ee\u7684\u7aef\u53e3\u683c\u5f0f
url_group_configuration=URL \u5206\u7ec4\u914d\u7f6e
dns_keyword_group_configuration=DNS \u5173\u952e\u5b57\u5206\u7ec4\u914d\u7f6e
app_ip_correlation=APP IP \u901a\u8054
@@ -1525,7 +1525,15 @@ common_group=Common \u5206\u7ec4
dns_keyword_group_manage=DNS \u5173\u952e\u5b57\u5206\u7ec4\u7ba1\u7406
old_asn_group_manage=ASN \u5206\u7ec4
url_group_manage=URL \u5206\u7ec4 \u7ba1\u7406
range_cross=\u6E90IP\u4E0E\u76EE\u7684IP\u8303\u56F4\u6709\u4EA4\u53C9
app_ip_correlation=APP\u5173\u8054\u7279\u5F81IP\u914D\u7F6E
public_private_file_error=\u516C\u79C1\u94A5\u8BC1\u4E66\u4E0D\u5339\u914D
range_cross=\u6e90IP\u4e0e\u76ee\u7684IP\u8303\u56f4\u6709\u4ea4\u53c9
app_ip_correlation=APP\u5173\u8054\u7279\u5f81IP\u914d\u7f6e
public_private_file_error=\u516c\u79c1\u94a5\u8bc1\u4e66\u4e0d\u5339\u914d
https_url_format_tip=URL(http[s]://xxx.xx)
http_obj_scan_result=\u6587\u4ef6\u626b\u63cf
topic_name=\u4e3b\u9898\u540d\u79f0
malware_id=\u6076\u610f\u75c5\u6bd2ID
malware_type=\u6076\u610f\u75c5\u6bd2\u7c7b\u578b
malware_name=\u6076\u610f\u75c5\u6bd2\u540d\u79f0
ddos_log=\u653b\u51fb
other_system_ddos_log_menu=\u653b\u51fb\u94fe
other_system_ddos_report_menu=\u653b\u51fb\u6001\u52bf

View File

@@ -184,7 +184,7 @@ trafficIpActiveOneHour=v1/trafficIpActiveOneHour
client_connect_timeout=500000
client_read_timeout=500000
log_time_interval=500000
log_time_interval=300000
logsearch_menu_id=152
#use elasticsearch or not#
isUseES=false
@@ -340,12 +340,12 @@ mm_logo_detection_region=MM_LOGO_DETECTION
mm_face_recognization_region=MM_FACE_RECOGNIZATION
#\u6837\u4f8b\u6587\u4ef6\u751f\u6210\u7a0b\u5e8f
audio_sample_create_proc=/home/ceiec/av_feature_gen/audio_convert_proc
video_sample_create_proc=/home/ceiec/av_feature_gen/extract_frame_feature
picture_sample_create_proc=/home/ceiec/av_feature_gen/picture_convert_proc
audio_sample_create_proc=/home/mesasoft/av_feature_gen/audio_convert_proc
video_sample_create_proc=/home/mesasoft/av_feature_gen/extract_frame_feature
picture_sample_create_proc=/home/mesasoft/av_feature_gen/picture_convert_proc
speaker_sample_create_proc=java -jar /home/sampleTest.jar
logo_sample_create_proc=/home/ceiec/av_feature_gen/logo_convert_proc
face_sample_create_proc=/home/ceiec/av_feature_gen/face_convert_proc
logo_sample_create_proc=/home/mesasoft/av_feature_gen/logo_convert_proc
face_sample_create_proc=/home/mesasoft/av_feature_gen/face_convert_proc
audio_sample_proc_param_is_quotation=true
video_sample_proc_param_is_quotation=true
picture_sample_proc_param_is_quotation=true
@@ -427,7 +427,7 @@ mmFileDigestLog=v1/mmFileDigestLogs
ntcStreamMediaLog=v1/ntcStreamMediaLogs
#\u97f3\u89c6\u9891\u6837\u4f8b\u9650\u5236\u65f6\u957f\uff0c\u5355\u4f4d\u79d2
av_duration_limit=120
video_to_picture_proc=/home/ceiec/av_feature_gen/save_video_frame
video_to_picture_proc=/home/mesasoft/av_feature_gen/save_video_frame
#\u8bc1\u4e66\u6587\u4ef6\u8def\u5f84
cert_file_path=/home/cert/
#\u8bc1\u4e66\u6821\u9a8c\u5de5\u5177\u540d\u79f0
@@ -485,7 +485,7 @@ ntcCollectRadiusLog=v1/ntcCollectRadiusLogs
ntcConnRecordLog=v1/ntcConnRecordLogs
ntcConnRecordPercent=v1/ntcConnRecordPercent
#\u5bfc\u51fa\u6700\u5927\u6761\u6570
maxLogExportSize=2000
maxLogExportSize=20000
pxy_crtl_subscribe_id_region=PXY_CTRL_SUBSCRIBE_ID
ntc_subscribe_id_region=NTC_SUBSCRIBE_ID
ntcAsnRecord=v1/ntcAsnRecord
@@ -521,3 +521,5 @@ cgiError=cannot connect to vpnserver,Connection to the server has failed,Specifi
#\u83b7\u53d6\u670d\u52a1\u914d\u7f6e\u603b\u91cf\u63a5\u53e3
getConfigByService=v1/getConfigByService
delAllCfg=v1/delAllConfig
#\u6587\u4ef6\u626b\u63cf\u63a5\u53e3
ntcHttpObjscanResultLogs=v1/ntcHttpObjscanResultLogs

View File

@@ -0,0 +1,3 @@
# 新增日志检索->流量日志->文件扫描结果
INSERT INTO `sys_menu` (`parent_id`, `parent_ids`, `code`, `name`, `sort`, `href`, `target`, `icon`, `is_show`, `permission`, `create_by`, `create_date`, `update_by`, `update_date`, `remarks`, `del_flag`, `menu_bg`, `quick_action`, `is_top`, `function_id`) VALUES ('1217', '0,1,152,1217,', 'http_obj_scan_result', '文件扫描', '200', '/log/ntc/httpObjScanResult', '', '', '1', '', '1', '2019-07-04 10:34:26', '1', '2019-07-04 10:34:26', '', '1', NULL, '0', '0', NULL);

View File

@@ -0,0 +1 @@
create database ntc_db default character set utf8mb4 collate utf8mb4_general_ci;

File diff suppressed because one or more lines are too long

View File

@@ -1,101 +1,163 @@
DELETE FROM app_byte_cfg;
alter table app_byte_cfg auto_increment= 1;
DELETE FROM app_domain_cfg;
alter table app_domain_cfg auto_increment= 1;
DELETE FROM app_features_index;
alter table app_features_index auto_increment= 1;
DELETE FROM app_feature_index;
alter table app_feature_index auto_increment= 1;
DELETE FROM app_http_cfg;
alter table app_http_cfg auto_increment= 1;
DELETE FROM app_id_cfg;
alter table app_id_cfg auto_increment= 1;
DELETE FROM app_ip_cfg;
alter table app_ip_cfg auto_increment= 1;
DELETE FROM app_policy_cfg;
alter table app_policy_cfg auto_increment= 1;
DELETE FROM area_ip_cfg;
alter table area_ip_cfg auto_increment= 1;
DELETE FROM app_layer_header_cfg;
alter table app_layer_header_cfg auto_increment= 1;
DELETE FROM app_policy_cfg;
alter table app_policy_cfg auto_increment= 1;
DELETE FROM app_session_cfg;
alter table app_session_cfg auto_increment= 1;
DELETE FROM app_ssl_cert_cfg;
DELETE FROM app_topic_domain_cfg;
alter table app_ssl_cert_cfg auto_increment= 1;
#DELETE FROM app_topic_domain_cfg where is_valid !=-1;
#update app_topic_domain_cfg set is_valid=0,is_audit=0;
DELETE FROM area_ip_cfg;
alter table area_ip_cfg auto_increment= 1;
DELETE FROM asn_ip_cfg;
alter table asn_ip_cfg auto_increment= 1;
DELETE FROM asn_keyword_cfg;
alter table asn_keyword_cfg auto_increment= 1;
DELETE FROM av_cont_ip_cfg;
alter table av_cont_ip_cfg auto_increment= 1;
DELETE FROM av_cont_url_cfg;
alter table av_cont_url_cfg auto_increment= 1;
DELETE FROM av_file_sample_cfg;
alter table av_file_sample_cfg auto_increment= 1;
DELETE FROM av_pic_ip_cfg;
alter table av_pic_ip_cfg auto_increment= 1;
DELETE FROM av_pic_url_cfg;
alter table av_pic_url_cfg auto_increment= 1;
DELETE FROM av_voip_account_cfg;
alter table av_voip_account_cfg auto_increment= 1;
DELETE FROM av_voip_ip_cfg;
alter table av_voip_ip_cfg auto_increment= 1;
DELETE FROM byte_features_cfg;
alter table byte_features_cfg auto_increment= 1;
DELETE FROM cfg_index_info;
alter table cfg_index_info auto_increment= 1;
DELETE FROM av_sign_sample_cfg;
alter table av_sign_sample_cfg auto_increment= 1;
DELETE FROM complex_keyword_cfg;
alter table complex_keyword_cfg auto_increment= 1;
DELETE FROM config_group_info;
alter table config_group_info auto_increment= 1;
DELETE FROM ddos_ip_cfg;
alter table ddos_ip_cfg auto_increment= 1;
DELETE FROM dns_domain_cfg;
alter table dns_domain_cfg auto_increment= 1;
DELETE FROM dns_ip_cfg;
alter table dns_ip_cfg auto_increment= 1;
DELETE FROM dns_res_strategy;
ALTER TABLE dns_res_strategy auto_increment = 101;
DELETE FROM file_digest_cfg;
alter table file_digest_cfg auto_increment= 1;
DELETE FROM ftp_keyword_cfg;
alter table ftp_keyword_cfg auto_increment= 1;
DELETE FROM http_body_cfg;
alter table http_body_cfg auto_increment= 1;
DELETE FROM http_req_head_cfg;
alter table http_req_head_cfg auto_increment= 1;
DELETE FROM http_res_head_cfg;
alter table http_res_head_cfg auto_increment= 1;
DELETE FROM http_url_cfg;
alter table http_url_cfg auto_increment= 1;
DELETE FROM ip_multiplex_pool_cfg;
alter table ip_multiplex_pool_cfg auto_increment= 1;
DELETE FROM ip_port_cfg;
alter table ip_port_cfg auto_increment= 1;
DELETE FROM l2tp_url_cfg;
alter table l2tp_url_cfg auto_increment= 1;
DELETE FROM mail_keyword_cfg;
alter table mail_keyword_cfg auto_increment= 1;
DELETE FROM multiple_cfg_relation;
alter table multiple_cfg_relation auto_increment= 1;
DELETE FROM ntc_bgp_as_cfg;
alter table ntc_bgp_as_cfg auto_increment= 1;
DELETE FROM ntc_subscribe_id_cfg;
alter table ntc_subscribe_id_cfg auto_increment= 1;
DELETE FROM num_boundary_cfg;
alter table num_boundary_cfg auto_increment= 1;
DELETE FROM p2p_hash_cfg;
alter table p2p_hash_cfg auto_increment= 1;
DELETE FROM p2p_keyword_cfg;
alter table p2p_keyword_cfg auto_increment= 1;
DELETE FROM policy_group_info;
ALTER TABLE policy_group_info auto_increment = 101;
DELETE FROM pptp_url_cfg;
alter table pptp_url_cfg auto_increment= 1;
DELETE FROM proxy_file_strategy_cfg;
alter table proxy_file_strategy_cfg auto_increment= 1;
DELETE FROM ssl_keyword_cfg;
alter table ssl_keyword_cfg auto_increment= 1;
DELETE FROM pxy_obj_keyring;
alter table pxy_obj_keyring auto_increment= 1;
DELETE FROM intercept_pkt_bin;
alter table intercept_pkt_bin auto_increment= 1;
DELETE FROM app_feature_index;
alter table app_feature_index auto_increment= 1;
DELETE FROM app_complex_feature_cfg;
alter table app_complex_feature_cfg auto_increment= 1;
DELETE FROM app_ip_range_cfg;
alter table app_ip_range_cfg auto_increment= 1;
DELETE FROM app_string_feature_cfg;
alter table app_string_feature_cfg auto_increment= 1;
DELETE FROM pxy_obj_trusted_ca_crl;
alter table pxy_obj_trusted_ca_crl auto_increment= 1;
DELETE FROM pxy_obj_trusted_ca_cert;
alter table pxy_obj_trusted_ca_cert auto_increment= 1;
UPDATE specific_service_cfg SET group_id=0;
DELETE FROM ip_reuse_addr_pool;
alter table ip_reuse_addr_pool auto_increment= 1;
DELETE FROM ip_reuse_ip_cfg;
alter table ip_reuse_ip_cfg auto_increment= 1;
DELETE FROM ip_reuse_policy_cfg;
alter table ip_reuse_policy_cfg auto_increment= 1;
DELETE FROM user_manage;
alter table user_manage auto_increment= 1;
#clear vpn
DELETE FROM service_dict_info where item_type='5';
#<23><><EFBFBD><EFBFBD>DNS<4E><53><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ҳ<EFBFBD><D2B2>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD>100<30><30><EFBFBD><EFBFBD><EFBFBD>Բ<EFBFBD><D4B2>Է<EFBFBD><D4B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>101<30><31>ʼ
ALTER TABLE policy_group_info auto_increment = 101;
#<23><><EFBFBD>asn<73>ŷ<EFBFBD><C5B7><EFBFBD><EFBFBD>
DELETE FROM asn_group_info;
<>϶<EFBFBD>̬IP<49><50>ַ<EFBFBD><D6B7>
alter table asn_group_info auto_increment= 1;
INSERT INTO `ip_reuse_addr_pool` (`cfg_id`, `addr_pool_name`, `ip_total`, `action`, `is_valid`, `is_audit`, `cfg_region_code`, `cfg_type`, `function_id`, `service_id`, `compile_id`, `is_area_effective`, `area_effective_ids`, `request_id`, `classify`, `attribute`, `lable`, `creator_id`, `create_time`, `editor_id`, `edit_time`, `auditor_id`, `audit_time`, `description`, `cancel_request_id`, `user_region1`, `user_region2`, `user_region3`, `user_region4`, `user_region5`) VALUES ('0', 'dynamic_pool', '1', '96', '1', '1', '1', 'IR_STATIC_NOMINEE_IP', '633', '834', '0', '0', '', '0', '0', '0', '0', '0', '0000-00-00 00:00:00', NULL, '0000-00-00 00:00:00', NULL, '0000-00-00 00:00:00', '', NULL, '', '', '', '', '');
UPDATE ip_reuse_addr_pool set cfg_id=0 where addr_pool_name= 'dynamic_pool';
DELETE FROM sys_log;
alter table sys_log auto_increment= 1;
DELETE FROM sys_cfg_operation_log;
DELETE FROM sys_cfg_operation_log;
alter table sys_cfg_operation_log auto_increment= 1;
DELETE FROM proc_exec_log;
alter table proc_exec_log auto_increment= 1;
DELETE FROM cfg_num_statistics;
alter table cfg_num_statistics auto_increment= 1;
DELETE FROM request_num_statistics;
alter table request_num_statistics auto_increment= 1;
DELETE FROM common_keyword_cfg;
alter table common_keyword_cfg auto_increment= 1;
DELETE FROM pxy_obj_spoofing_ip_pool;
alter table pxy_obj_spoofing_ip_pool auto_increment= 1;
DELETE FROM schedule_cfg;
alter table schedule_cfg auto_increment= 1;
DELETE FROM schedule_exce_log;
alter table schedule_exce_log auto_increment= 1;
DELETE FROM schedule_exce_new;
alter table schedule_exce_new auto_increment= 1;
#<23><>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>ı<EFBFBD><C4B1>ؽ<EFBFBD>sql<71><6C><EFBFBD><EFBFBD><EFBFBD>ڸ<EFBFBD><DAB8><EFBFBD>֮<EFBFBD><D6AE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD>ؽ<EFBFBD><D8BD><EFBFBD>
# In your Quartz properties file, you'll need to set
# org.quartz.jobStore.driverDelegateClass = org.quartz.impl.jdbcjobstore.StdJDBCDelegate
#
#
# By: Ron Cordell - roncordell
# I didn't see this anywhere, so I thought I'd post it here. This is the script from Quartz to create the tables in a MySQL database, modified to use INNODB instead of MYISAM.
DROP TABLE IF EXISTS QRTZ_FIRED_TRIGGERS;
DROP TABLE IF EXISTS QRTZ_PAUSED_TRIGGER_GRPS;
DROP TABLE IF EXISTS QRTZ_SCHEDULER_STATE;

View File

@@ -59,10 +59,10 @@ $(function(){
submitHandler: function(form){
var flag = true;
//代表所有业务都隐藏了,提示必须增加一种业务数据
if($("[name=action]:checked").val()==1&&$(".boxSolid").length ==$(".boxSolid.hidden").length){
/* if($("[name=action]:checked").val()==1&&$(".boxSolid").length ==$(".boxSolid.hidden").length){
top.$.jBox.tip("<spring:message code='one_more'/>", "<spring:message code='info'/>");
return;
}
} */
/*
if($("[name=action]:checked").val()==1&&$(".ipPortAdd").parents(".form-section").next(".boxSolid").is(":hidden")){
top.$.jBox.tip("<spring:message code='ip_must_select'/>", "<spring:message code='info'/>");

View File

@@ -67,10 +67,10 @@ $(function(){
}
*/
//代表所有业务都隐藏了,提示必须增加一种业务数据
if($("[name=action]:checked").val()==1&&$(".boxSolid").length ==$(".boxSolid.hidden").length) {
/* if($("[name=action]:checked").val()==1&&$(".boxSolid").length ==$(".boxSolid.hidden").length) {
top.$.jBox.tip("<spring:message code='one_more'/>", "<spring:message code='info'/>");
return;
}
} */
/*
if($("[name=action]:checked").val()==1&&$(".ipPortAdd").parents(".form-section").next(".boxSolid").is(":hidden")){
top.$.jBox.tip("<spring:message code='ip_must_select'/>", "<spring:message code='info'/>");

View File

@@ -51,10 +51,10 @@ $(function(){
submitHandler: function(form){
var flag = true;
//代表所有业务都隐藏了,提示必须增加一种业务数据
if($("[name=action]:checked").val()==1&&$(".boxSolid").length ==$(".boxSolid.hidden").length){
/* if($("[name=action]:checked").val()==1&&$(".boxSolid").length ==$(".boxSolid.hidden").length){
top.$.jBox.tip("<spring:message code='one_more'/>", "<spring:message code='info'/>");
return;
}
} */
$(".boxSolid:visible").find("input[name$='cfgKeywords']").each(function(){
if($(this).val()==''){
$(this).parents(".form-group").find(

View File

@@ -96,7 +96,7 @@
</head>
<body>
<c:if test="${cfg.functionId eq 214}">
<c:set var="interceptType" value="Ip"/>
<c:set var="interceptType" value="IpPayload"/>
</c:if>
<c:if test="${cfg.functionId eq 200}">
<c:set var="interceptType" value="Ip"/>

View File

@@ -177,6 +177,10 @@ function showActionTransChart(xData,series){
credits:{//是否有highcharts水印
enabled:false
},
legend: {
enabled: false
},
plotOptions: {
series: {
marker: {
@@ -214,13 +218,16 @@ function showActionTransChart(xData,series){
total.push(
d.sum
)
var entrance="";
var entrance=" ";
if(d!=null&&d.entranceId==1){
entrance="Astana+Almaty";
}
/* if(d!=null&&d.entranceId==1){
entrance="Astana";
}
if(d!=null&&d.entranceId==2){
entrance="Almaty";
}
} */
series.push({
name: entrance,
data: d.result,

View File

@@ -38,7 +38,7 @@
<!-- 搜索内容与操作按钮栏 -->
<div class="col-md-12">
<div class="pull-left">
<div class="input-group">
<%-- <div class="input-group">
<div class="input-group-btn">
<span class="selectpicker form-control" ><spring:message code="area_id"/></span>
</div>
@@ -61,12 +61,11 @@
<span class="selectpicker form-control" ><spring:message code="isp"/></span>
</div>
<select id="isp1" name="isp" class="selectpicker form-control input-medium" data-max-options="10" data-selected-text-format="count > 3" multiple data-live-search="true" data-live-search-placeholder="search">
<%-- <option value=""><spring:message code="select"/></option> --%>
<c:forEach items="${fns:getIspDicList('ispCode')}" var="dict" >
<option value="${dict.ispKeyCode}"><spring:message code="${dict.ispKeyName}"></spring:message></option>
</c:forEach>
</select>
</div>
</div> --%>
</div>
<div class="pull-left">
<button type="button" class="btn blue"
@@ -108,7 +107,7 @@
</div>
</div>
<div class="pull-left">
<div class="input-group">
<%-- <div class="input-group">
<div class="input-group-btn">
<span class="selectpicker form-control" ><spring:message code="area_id"/></span>
</div>
@@ -123,20 +122,19 @@
</c:if>
</c:forEach>
</select>
</div>
</div> --%>
</div>
<div class="pull-left">
<div class="input-group">
<%-- <div class="input-group">
<div class="input-group-btn">
<span class="selectpicker form-control" ><spring:message code="isp"/></span>
</div>
<select id="isp2" name="isp" class="selectpicker form-control input-medium" data-max-options="10" data-selected-text-format="count > 3" multiple data-live-search="true" data-live-search-placeholder="search">
<%-- <option value=""><spring:message code="select"/></option> --%>
<c:forEach items="${fns:getIspDicList('ispCode')}" var="dict" >
<option value="${dict.ispKeyCode}"><spring:message code="${dict.ispKeyName}"></spring:message></option>
</c:forEach>
</select>
</div>
</div> --%>
</div>
<div class="pull-left">
<button type="button" class="btn blue"
@@ -242,15 +240,15 @@
$("#beginDate").val(starth);
$("#endDate").val(endh);
var appType=$("#appType").val();
var entranceId1=$("#entranceId1").val();
var entranceId2=$("#entranceId2").val();
var isp1=$("#isp1").val();
var isp2=$("#isp2").val();
// var entranceId1=$("#entranceId1").val();
// var entranceId2=$("#entranceId2").val();
// var isp1=$("#isp1").val();
// var isp2=$("#isp2").val();
var unitType=$("#unitType").val();
var searchQuota=$(".searchQuota[class~='active']").val();
showRealTimeTransChart(appType,entranceId1,isp1,unitType);// 实时折线
appTransAjax(starth,endh,appType,entranceId2,isp2,unitType);
appTop100List(starth,endh,appType,entranceId2,searchQuota,isp2,unitType);
showRealTimeTransChart(appType,unitType);// 实时折线
appTransAjax(starth,endh,appType,unitType);
appTop100List(starth,endh,appType,searchQuota,unitType);
//筛选功能初始化
$("#resetBtn1").on("click",function() {
$("#searchForm1 select.selectpicker").each(function() {
@@ -307,18 +305,18 @@
$("#beginDate").val(starth);
$("#endDate").val(endh);
var appType=$("#appType").val();
var entranceId1=$("#entranceId1").val();
var entranceId2=$("#entranceId2").val();
var isp1=$("#isp1").val();
var isp2=$("#isp2").val();
// var entranceId1=$("#entranceId1").val();
// var entranceId2=$("#entranceId2").val();
// var isp1=$("#isp1").val();
// var isp2=$("#isp2").val();
var unitType=$("#unitType").val();
var searchQuota=$(".searchQuota[class~='active']").val();
if($(this).val()==1){
showRealTimeTransChart(appType,entranceId1,isp1,unitType);// 实时折线
showRealTimeTransChart(appType,unitType);// 实时折线
$(".chart-realTime").removeClass("hidden");
$(".chart-history").addClass("hidden");
}else{
appTransAjax(starth,endh,appType,entranceId2,isp2,unitType);
appTransAjax(starth,endh,appType,unitType);
$(".chart-realTime").addClass("hidden");
$(".chart-history").removeClass("hidden");
}
@@ -341,14 +339,14 @@
$("#beginDate").val(starth);
$("#endDate").val(endh);
var appType=$("#appType").val();
var entranceId1=$("#entranceId1").val();
var entranceId2=$("#entranceId2").val();
var isp1=$("#isp1").val();
var isp2=$("#isp2").val();
// var entranceId1=$("#entranceId1").val();
// var entranceId2=$("#entranceId2").val();
// var isp1=$("#isp1").val();
// var isp2=$("#isp2").val();
var unitType=$("#unitType").val();
var searchQuota=$(".searchQuota[class~='active']").val();
showRealTimeTransChart(appType,entranceId1,isp1,unitType);// 实时折线
appTransAjax(starth,endh,appType,entranceId2,isp2,unitType);
showRealTimeTransChart(appType,unitType);// 实时折线
appTransAjax(starth,endh,appType,unitType);
});
});
@@ -356,15 +354,15 @@
// 改变排序字段
function changeOrderby(searchQuota) {
loading();
appTop100List($("#beginDate").val(),$("#endDate").val(),$("#appType").val(),$("#entranceId2").val(),searchQuota,$("#isp2").val(),unitType=$("#unitType").val());
appTop100List($("#beginDate").val(),$("#endDate").val(),$("#appType").val(),searchQuota,unitType=$("#unitType").val());
}
function searchList1() {
loading();
var unitType=$("#unitType").val();
var appType=$("#appType").val();
var entranceId1=$("#entranceId1").val();
var isp1=$("#isp1").val();
showRealTimeTransChart(appType,entranceId1,isp1,unitType);// 折线
// var entranceId1=$("#entranceId1").val();
// var isp1=$("#isp1").val();
showRealTimeTransChart(appType,unitType);// 折线
}
function searchList2() {
var unitType=$("#unitType").val();
@@ -376,15 +374,15 @@
window.location.reload();
} else {
var appType=$("#appType").val();
var entranceId2=$("#entranceId2").val();
var isp2=$("#isp2").val();
// var entranceId2=$("#entranceId2").val();
// var isp2=$("#isp2").val();
var searchQuota=$(".searchQuota[class~='active']").val();
appTransAjax(start,end,appType,entranceId2,isp2,unitType);// 折线
appTop100List(start,end,appType,entranceId2,searchQuota,isp2);// 列表
appTransAjax(start,end,appType,unitType);// 折线
appTop100List(start,end,appType,searchQuota);// 列表
}
}
// 列表
function appTop100List(start,end,appType,entranceId,searchQuota,isp){
function appTop100List(start,end,appType,searchQuota){
$.ajax({
url : "${ctx}/dashboard/traffic/ajaxAppTopList",
type : 'get',
@@ -393,9 +391,9 @@
"beginDate" : start,
"endDate" : end,
"appType" : appType,
"entranceId" : entranceId,
// "entranceId" : entranceId,
"searchQuota":searchQuota,
"searchIspCode":isp,
// "searchIspCode":isp,
},
async : true,
timeout : 50000,
@@ -480,7 +478,7 @@
}
// app曲线图
function appTransAjax(beginDate, endDate,appType,entranceId,isp,unitType) {
function appTransAjax(beginDate, endDate,appType,unitType) {
loading();
$.ajax({ url : "${ctx}/dashboard/traffic/ajaxAppTrend",
type : "get",
@@ -490,8 +488,8 @@
"beginDate" : beginDate,
"endDate" : endDate,
"appType" : appType,
"entranceId" : entranceId,
"searchIspCode":isp,
// "entranceId" : entranceId,
// "searchIspCode":isp,
"searchQuotaType":unitType
},
traditional:true,
@@ -686,7 +684,7 @@
}
}
function realTimeTrendAjax(beginDate, endDate,appType,entranceId,isp,unitType){
function realTimeTrendAjax(beginDate, endDate,appType,unitType){
var result={};
$.ajax({
url : "${ctx}/dashboard/traffic/ajaxAppTrend",
@@ -696,8 +694,8 @@
"beginDate" : beginDate,
"endDate" : endDate,
"appType" : appType,
"entranceId" : entranceId,
"searchIspCode":isp,
// "entranceId" : entranceId,
// "searchIspCode":isp,
"searchQuotaType":unitType
},
async : false,
@@ -717,7 +715,7 @@
}
var timer=null;
// 局点信息
function showRealTimeTransChart(appType,entranceId,isp,unitType) {
function showRealTimeTransChart(appType,unitType) {
var time1=(new Date().getTime())-(1000 * 60 * 10+1000 * 60 * 5);
var time2=(new Date().getTime())-(1000 * 60 * 5);//推迟五分钟
var beginDate=dateFtt("yyyy-MM-dd hh:mm:ss",new Date(time1)); //获取十个点
@@ -729,7 +727,7 @@
var s2cResult=new Array();
var totalResult=new Array();
var unitType=$("#unitType").val();
var intData = realTimeTrendAjax(beginDate, endDate,appType,entranceId,isp,unitType); //初始化数据 为10个点
var intData = realTimeTrendAjax(beginDate, endDate,appType,unitType); //初始化数据 为10个点
var zxchart=null;
if(unitType=='Unique Ip'){
sipResult=intData.sipResult;
@@ -1062,8 +1060,8 @@
"beginDate" : begin,
"endDate" : end,
"appType" : appType,
"entranceId" : entranceId,
"searchIspCode":isp,
// "entranceId" : entranceId,
// "searchIspCode":isp,
"searchQuotaType":unitType
},
async : true,

View File

@@ -71,7 +71,7 @@
</div>
</div>
<div class="pull-left">
<div class="input-group">
<%-- <div class="input-group">
<div class="input-group-btn">
<span class="selectpicker form-control" ><spring:message code="area_id"/></span>
</div>
@@ -81,7 +81,7 @@
<option value="${dict.itemCode}"><spring:message code="${dict.itemValue}"></spring:message></option>
</c:forEach>
</select>
</div>
</div> --%>
</div>
<div class="pull-left">
<button type="button" class="btn blue" onClick="return searchList()"> <i class="fa fa-search"></i> <spring:message code="search"/> </button>
@@ -144,8 +144,8 @@ $(document).ready(function(){
var endh=$("#endDateh").val();
$("#beginDate").val(starth);
$("#endDate").val(endh);
var entranceId=$("#entranceId").val();
ajaxAppList(starth,endh,entranceId);
// var entranceId=$("#entranceId").val();
ajaxAppList(starth,endh);
//筛选功能初始化
$("#resetBtn").on("click",function(){
$("select.selectpicker").each(function(){
@@ -167,21 +167,21 @@ function searchList(){
var end=$("#endDate").val();
$("#beginDateh").val(start);
$("#endDateh").val(end);
var entranceId = $("#entranceId").val();
// var entranceId = $("#entranceId").val();
if(start==''||end==''||end==null||start==null){
window.location.reload();
}else{
ajaxAppList(start,end,entranceId);
ajaxAppList(start,end);
}
}
function ajaxAppList(start,end,entranceId){
function ajaxAppList(start,end){
var appType=$("#appType").val();
loading();
$.ajax({
url: '${ctx}/dashboard/traffic/appList',
type: 'get',
dataType: "json",
data:{"beginDate":start,"endDate":end,"appType":appType,"entranceId":entranceId},
data:{"beginDate":start,"endDate":end,"appType":appType},
async:true,
timeout:50000,
traditional:true,
@@ -381,8 +381,8 @@ function htmlData(fileDataS){
function openAppTrend(appType){
var beginDate=$("#beginDateh").val();
var endDate=$("#endDateh").val();
var entranceId = $("#entranceId").val();
var url= "${ctx}/dashboard/traffic/appTrendList?beginDate="+beginDate+"&endDate="+endDate+"&appType="+appType+"&entranceId="+entranceId;
// var entranceId = $("#entranceId").val();
var url= "${ctx}/dashboard/traffic/appTrendList?beginDate="+beginDate+"&endDate="+endDate+"&appType="+appType;
window.location.href=(url)
}
/**

View File

@@ -93,7 +93,7 @@
</div>
</div>
</div>
<div class="row">
<!-- <div class="row">
<div class="col-md-12">
<div id="trend" style="height: 500px; position: relative;" >
<div style="position: relative;">
@@ -101,7 +101,7 @@
</div>
</div>
</div>
</div>
</div> -->
</div>
<script src="${pageContext.request.contextPath}/static/global/plugins/highcharts/js/highcharts.js"></script>
<script src="${pageContext.request.contextPath}/static/global/plugins/highcharts/js/exporting.js"></script>
@@ -176,12 +176,19 @@ function changeBandwidth(unitType,beginDate,endDate){
var udpdata2=null;
var total=[];
var total2=[];
if(data!=null&&Object.keys(data).length>0){
/* if(data!=null&&Object.keys(data).length>0){
ipv4data=data.ipv4Type1.result;
ipv6data=data.ipv6Type1.result;
tcpdata=data.trans6Type1.result;
udpdata=data.trans17Type1.result;
total.push(data.ipv4Type1.sum,data.ipv6Type1.sum,data.trans6Type1.sum,data.trans17Type1.sum);
} */
if(data!=null&&Object.keys(data).length>0){
ipv4data=data.ipv4Type.result;
ipv6data=data.ipv6Type.result;
tcpdata=data.trans6Type.result;
udpdata=data.trans17Type.result;
total.push(data.ipv4Type.sum,data.ipv6Type.sum,data.trans6Type.sum,data.trans17Type.sum);
}
var series=new Array();
series.push({
@@ -222,9 +229,9 @@ function changeBandwidth(unitType,beginDate,endDate){
}
});
$("#total").val(JSON.stringify(total));
showBandwidthChart("chart1",unitType,xdata,series,"Astana");
showBandwidthChart("chart1",unitType,xdata,series,"");
if(data!=null&&Object.keys(data).length>0){
/* if(data!=null&&Object.keys(data).length>0){
ipv4data2=data.ipv4Type2.result;
ipv6data2=data.ipv6Type2.result;
tcpdata2=data.trans6Type2.result;
@@ -271,7 +278,7 @@ function changeBandwidth(unitType,beginDate,endDate){
}
});
$("#total2").val(JSON.stringify(total2));
showBandwidthChart("chart2",unitType,xdata,series,"Almaty");
showBandwidthChart("chart2",unitType,xdata,series,"Almaty"); */
closeTip();
},
error: function(data, textStatus, errorThrown){
@@ -343,7 +350,7 @@ function showBandwidthChart(id,unitType,xdata,ydata,title){
rotation: -45, //倾斜的角度
}, */
title: {
text: 'time-'+title,
text: 'time',
align:'high',
},
type: 'datetime',
@@ -426,14 +433,15 @@ function showBandwidthChart(id,unitType,xdata,ydata,title){
var map={};
$(rows).each(function(i,d){
if(d!=null){
if(i==0){
total=JSON.parse($("#total").val());
/* if(i==0){
if(d[0].indexOf("Astana") != -1){
total=JSON.parse($("#total").val());
}
if(d[0].indexOf("Almaty") != -1){
total=JSON.parse($("#total2").val());
}
}
} */
}
// 去掉多余属性
delete d.name;
@@ -515,12 +523,13 @@ function showBandwidthChart(id,unitType,xdata,ydata,title){
$(rows).each(function (i,d){
if(d!=null){
if(i==0){
if(d[0].indexOf("Astana") != -1){
total=JSON.parse($("#total").val());
/* if(d[0].indexOf("Astana") != -1){
total=JSON.parse($("#total").val());
}
if(d[0].indexOf("Almaty") != -1){
total=JSON.parse($("#total2").val());
}
} */
}
if(i>0){
data.push({

View File

@@ -22,7 +22,7 @@
<input id="beginDate" type="hidden" value="${beginDate}"/>
<input id="endDate" type="hidden" value="${endDate}"/>
<input id="domain" type="hidden" value="${domain}"/>
<input id="entranceId" type="hidden" value="${entranceId}"/>
<%-- <input id="entranceId" type="hidden" value="${entranceId}"/> --%>
<input id="domainName" type="hidden" value="${domainName}"/>
<input id="total" type="hidden"/>
<!-- 搜索内容与操作按钮栏 -->
@@ -51,13 +51,13 @@ $(document).ready(function(){
loading();
var beginDate=$("#beginDate").val();
var endDate=$("#endDate").val();
var entranceId=$("#entranceId").val();
// var entranceId=$("#entranceId").val();
var domain=$("#domain").val();
$.ajax({
url: '${ctx}/dashboard/traffic/ajaxDomainTrans',
type : "get" ,
dataType:"json",
data:{"beginDate":beginDate,"endDate":endDate,"entranceId":entranceId,"domain":domain},
data:{"beginDate":beginDate,"endDate":endDate,"domain":domain},
async:true,
timeout:50000,
success:function (rs) {

View File

@@ -43,7 +43,7 @@
</div>
</div>
<div class="pull-left">
<div class="input-group">
<%-- <div class="input-group">
<div class="input-group-btn">
<span class="selectpicker form-control" ><spring:message code="area_id"/></span>
</div>
@@ -53,7 +53,7 @@
<option value="${dict.itemCode}" <c:if test="${dict.itemCode==1}">selected</c:if>><spring:message code="${dict.itemValue}"></spring:message></option>
</c:forEach>
</select>
</div>
</div> --%>
</div>
<div class="pull-left">
<button type="button" class="btn blue" onClick="return searchList()"> <i class="fa fa-search"></i> <spring:message code="search"/> </button>
@@ -91,7 +91,7 @@
<thead>
<tr>
<th><spring:message code="ip_addr"/></th>
<th><spring:message code="area_id"/></th>
<%-- <th><spring:message code="area_id"/></th> --%>
<th><spring:message code="c2s_byte_num"/></th>
<th><spring:message code="s2c_byte_num"/></th>
<th><spring:message code="bytes"/></th>
@@ -136,9 +136,9 @@ $(document).ready(function(){
var endh=$("#endDateh").val();
$("#beginDate").val(starth);
$("#endDate").val(endh);
var entranceId=$("#entranceId").val();
ipActiveMinuteList(starth,endh,entranceId);
ipActiveOneHourList(starth,endh,entranceId);
// var entranceId=$("#entranceId").val();
ipActiveMinuteList(starth,endh);
ipActiveOneHourList(starth,endh);
//筛选功能初始化
$("#resetBtn").on("click",function(){
$("select.selectpicker").each(function(){
@@ -230,13 +230,13 @@ function searchList(){
var end=$("#endDate").val();
$("#beginDateh").val(start);
$("#endDateh").val(end);
var entranceId=$("#entranceId").val();
// var entranceId=$("#entranceId").val();
loading();
if(start==''||end==''||end==null||start==null){
window.location.reload();
}else{
ipActiveMinuteList(start,end,entranceId);
ipActiveOneHourList(start,end,entranceId);
ipActiveMinuteList(start,end);
ipActiveOneHourList(start,end);
}
}
@@ -337,13 +337,13 @@ function showIpActiveChart(xData,series){
});
}
//活跃IP一小时间隔五分钟统计
function ipActiveMinuteList(beginDate,endDate,entranceId){
function ipActiveMinuteList(beginDate,endDate){
loading();
$.ajax({
url: '${ctx}/dashboard/ipActiveMinuteList',
type : "get",
dataType:"json",
data:{"beginDate":beginDate,"endDate":endDate,"entranceId":entranceId},
data:{"beginDate":beginDate,"endDate":endDate},
async:true,
timeout:50000,
success:function (rs) {
@@ -382,14 +382,14 @@ function showIpActiveChart(xData,series){
});
}
//活跃IP一小时统计
function ipActiveOneHourList(beginDate,endDate,entranceId){
function ipActiveOneHourList(beginDate,endDate){
$("#tbodyData").html("");
loading();
$.ajax({
url: '${ctx}/dashboard/ajaxIpActiveList',
type : "get" ,
dataType:"json",
data:{"beginDate":beginDate,"endDate":endDate,"entranceId":entranceId},
data:{"beginDate":beginDate,"endDate":endDate},
async:true,
timeout:50000,
success:function (data) {
@@ -415,7 +415,7 @@ function showIpActiveChart(xData,series){
var html = "<tr>";
html+= "<td class='tc'>"+rs.ipAddr+"</td>";
html+= "<td class='tc'>"+(rs.areaId==1? "Astana":"Almaty")+"</td>";
// html+= "<td class='tc'>"+(rs.areaId==1? "Astana":"Almaty")+"</td>";
html+= "<td class='tc'>"+rs.c2sByteLen+"</td>";
html+= "<td class='tc'>"+rs.s2cByteLen+"</td>";
html+= "<td class='tc'>"+byteNum+"</td>";
@@ -431,7 +431,7 @@ function showIpActiveChart(xData,series){
if(i==data.length-1){
html+="<tr class='tr-total hidden'>"
html+= "<td class='tc'>"+"<spring:message code='report_total'/>"+"</td>";
html+= "<td class='tc'>"+"--"+"</td>";
// html+= "<td class='tc'>"+"--"+"</td>";
html+= "<td class='tc'>"+totalc2sByte+"</td>";
html+= "<td class='tc'>"+totals2cByte+"</td>";
html+= "<td class='tc'>"+totalByte+"</td>";

View File

@@ -59,7 +59,7 @@
</div>
</div>
<div class="pull-left">
<div class="input-group">
<%-- <div class="input-group">
<div class="input-group-btn">
<span class="selectpicker form-control" ><spring:message code="area_id"/></span>
</div>
@@ -69,7 +69,7 @@
<option value="${dict.itemCode}"><spring:message code="${dict.itemValue}"></spring:message></option>
</c:forEach>
</select>
</div>
</div> --%>
</div>
<div class="pull-left">
@@ -154,8 +154,8 @@ $(document).ready(function(){
var endh=$("#endDateh").val();
$("#beginDate").val(starth);
$("#endDate").val(endh);
var entranceId=$("#entranceId").val();
ajaxProtocolList(starth,endh,entranceId);
// var entranceId=$("#entranceId").val();
ajaxProtocolList(starth,endh);
//筛选功能初始化
$("#resetBtn").on("click",function(){
$("select.selectpicker").each(function(){
@@ -176,16 +176,16 @@ function searchList(){
loading();
var start=$("#beginDate").val();
var end=$("#endDate").val();
var entranceId=$("#entranceId").val();
// var entranceId=$("#entranceId").val();
$("#beginDateh").val(start);
$("#endDateh").val(end);
if(start==''||end==''||end==null||start==null){
window.location.reload();
}else{
ajaxProtocolList(start,end,entranceId);
ajaxProtocolList(start,end);
}
}
function ajaxProtocolList(start,end,entranceId){
function ajaxProtocolList(start,end){
var protoType=$("#protoType").val();
var searchDirection=$("#searchDirection").val();
loading();
@@ -193,7 +193,7 @@ function ajaxProtocolList(start,end,entranceId){
url: '${ctx}/dashboard/traffic/protocolList',
type: 'get',
dataType: "json",
data:{"beginDate":start,"endDate":end,"protoType":protoType,"entranceId":entranceId,"searchDirection":searchDirection},
data:{"beginDate":start,"endDate":end,"protoType":protoType,"searchDirection":searchDirection},
async:true,
timeout:50000,
traditional:true,

View File

@@ -80,7 +80,7 @@
</div>
</div>
<div class="pull-left">
<div class="input-group">
<%-- <div class="input-group">
<div class="input-group-btn">
<span class="selectpicker form-control" ><spring:message code="area_id"/></span>
</div>
@@ -90,8 +90,8 @@
<option value="${dict.itemCode}"><spring:message code="${dict.itemValue}"></spring:message></option>
</c:forEach>
</select>
</div>
</div>
</div> --%>
</div>
<div class="pull-left">
<button type="button" class="btn blue"
onClick="return searchList()">
@@ -145,7 +145,7 @@
<th><spring:message code="trend"/></th>
<th><spring:message code="domain_name"/></th>
<th><spring:message code="client_ip"/></th>
<th><spring:message code="area_id"/></th>
<%-- <th><spring:message code="area_id"/></th> --%>
<th><spring:message code="packets"/></th>
<th><spring:message code="pps"/> </th>
<th><spring:message code="percentage"/> (<spring:message code="packets"/>)</th>
@@ -212,7 +212,7 @@
function ajaxWebTypeList(start, end) {
loading();
var domain = $("#domain").val();
var entranceId = $("#entranceId").val();
// var entranceId = $("#entranceId").val();
$.ajax({
url : '${ctx}/dashboard/traffic/websiteList',
type : 'get',
@@ -220,8 +220,8 @@
data : {
"beginDate" : start,
"endDate" : end,
"domain" : domain,
"entranceId" : entranceId
"domain" : domain/* ,
"entranceId" : entranceId */
},
async : true,
timeout : 50000,
@@ -395,7 +395,7 @@
html += '<td class="tc"><a onclick="searchByDomain(\''+data.webId+'\',\''+data.website+'\')"><i class="fa fa-line-chart"></i></a></td>';
html += "<td class='tc'>" + data.website + "</td>";
html += "<td class='tc'>" + data.uniqueNum + "</td>";
html += "<td class='tc'>" + (((data.entranceId)==1) ? "Astana":"Almaty") + "</td>";
/* html += "<td class='tc'>" + (((data.entranceId)==1) ? "Astana":"Almaty") + "</td>"; */
html += "<td class='tc'>" + Math.round(data.pktCount*100)/100 + "</td>";
html += "<td class='tc'>" + data.pps + "</td>";
html += "<td class='tc'>" + packper + " %</td>";
@@ -408,7 +408,7 @@
html+= "<td class='tc'>"+"<spring:message code='report_total'/>"+"</td>";
html+= "<td class='tc'>" +"--"+"</td>"
html+= "<td class='tc'>"+totalunique+"</td>";
html+= "<td class='tc'>" +"--"+"</td>";
/* html+= "<td class='tc'>" +"--"+"</td>"; */
html+= "<td class='tc'>"+parseInt(totalPackets).toFixed(2)+"</td>";
html+= "<td class='tc'>"+"--"+"</td>";
html+= "<td class='tc'>"+"100%"+"</td>";
@@ -426,8 +426,8 @@
function searchByDomain(domain,domainName){
var beginDate = $("#beginDateh").val();
var endDate = $("#endDateh").val();
var entranceId = $("#entranceId").val();
var url= "${ctx}/dashboard/traffic/domainTrans?beginDate="+beginDate+"&endDate="+endDate+"&domain="+domain+"&domainName="+domainName+"&entranceId="+entranceId;
// var entranceId = $("#entranceId").val();
var url= "${ctx}/dashboard/traffic/domainTrans?beginDate="+beginDate+"&endDate="+endDate+"&domain="+domain+"&domainName="+domainName;
openPicWindow(url);
}
function openPicWindow(url){

View File

@@ -5,7 +5,7 @@
<html>
<head>
<link rel="shortcut icon" href="${pageContext.request.contextPath}/static/pages/img/logo-K.ico" />
<link rel="shortcut icon" href="${pageContext.request.contextPath}/static/pages/img/logo-N.ico" />
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>${fns:getStringProperty('productName','NIS')}</title>
@@ -317,7 +317,7 @@ background:#3d3d3d;
<!-- BEGIN LOGO -->
<div class="page-logo">
<a href="index.html"> <img
src="${pageContext.request.contextPath}/static/layouts/layout/img/logo2-K.png"
src="${pageContext.request.contextPath}/static/layouts/layout/img/logo2-N.png"
alt="logo" class="logo-default" />
</a>
<!-- <button type="button" onclick="javascript:fullScreen();">a</button> -->
@@ -424,7 +424,7 @@ background:#3d3d3d;
</a>
</li>
</c:if>
<li class="dropdown dropdown-user nav">
<li class="dropdown dropdown-user nav hidden">
<a href="${pageContext.request.contextPath}/static/PotPlayerSetup64.exe" id="helpHref" target="_self" >
<i class="fa fa-cloud-download"></i>
<span class="username username-hide-on-mobile" id="help">
@@ -433,7 +433,7 @@ background:#3d3d3d;
</a>
</li>
<!-- 在线帮助 -->
<li class="dropdown dropdown-user nav">
<li class="dropdown dropdown-user nav hidden">
<a href="${ctx}/sys/help" id="helpHref" target="mainFrame" >
<i class="icon-question font-sharp"></i>
<span class="username username-hide-on-mobile" id="help">

View File

@@ -173,7 +173,7 @@ $(document).ready(function(){
<!-- 筛选搜索内容栏默认隐藏-->
<div class="col-md-12 filter-action-select-panle hide" >
<div class="row">
<div class="col-md-2">
<%-- <div class="col-md-2">
<div class="form-group">
<label><spring:message code="entrance"/></label>
<form:select path="entranceId" class="selectpicker form-control" data-live-search="true" data-live-search-placeholder="search">
@@ -183,7 +183,7 @@ $(document).ready(function(){
</c:forEach>
</form:select>
</div>
</div>
</div> --%>
<div class="col-md-2">
<div class="form-group">
<label><spring:message code="clj_ip"/></label>
@@ -317,11 +317,10 @@ $(document).ready(function(){
<spring:message code="block_drop"/>
</c:when>
<c:otherwise>
<c:set var="actions">${dict.itemValue}</c:set>
<spring:message code="${actions}"/>
</c:otherwise>
</c:choose>
<c:set var="actions">${dict.itemValue}</c:set>
</c:if>
</c:forEach>
</td>
@@ -329,13 +328,14 @@ $(document).ready(function(){
<td>${log.recvTime }</td>
<td>
<c:set var="entrances">${log.entranceId }</c:set>
<%-- <c:set var="entrances">${log.entranceId }</c:set>
<c:forEach items="${fns:getDictList('ENTRANCE')}" var="dic">
<c:if test="${dic.itemCode eq log.entranceId}">
<c:set var="entrances">${dic.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${entrances}"/>
<spring:message code="${entrances}"/> --%>
${log.entranceId }
</td>
<td>
<c:set var="labelProtoIds">${log.labelProtoId }</c:set>

View File

@@ -152,7 +152,7 @@
<!-- 筛选搜索内容栏默认隐藏-->
<div class="col-md-12 filter-action-select-panle hide" >
<div class="row">
<div class="col-md-2">
<%-- <div class="col-md-2">
<div class="form-group">
<label><spring:message code="entrance"/></label>
<form:select path="entranceId" class="selectpicker form-control" data-live-search="true" data-live-search-placeholder="search">
@@ -162,7 +162,7 @@
</c:forEach>
</form:select>
</div>
</div>
</div> --%>
<div class="col-md-2">
<div class="form-group">
@@ -291,13 +291,14 @@
<td>${log.recvTime }</td>
<td>
<c:set var="entrances">${log.entranceId }</c:set>
<%-- <c:set var="entrances">${log.entranceId }</c:set>
<c:forEach items="${fns:getDictList('ENTRANCE')}" var="dic">
<c:if test="${dic.itemCode eq log.entranceId}">
<c:set var="entrances">${dic.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${entrances}"/>
<spring:message code="${entrances}"/> --%>
${log.entranceId }
</td>
<td >${log.capIp}</td>
<td>

View File

@@ -207,7 +207,7 @@
<div class="row">
<div class="col-md-2">
<%-- <div class="col-md-2">
<div class="form-group">
<label><spring:message code="entrance"/></label>
<form:select path="entranceId" class="selectpicker form-control" data-live-search="true" data-live-search-placeholder="search">
@@ -217,7 +217,7 @@
</c:forEach>
</form:select>
</div>
</div>
</div> --%>
<div class="col-md-2">
<div class="form-group">
@@ -272,7 +272,7 @@
</div> --%>
<div class="row">
<div class="col-md-2">
<%-- <div class="col-md-2">
<div class="form-group">
<label class="control-label"><spring:message code='isp'/></label>
<select id="ispSelect" name="ispCode" title="<spring:message code="select"/>" class="selectpicker form-control " data-max-options="10" data-selected-text-format="count > 3" multiple data-live-search="true" data-live-search-placeholder="<spring:message code="search"/>">
@@ -282,7 +282,7 @@
</c:forEach>
</select>
</div>
</div>
</div> --%>
<div class="col-md-2">
@@ -432,14 +432,14 @@
<td>${log.foundTime }</td>
<td>${log.recvTime }</td>
<td>
<c:set var="entrances">${log.entranceId }</c:set>
<td>${log.entranceId }
<%-- <c:set var="entrances">${log.entranceId }</c:set>
<c:forEach items="${fns:getDictList('ENTRANCE')}" var="dic">
<c:if test="${dic.itemCode eq log.entranceId}">
<c:set var="entrances">${dic.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${entrances}"/>
<spring:message code="${entrances}"/> --%>
</td>
<td>

View File

@@ -157,7 +157,7 @@ $(document).ready(function(){
<!-- 筛选搜索内容栏默认隐藏-->
<div class="col-md-12 filter-action-select-panle hide" >
<div class="row">
<div class="col-md-2">
<%-- <div class="col-md-2">
<div class="form-group">
<label><spring:message code="entrance"/></label>
<form:select path="entranceId" class="selectpicker form-control" data-live-search="true" data-live-search-placeholder="search">
@@ -167,7 +167,7 @@ $(document).ready(function(){
</c:forEach>
</form:select>
</div>
</div>
</div> --%>
<div class="col-md-2">
<div class="form-group">
<label><spring:message code="clj_ip"/></label>
@@ -288,14 +288,14 @@ $(document).ready(function(){
<td>${log.foundTime }</td>
<td>${log.recvTime }</td>
<td>
<c:set var="entrances">${log.entranceId }</c:set>
<td>${log.entranceId }
<%-- <c:set var="entrances">${log.entranceId }</c:set>
<c:forEach items="${fns:getDictList('ENTRANCE')}" var="dic">
<c:if test="${dic.itemCode eq log.entranceId}">
<c:set var="entrances">${dic.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${entrances}"/>
<spring:message code="${entrances}"/> --%>
</td>
<td>

View File

@@ -153,7 +153,7 @@
<!-- 筛选搜索内容栏默认隐藏-->
<div class="col-md-12 filter-action-select-panle hide" >
<div class="row">
<div class="col-md-2">
<%-- <div class="col-md-2">
<div class="form-group">
<label><spring:message code="entrance"/></label>
<form:select path="entranceId" class="selectpicker form-control" data-live-search="true" data-live-search-placeholder="search">
@@ -163,7 +163,7 @@
</c:forEach>
</form:select>
</div>
</div>
</div> --%>
<div class="col-md-2">
<div class="form-group">
@@ -300,13 +300,14 @@
<td>${log.recvTime }</td>
<td>
<c:set var="entrances">${log.entranceId }</c:set>
<%-- <c:set var="entrances">${log.entranceId }</c:set>
<c:forEach items="${fns:getDictList('ENTRANCE')}" var="dic">
<c:if test="${dic.itemCode eq log.entranceId}">
<c:set var="entrances">${dic.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${entrances}"/>
<spring:message code="${entrances}"/> --%>
${log.entranceId }
</td>
<td>

View File

@@ -155,7 +155,7 @@ $(document).ready(function(){
<!-- 筛选搜索内容栏默认隐藏-->
<div class="col-md-12 filter-action-select-panle hide" >
<div class="row">
<div class="col-md-2">
<%-- <div class="col-md-2">
<div class="form-group">
<label><spring:message code="entrance"/></label>
<form:select path="entranceId" class="selectpicker form-control" data-live-search="true" data-live-search-placeholder="search">
@@ -165,7 +165,7 @@ $(document).ready(function(){
</c:forEach>
</form:select>
</div>
</div>
</div> --%>
<div class="col-md-2">
<div class="form-group">
@@ -283,13 +283,13 @@ $(document).ready(function(){
<td>${log.recvTime }</td>
<td>
<c:set var="entrances">${log.entranceId }</c:set>
<%-- <c:set var="entrances">${log.entranceId }</c:set>
<c:forEach items="${fns:getDictList('ENTRANCE')}" var="dic">
<c:if test="${dic.itemCode eq log.entranceId}">
<c:set var="entrances">${dic.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${entrances}"/>
<spring:message code="${entrances}"/> --%>
</td>
<td>

View File

@@ -182,7 +182,7 @@
<!-- 筛选搜索内容栏默认隐藏-->
<div class="col-md-12 filter-action-select-panle hide" >
<div class="row">
<div class="col-md-2">
<%-- <div class="col-md-2">
<div class="form-group">
<label><spring:message code="entrance"/></label>
<form:select path="entranceId" class="selectpicker form-control" data-live-search="true" data-live-search-placeholder="search">
@@ -192,7 +192,7 @@
</c:forEach>
</form:select>
</div>
</div>
</div> --%>
<div class="col-md-2">
<div class="form-group">

View File

@@ -164,7 +164,7 @@
<div class="col-md-12 filter-action-select-panle hide" >
<div class="row">
<div class="col-md-2">
<%-- <div class="col-md-2">
<div class="form-group">
<label><spring:message code="entrance"/></label>
<form:select path="entranceId" class="selectpicker form-control" data-live-search="true" data-live-search-placeholder="search">
@@ -174,7 +174,7 @@
</c:forEach>
</form:select>
</div>
</div>
</div> --%>
<div class="col-md-2">
<div class="form-group">
@@ -327,14 +327,14 @@
<td>${log.foundTime }</td>
<td>${log.recvTime }</td>
<td>
<c:set var="entrances">${log.entranceId }</c:set>
<td>${log.entranceId }
<%-- <c:set var="entrances">${log.entranceId }</c:set>
<c:forEach items="${fns:getDictList('ENTRANCE')}" var="dic">
<c:if test="${dic.itemCode eq log.entranceId}">
<c:set var="entrances">${dic.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${entrances}"/>
<spring:message code="${entrances}"/> --%>
</td>
<td>

View File

@@ -0,0 +1,451 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ include file="/WEB-INF/include/taglib.jsp"%>
<html>
<head>
<title>
<spring:message code="http_obj_scan_result"></spring:message>
</title>
<script>
$(document).ready(function() {
//reset
$("#resetBtn").on("click",function(){
$("select.selectpicker").each(function(){
$(this).selectpicker('val',$(this).find('option:first').val());
$(this).find("option").attr("selected",false);
$(this).find("option:first").attr("selected",true);
});
$(".Wdate").attr("value",'');
$(':input','#searchForm')
.not(':button,:submit,:reset,:hidden')
.attr("value",'');
$("#searchForm")[0].reset();
});
//筛选功能
filterActionInit();
//异步获取voip相关信息
$("span[id^=open]").click(function(){
var openId=$(this).attr("id");
var closeId=$(this).attr("id").replace("open","close");
var index=$(this).attr("id").replace("open","");
$("#"+openId).hide();
$("#"+closeId).show();
var compileId=$(this).attr("compileId");
// var cfgId=$(this).attr("cfgId");
if($("#"+openId).parent().parent().next("tr").hasClass("child")){
$("#"+openId).parent().parent().next("tr").show();
}else{
$.ajax({
type:'post',
async:false,
url:'${ctx}/ntc/website/ajaxHttpSubList',
data:{"compileId":compileId,"index":index},
dataType:"html",
success:function(data){
var subTab="<tr class='child'>"+
"<td colspan='"+($(".table tr").eq(0).children("th").length-1)+"'>";
var html="";
html+="<div class='row'>";
html = html+data;
subTab=subTab+html;
subTab+="</td>";
subTab+="</tr>";
$("#"+openId).parent().parent().after(subTab);
$("div[name='tabTitle"+index+"']").get(0).click();
}
});
}
});
$("span[id^=close]").on("click",function(){
var closeId=$(this).attr("id");
var openId=$(this).attr("id").replace("close","open");
$("#"+closeId).hide();
$("#"+openId).show();
$("#"+closeId).parent().parent().next("tr").hide();
});
});
</script>
</head>
<body>
<div class="page-content">
<div class="theme-panel hidden-xs hidden-sm">
</div>
<h3 class="page-title">
<spring:message code="http_obj_scan_result"/>
</h3>
<h5 class="page-header"></h5>
<div class="col-md-12">
<div class="portlet">
<div class="portlet-body">
<div class="row" >
<form:form id="searchForm" modelAttribute="log" action="${ctx}/log/ntc/httpObjScanResult/list" method="post" class="form-search">
<input id="pageNo" name="pageNo" type="hidden" value="${page.pageNo}"/>
<input id="pageSize" name="pageSize" type="hidden" value="${page.pageSize}"/>
<input id="functionId" name="functionId" type="hidden" value="${log.functionId}"/>
<input id="jboxtCustomValue" type="hidden" value="true"/>
<input id="isLogTotalSearch" name="isLogTotalSearch" type="hidden" value="${log.isLogTotalSearch}"/>
<!-- 筛选按钮展开状态-->
<input id="isFilterAction" name="isFilterAction" type="hidden" value="${log.isFilterAction }"/><sys:tableSort id="orderBy" name="orderBy" value="${page.orderBy}" callback="page();"/>
<!-- 搜索内容与操作按钮栏 -->
<div class="col-md-12">
<div class="pull-left">
<div class="input-group">
<div class="input-group-btn">
<span class="selectpicker form-control" ><spring:message code="begin_date"/></span>
</div>
<%-- <input id="searchFoundStartTime" name="searchFoundStartTime" type="text" readonly="readonly" maxlength="20" class="form-control Wdate input-medium"
value="${log.searchFoundStartTime}" onclick="WdatePicker({onpicked:setTimee,dateFmt:'yyyy-MM-dd HH:mm:ss',isShowClear:true,maxDate:'#F{$dp.$D(\'searchFoundEndTime\')}'});"/> --%>
<input name="searchFoundStartTime" id="searchFoundStartTime" type="text" readonly="readonly" maxlength="20" class="form-control Wdate input-medium"
value="${log.searchFoundStartTime}" onclick="WdatePicker({onpicked:function(){this.onchange()},dateFmt:'yyyy-MM-dd HH:mm:ss',isShowClear:true,maxDate:'#F{\'new Date()\'}'});" onchange="setStartTime('#searchFoundStartTime','#searchFoundEndTime',1,'d','yyyy-MM-dd hh:mm:ss',false)"/>
</div>
</div>
<div class="pull-left">
<div class="input-group">
<div class="input-group-btn">
<span class="selectpicker form-control" ><spring:message code="end_date"/></span>
</div>
<%-- <input id="searchFoundEndTime" name="searchFoundEndTime" type="text" readonly="readonly" maxlength="20" class="form-control Wdate input-medium"
value="${log.searchFoundEndTime}" onclick="WdatePicker({dateFmt:'yyyy-MM-dd HH:mm:ss',isShowClear:true,minDate:'#F{$dp.$D(\'searchFoundStartTime\')}',maxDate:'#F{$dp.$D(\'searchFoundStartTime\',{d:1})}'});"/> --%>
<input name="searchFoundEndTime" id="searchFoundEndTime" type="text" readonly="readonly" maxlength="20" class="form-control Wdate input-medium"
value="${log.searchFoundEndTime}" onclick="WdatePicker({onpicked:function(){this.onchange()},dateFmt:'yyyy-MM-dd HH:mm:ss',isShowClear:true,maxDate:'#F{\'new Date()\'}'});" onchange="setEndTime('#searchFoundStartTime','#searchFoundEndTime',1,'d','yyyy-MM-dd hh:mm:ss',false)"/>
</div>
</div>
<div class="pull-left">
<button type="button" class="btn blue" onClick="return page()"> <i class="fa fa-search"></i> <spring:message code="search"/> </button>
<button type="button" class="btn btn-default" id="resetBtn"> <i class="fa fa-refresh"></i> <spring:message code="reset"/> </button>
<button type="button" class="btn btn-default" id="filter-btn"> <spring:message code="filter"/><i class="fa fa-angle-double-down"></i></button>
</div>
<div class="pull-right">
<div class="btn-group">
<button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown">
<i class="fa fa-wrench"></i> <spring:message code="export"></spring:message>
<i class="fa fa-angle-down"></i>
</button>
<ul class="dropdown-menu pull-right" style="min-width: 110px;" >
<li><sys:delRow url="${ctx}/log/ntc/httpObjScanResult/exportHttpObjScanResult?type=excel" searchUrl="${ctx}/log/ntc/httpObjScanResult/list" id="contentTable" maxRow="10000" label="excel"></sys:delRow></li>
<li><sys:delRow url="${ctx}/log/ntc/httpObjScanResult/exportHttpObjScanResult?type=csv" searchUrl="${ctx}/log/ntc/httpObjScanResult/list" id="contentTable" maxRow="10000" label="csv"></sys:delRow></li>
</ul>
</div>
<a class="btn btn-icon-only btn-default setfields tooltips"
data-container="body" data-placement="top" data-original-title=<spring:message code="custom_columns"/> href="javascript:;">
<i class="icon-wrench"></i>
</a>
</div>
</div>
<!-- 搜索内容与操作按钮栏 -->
<!-- 筛选搜索内容栏默认隐藏-->
<div class="col-md-12 filter-action-select-panle hide" >
<div class="row">
<%-- <div class="col-md-2">
<div class="form-group">
<label><spring:message code="entrance"/></label>
<form:select path="entranceId" class="selectpicker form-control" data-live-search="true" data-live-search-placeholder="search">
<form:option value=""><spring:message code="select"/></form:option>
<c:forEach items="${fns:getDictList('ENTRANCE')}" var="entrance">
<form:option value="${entrance.itemCode}"><spring:message code="${entrance.itemValue}"></spring:message></form:option>
</c:forEach>
</form:select>
</div>
</div> --%>
<div class="col-md-2">
<div class="form-group">
<label><spring:message code="clj_ip"></spring:message></label>
<input name="capIp" type="text" class="form-control" value="${log.capIp }"/>
</div>
</div>
<div class="col-md-2">
<div class="form-group">
<label class="control-label"><spring:message code='transport_layer_protocol'/></label>
<form:select path="transProto" class="selectpicker form-control">
<form:option value=""><spring:message code="select"/></form:option>
<c:forEach items="${fns:getDictList('LOG_PROTOCOL')}" var="protocol" >
<form:option value="${protocol.itemCode}"><spring:message code="${protocol.itemValue}"></spring:message></form:option>
</c:forEach>
</form:select>
</div>
</div>
<div class="col-md-2">
<div class="form-group">
<label><spring:message code="serverip"></spring:message></label>
<input name="dIp" type="text" class="form-control" value="${log.dIp }"/>
</div>
</div>
<div class="col-md-2">
<div class="form-group">
<label><spring:message code="clientip"></spring:message></label>
<input name="sIp" type="text" class="form-control" value="${log.sIp }"/>
</div>
</div>
</div>
<div class="row">
<div class="col-md-2">
<div class="form-group">
<label><spring:message code="server_port"></spring:message></label>
<input name="dPort" type="text" class="form-control logCfgId number" value="${log.dPort }"/>
</div>
</div>
<div class="col-md-2">
<div class="form-group">
<label><spring:message code="client_port"></spring:message></label>
<input name="sPort" type="text" class="form-control logCfgId number" value="${log.sPort }"/>
</div>
</div>
<div class="col-md-4">
<div class="form-group">
<label>URL</label>
<input name="url" type="text" class="form-control" value="${log.url }"/>
</div>
</div>
</div>
</div>
<!-- /筛选搜索内容栏 结束-->
</form:form>
</div>
<sys:message content="${message}"/>
<div class="table-responsive">
<table id="contentTable" class="table table-striped table-bordered table-condensed text-nowrap logTb">
<thead>
<tr>
<th><spring:message code="log"/></th>
<%-- <th class="sort-column cfg_id " isVisible="false" column="cfg_id"><spring:message code="cfg_id"/></th> --%>
<%-- <th class="sort-column service" isVisible="false" column="action"><spring:message code="action"/></th> --%>
<th class="sort-column found_time" column="found_time"><spring:message code="found_time"/></th>
<th class="sort-column recv_time" isVisible="false" column="recv_time"><spring:message code="recv_time"/></th>
<th class="sort-column entrance_id" isVisible="false" column="entrance_id"><spring:message code="entrance_id"/></th>
<th class="sort-column url" column="URL"> URL </th>
<th class="sort-column req_hdr_key" isVisible="false" column="req_hdr_key"><spring:message code="req_hdr_key"/></th>
<th class="sort-column req_hdr_file" column="req_hdr_file"><spring:message code="req_hdr_file"/></th>
<th class="sort-column req_body_key" isVisible="false" column="req_body_key"><spring:message code="req_body_key"/></th>
<th class="sort-column req_body_file" column="req_body_file"><spring:message code="req_body_file"/></th>
<th class="sort-column res_hdr_key" isVisible="false" column="res_hdr_key"><spring:message code="res_hdr_key"/></th>
<th class="sort-column res_hdr_file" column="res_hdr_file"><spring:message code="res_hdr_file"/></th>
<th class="sort-column res_body_key" isVisible="false" column="res_body_key"><spring:message code="res_body_key"/></th>
<th class="sort-column res_body_file" column="res_body_file"><spring:message code="res_body_file"/></th>
<th class="sort-column topic_name" isVisible="false" column="topic_name"><spring:message code="topic_name"/></th>
<th class="sort-column malware_id" isVisible="false" column="malware_id"><spring:message code="malware_id"/></th>
<th class="sort-column malware_type" column="malware_type"><spring:message code="malware_type"/></th>
<th class="sort-column malware_name" column="malware_name"><spring:message code="malware_name"/></th>
<th class="sort-column cap_ip" isVisible="false" column="clj_ip"><spring:message code="clj_ip"/></th>
<th class="sort-column trans_proto" column="transport_layer_protocol"><spring:message code="transport_layer_protocol"/></th>
<th class="sort-column addr_type" column="addr_type"><spring:message code='addr_type'/></th>
<th class="sort-column d_ip" column="server_ip"><spring:message code="server_ip"/></th>
<th class="sort-column s_ip" column="client_ip"><spring:message code="client_ip"/></th>
<th class="sort-column d_port" column="server_port"><spring:message code="server_port"/></th>
<th class="sort-column s_port" column="client_port"><spring:message code="client_port"/></th>
<th class="sort-column device_id" isVisible="false" column="deviceid"><spring:message code="deviceid"/></th>
<th class="sort-column link_id" isVisible="false" column="link_id"><spring:message code="link_id"/></th>
<th class="sort-column encap_type" column="encap_type"><spring:message code="encap_type"/></th>
<th class="sort-column direction" column="direction"><spring:message code="direction"/></th>
<th class="sort-column inner_smac" column="inner_smac"><spring:message code="inner_smac"/></th>
<th class="sort-column inner_dmac" column="inner_dmac"><spring:message code="inner_dmac"/></th>
<th class="sort-column stream_dir" column="stream_type"><spring:message code="stream_type"/></th>
<th class="sort-column addr_list" column="nest_addr_list"><spring:message code="nest_addr_list"/></th>
<th class="sort-column server_locate" column="server_locate"><spring:message code='server_locate'/></th>
<th class="sort-column client_locate" column="client_locate"><spring:message code='client_locate'/></th>
<th class="sort-column s_asn" isVisible="false" column="s_asn"><spring:message code='s_asn'/></th>
<th class="sort-column d_asn" isVisible="false" column="d_asn"><spring:message code='d_asn'/></th>
<th class="sort-column s_subscribe_id" isVisible="false" column="s_subscribe_id"><spring:message code='s_subscribe_id'/></th>
<th class="sort-column d_subscribe_id" isVisible="false" column="d_subscribe_id"><spring:message code='d_subscribe_id'/></th>
<%-- <th class="sort-column user_region" isVisible="false" column="user_region"><spring:message code='user_region'/></th> --%>
<c:if test="${fns:getUser().isAdmin()}"><th class="sort-column scene_file" column="scene_file"><spring:message code='scene_file'/></th></c:if>
</tr>
</thead>
<tbody>
<c:forEach var="log" items="${page.list }" varStatus="status">
<tr>
<td>
<%-- <span id="open${status.index}" class="log-open-cfg" compileId="${log.cfgId }"> ▷ </span><span style="display: none" id="close${status.index}" > ▼ </span> --%>
<a href="javascript:void(0)" name="viewLogInfo" url="${ctx}/ntc/website/ajaxHttpSubList" compileId="${log.cfgId }" ><i class="icon-book-open"></i></a>
<!-- </td> -->
<%-- <td>${log.cfgId }</td> --%>
<td>${log.foundTime }</td>
<td>${log.recvTime}</td>
<td>
<%-- <c:set var="entrances">${log.entranceId }</c:set>
<c:forEach items="${fns:getDictList('ENTRANCE')}" var="dic">
<c:if test="${dic.itemCode eq log.entranceId}">
<c:set var="entrances">${dic.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${entrances}"/> --%>
${log.entranceId }
</td>
<td>${log.url}</td>
<td>${log.reqHdrKey }</td>
<td>
<c:if test="${fn:startsWith(log.reqHdrFile, 'http')}">
<a href="${log.reqHdrFile}" data-original-title="${log.reqHdrFile}" target="_blank"
class="tooltips" data-flag="false" data-html="true" data-placement="top">
${fn:substring(log.reqHdrFile,0,20) }
</a>
</c:if>
<c:if test="${!fn:startsWith(log.reqHdrFile, 'http') and !empty log.reqHdrFile}">
<a href="http://${log.reqHdrFile}" data-original-title="http://${log.reqHdrFile}" target="_blank"
class="tooltips" data-flag="false" data-html="true" data-placement="top">
http://${fn:substring(log.reqHdrFile,0,20) }
</a>
</c:if>
</td>
<td>${log.reqBodyKey }</td>
<td>
<c:if test="${fn:startsWith(log.reqBodyFile, 'http')}">
<a href="${log.reqBodyFile}" data-original-title="${log.reqBodyFile}" target="_blank"
class="tooltips" data-flag="false" data-html="true" data-placement="top">
${fn:substring(log.reqBodyFile,0,20) }
</a>
</c:if>
<c:if test="${!fn:startsWith(log.reqBodyFile, 'http') and !empty log.reqBodyFile}">
<a href="http://${log.reqBodyFile}" data-original-title="http://${log.reqBodyFile}" target="_blank"
class="tooltips" data-flag="false" data-html="true" data-placement="top">
http://${fn:substring(log.reqBodyFile,0,20) }
</a>
</c:if>
</td>
<td>${log.resHdrKey }</td>
<td>
<c:if test="${fn:startsWith(log.resHdrFile, 'http')}">
<a href="${log.resHdrFile}" data-original-title="${log.resHdrFile}" target="_blank"
class="tooltips" data-flag="false" data-html="true" data-placement="top">
${fn:substring(log.resHdrFile,0,20) }
</a>
</c:if>
<c:if test="${!fn:startsWith(log.resHdrFile, 'http') and !empty log.resHdrFile}">
<a href="http://${log.resHdrFile}" data-original-title="http://${log.resHdrFile}" target="_blank"
class="tooltips" data-flag="false" data-html="true" data-placement="top">
http://${fn:substring(log.resHdrFile,0,20) }
</a>
</c:if>
</td>
<td>${log.resBodyKey }</td>
<td>
<c:if test="${fn:startsWith(log.resBodyFile, 'http')}">
<a href="${log.resBodyFile}" data-original-title="${log.resBodyFile}" target="_blank"
class="tooltips" data-flag="false" data-html="true" data-placement="top">
${fn:substring(log.resBodyFile,0,20) }
</a>
</c:if>
<c:if test="${!fn:startsWith(log.resBodyFile, 'http') and !empty log.resBodyFile}">
<a href="http://${log.resBodyFile}" data-original-title="http://${log.resBodyFile}" target="_blank"
class="tooltips" data-flag="false" data-html="true" data-placement="top">
http://${fn:substring(log.resBodyFile,0,20) }
</a>
</c:if>
</td>
<td >${log.topicName}</td>
<td >${log.malwareId}</td>
<td >${log.malwareType}</td>
<td >${log.malwareName}</td>
<td >${log.capIp}</td>
<td>
<c:set var="transProtos">${log.transProto }</c:set>
<c:forEach items="${fns:getDictList('LOG_PROTOCOL')}" var="dic">
<c:if test="${dic.itemCode eq log.transProto}">
<c:set var="transProtos">${dic.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${transProtos}"/>
</td>
<td>
<c:set var="addrTypes">${log.addrType }</c:set>
<c:forEach items="${fns:getDictList('IP_TYPE')}" var="dic">
<c:if test="${log.addrType==dic.itemCode}">
<c:set var="addrTypes">${dic.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${addrTypes}"/>
</td>
<td>${log.dIp}</td>
<td>${log.sIp}</td>
<td>${log.dPort}</td>
<td>${log.sPort}</td>
<td>
<c:set var="deviceIds">${log.deviceId }</c:set>
<c:forEach items="${fns:getDictList('DEVICE')}" var="device">
<c:if test="${device.itemCode eq log.deviceId}">
<c:set var="deviceIds">${device.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${deviceIds}"/>
</td>
<td>
<c:set var="linkIds">${log.linkId }</c:set>
<c:forEach items="${fns:getDictList('LINK')}" var="link">
<c:if test="${link.itemCode eq log.linkId}">
<c:set var="linkIds">${link.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${linkIds}"/>
</td>
<td>
<c:set var="encapTypes">${log.encapType }</c:set>
<c:forEach items="${fns:getDictList('ENCAP_TYPE')}" var="encapType">
<c:if test="${encapType.itemCode eq log.encapType}">
<c:set var="encapTypes">${encapType.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${encapTypes}"/>
</td>
<td>
<c:set var="directions">${log.direction }</c:set>
<c:forEach items="${fns:getDictList('LOG_DIRECTION')}" var="direction">
<c:if test="${direction.itemCode eq log.direction}">
<c:set var="directions">${direction.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${directions}"/>
</td>
<td>${log.innerSmac }</td>
<td>${log.innerDmac }</td>
<td>
<c:set var="streamDirs">${log.streamDir }</c:set>
<c:forEach items="${fns:getDictList('LOG_STREAM_TYPE')}" var="streamType">
<c:if test="${streamType.itemCode eq log.streamDir}">
<c:set var="streamDirs">${streamType.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${streamDirs}"/>
</td>
<td>${log.addrList }</td>
<td>${log.serverLocate}</td>
<td>${log.clientLocate}</td>
<td>${log.sAsn}</td>
<td>${log.dAsn}</td>
<td>${log.sSubscribeId}</td>
<td>${log.dSubscribeId}</td>
<%-- <td>${log.userRegion}</td> --%>
<c:if test="${fns:getUser().isAdmin()}"><td>${log.sceneFile}</td></c:if>
</tr>
</c:forEach>
</tbody>
</table>
<div class="page">${page}</div>
</div>
</div>
</div>
</div>
</div>
</body>
</html>

View File

@@ -164,7 +164,7 @@
<div class="col-md-12 filter-action-select-panle hide" >
<div class="row">
<div class="col-md-2">
<%-- <div class="col-md-2">
<div class="form-group">
<label><spring:message code="entrance"/></label>
<form:select path="entranceId" class="selectpicker form-control" data-live-search="true" data-live-search-placeholder="search">
@@ -174,7 +174,7 @@
</c:forEach>
</form:select>
</div>
</div>
</div> --%>
<!-- <div class="col-md-2"> -->
<!-- <div class="form-group"> -->
@@ -370,14 +370,14 @@
<td>${log.referer}</td>
<td>${log.foundTime }</td>
<td>
<c:set var="entrances">${log.entranceId }</c:set>
<td>${log.entranceId }
<%-- <c:set var="entrances">${log.entranceId }</c:set>
<c:forEach items="${fns:getDictList('ENTRANCE')}" var="dic">
<c:if test="${dic.itemCode eq log.entranceId}">
<c:set var="entrances">${dic.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${entrances}"/>
<spring:message code="${entrances}"/> --%>
</td>
<td>${log.dIp}</td>
<td>${log.sIp}</td>

View File

@@ -156,7 +156,7 @@
<!-- 筛选搜索内容栏默认隐藏-->
<div class="col-md-12 filter-action-select-panle hide" >
<div class="col-md-2">
<%-- <div class="col-md-2">
<div class="form-group">
<label><spring:message code="entrance"/></label>
<form:select path="entranceId" class="selectpicker form-control" data-live-search="true" data-live-search-placeholder="search">
@@ -166,7 +166,7 @@
</c:forEach>
</form:select>
</div>
</div>
</div> --%>
<div class="col-md-2">
<div class="form-group">
@@ -284,13 +284,14 @@
<td>${log.foundTime }</td>
<td>${log.recvTime }</td>
<td>
<c:set var="entrances">${log.entranceId }</c:set>
<%-- <c:set var="entrances">${log.entranceId }</c:set>
<c:forEach items="${fns:getDictList('ENTRANCE')}" var="dic">
<c:if test="${dic.itemCode eq log.entranceId}">
<c:set var="entrances">${dic.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${entrances}"/>
<spring:message code="${entrances}"/> --%>
${log.entranceId }
</td>
<td >${log.capIp}</td>
<td>

View File

@@ -152,7 +152,7 @@
<!-- 筛选搜索内容栏默认隐藏-->
<div class="col-md-12 filter-action-select-panle hide" >
<div class="col-md-2">
<%-- <div class="col-md-2">
<div class="form-group">
<label><spring:message code="entrance"/></label>
<form:select path="entranceId" class="selectpicker form-control" data-live-search="true" data-live-search-placeholder="search">
@@ -162,7 +162,7 @@
</c:forEach>
</form:select>
</div>
</div>
</div> --%>
<div class="col-md-2">
<div class="form-group">
@@ -280,13 +280,14 @@
<td>${log.foundTime }</td>
<td>${log.recvTime }</td>
<td>
<c:set var="entrances">${log.entranceId }</c:set>
<%-- <c:set var="entrances">${log.entranceId }</c:set>
<c:forEach items="${fns:getDictList('ENTRANCE')}" var="dic">
<c:if test="${dic.itemCode eq log.entranceId}">
<c:set var="entrances">${dic.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${entrances}"/>
<spring:message code="${entrances}"/> --%>
${log.entranceId }
</td>
<td >${log.capIp}</td>
<td>

View File

@@ -119,7 +119,7 @@
<!-- 筛选搜索内容栏默认隐藏-->
<div class="col-md-12 filter-action-select-panle hide" >
<div class="row">
<div class="col-md-2">
<%-- <div class="col-md-2">
<div class="form-group">
<label><spring:message code="entrance"/></label>
<form:select path="entranceId" class="selectpicker form-control" data-live-search="true" data-live-search-placeholder="search">
@@ -129,7 +129,7 @@
</c:forEach>
</form:select>
</div>
</div>
</div> --%>
<div class="col-md-2">
<div class="form-group">
@@ -251,14 +251,14 @@
</td>
<td>${log.foundTime }</td>
<td>${log.recvTime }</td>
<td>
<c:set var="entrances">${log.entranceId }</c:set>
<td>${log.entranceId }
<%-- <c:set var="entrances">${log.entranceId }</c:set>
<c:forEach items="${fns:getDictList('ENTRANCE')}" var="dic">
<c:if test="${dic.itemCode eq log.entranceId}">
<c:set var="entrances">${dic.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${entrances}"/>
<spring:message code="${entrances}"/> --%>
</td>
<td>${log.natIp }</td>

View File

@@ -120,7 +120,7 @@
<!-- 筛选搜索内容栏默认隐藏-->
<div class="col-md-12 filter-action-select-panle hide" >
<div class="row">
<div class="col-md-2">
<%-- <div class="col-md-2">
<div class="form-group">
<label><spring:message code="entrance"/></label>
<form:select path="entranceId" class="selectpicker form-control" data-live-search="true" data-live-search-placeholder="search">
@@ -130,7 +130,7 @@
</c:forEach>
</form:select>
</div>
</div>
</div> --%>
<div class="col-md-2">
<div class="form-group">
<label><spring:message code="clj_ip"></spring:message></label>
@@ -250,14 +250,14 @@
</td>
<td>${log.foundTime }</td>
<td>${log.recvTime }</td>
<td>
<c:set var="entrances">${log.entranceId }</c:set>
<td>${log.entranceId }
<%-- <c:set var="entrances">${log.entranceId }</c:set>
<c:forEach items="${fns:getDictList('ENTRANCE')}" var="dic">
<c:if test="${dic.itemCode eq log.entranceId}">
<c:set var="entrances">${dic.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${entrances}"/>
<spring:message code="${entrances}"/> --%>
</td>
<td>${log.natIp }</td>

View File

@@ -162,7 +162,7 @@
<!-- 筛选搜索内容栏默认隐藏-->
<div class="col-md-12 filter-action-select-panle hide" >
<div class="row">
<div class="col-md-2">
<%-- <div class="col-md-2">
<div class="form-group">
<label><spring:message code="entrance"/></label>
<form:select path="entranceId" class="selectpicker form-control" data-live-search="true" data-live-search-placeholder="search">
@@ -172,7 +172,7 @@
</c:forEach>
</form:select>
</div>
</div>
</div> --%>
<div class="col-md-2">
<div class="form-group">

View File

@@ -152,7 +152,7 @@
<!-- 筛选搜索内容栏默认隐藏-->
<div class="col-md-12 filter-action-select-panle hide" >
<div class="row">
<div class="col-md-2">
<%-- <div class="col-md-2">
<div class="form-group">
<label><spring:message code="entrance"/></label>
<form:select path="entranceId" class="selectpicker form-control" data-live-search="true" data-live-search-placeholder="search">
@@ -162,7 +162,7 @@
</c:forEach>
</form:select>
</div>
</div>
</div> --%>
<div class="col-md-2">
<div class="form-group">
@@ -297,14 +297,14 @@
<td>${log.foundTime }</td>
<td>${log.recvTime }</td>
<td>
<c:set var="entrances">${log.entranceId }</c:set>
<td>${log.entranceId }
<%-- <c:set var="entrances">${log.entranceId }</c:set>
<c:forEach items="${fns:getDictList('ENTRANCE')}" var="dic">
<c:if test="${dic.itemCode eq log.entranceId}">
<c:set var="entrances">${dic.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${entrances}"/>
<spring:message code="${entrances}"/> --%>
</td>
<td>${log.mailProto }</td>

View File

@@ -165,7 +165,7 @@ $(document).ready(function(){
</form:select>
</div>
</div> --%>
<div class="col-md-2">
<%-- <div class="col-md-2">
<div class="form-group">
<label><spring:message code="entrance"/></label>
<form:select path="entranceId" class="selectpicker form-control" data-live-search="true" data-live-search-placeholder="search">
@@ -175,7 +175,7 @@ $(document).ready(function(){
</c:forEach>
</form:select>
</div>
</div>
</div> --%>
<div class="col-md-2">
<div class="form-group">
<label><spring:message code="clj_ip"/></label>
@@ -286,14 +286,14 @@ $(document).ready(function(){
<td>${log.foundTime }</td>
<td>${log.recvTime }</td>
<td>
<c:set var="entrances">${log.entranceId }</c:set>
<td>${log.entranceId }
<%-- <c:set var="entrances">${log.entranceId }</c:set>
<c:forEach items="${fns:getDictList('ENTRANCE')}" var="dic">
<c:if test="${dic.itemCode eq log.entranceId}">
<c:set var="entrances">${dic.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${entrances}"/>
<spring:message code="${entrances}"/> --%>
</td>
<td>${log.pid}</td>

View File

@@ -156,7 +156,7 @@ $(document).ready(function(){
<!-- 筛选搜索内容栏默认隐藏-->
<div class="col-md-12 filter-action-select-panle hide" >
<div class="row">
<div class="col-md-2">
<%-- <div class="col-md-2">
<div class="form-group">
<label><spring:message code="entrance"/></label>
<form:select path="entranceId" class="selectpicker form-control" data-live-search="true" data-live-search-placeholder="search">
@@ -166,7 +166,7 @@ $(document).ready(function(){
</c:forEach>
</form:select>
</div>
</div>
</div> --%>
<div class="col-md-2">
<div class="form-group">
<label><spring:message code="clj_ip"/></label>
@@ -288,14 +288,14 @@ $(document).ready(function(){
<td>${log.foundTime }</td>
<td>${log.recvTime }</td>
<td>
<c:set var="entrances">${log.entranceId }</c:set>
<td>${log.entranceId }
<%-- <c:set var="entrances">${log.entranceId }</c:set>
<c:forEach items="${fns:getDictList('ENTRANCE')}" var="dic">
<c:if test="${dic.itemCode eq log.entranceId}">
<c:set var="entrances">${dic.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${entrances}"/>
<spring:message code="${entrances}"/> --%>
</td>
<td>${log.pid}</td>

View File

@@ -200,7 +200,7 @@
</form:select>
</div>
</div> --%>
<div class="col-md-2">
<%-- <div class="col-md-2">
<div class="form-group">
<label><spring:message code="entrance" /></label>
<form:select path="entranceId"
@@ -217,7 +217,7 @@
</c:forEach>
</form:select>
</div>
</div>
</div> --%>
<div class="col-md-2">
<div class="form-group">
<label><spring:message code="clj_ip" /></label> <input
@@ -339,14 +339,14 @@
<td>${log.foundTime }</td>
<td>${log.recvTime }</td>
<td>
<c:set var="entrances">${log.entranceId }</c:set>
<td>${log.entranceId }
<%-- <c:set var="entrances">${log.entranceId }</c:set>
<c:forEach items="${fns:getDictList('ENTRANCE')}" var="dic">
<c:if test="${dic.itemCode eq log.entranceId}">
<c:set var="entrances">${dic.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${entrances}"/>
<spring:message code="${entrances}"/> --%>
</td>
<td>${log.pid}</td>

View File

@@ -145,7 +145,7 @@ $(document).ready(function(){
<!-- 筛选搜索内容栏默认隐藏-->
<div class="col-md-12 filter-action-select-panle hide" >
<div class="row">
<div class="col-md-2">
<%-- <div class="col-md-2">
<div class="form-group">
<label><spring:message code="entrance"/></label>
<form:select path="entranceId" class="selectpicker form-control" data-live-search="true" data-live-search-placeholder="search">
@@ -155,7 +155,7 @@ $(document).ready(function(){
</c:forEach>
</form:select>
</div>
</div>
</div> --%>
<div class="col-md-2">
<div class="form-group">
@@ -280,14 +280,14 @@ $(document).ready(function(){
<td>${log.foundTime }</td>
<td>${log.recvTime }</td>
<td>
<c:set var="entrances">${log.entranceId }</c:set>
<td>${log.entranceId }
<%-- <c:set var="entrances">${log.entranceId }</c:set>
<c:forEach items="${fns:getDictList('ENTRANCE')}" var="dic">
<c:if test="${dic.itemCode eq log.entranceId}">
<c:set var="entrances">${dic.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${entrances}"/>
<spring:message code="${entrances}"/> --%>
</td>
<td>${log.pid}</td>

View File

@@ -145,7 +145,7 @@ $(document).ready(function(){
<!-- 筛选搜索内容栏默认隐藏-->
<div class="col-md-12 filter-action-select-panle hide" >
<div class="row">
<div class="col-md-2">
<%-- <div class="col-md-2">
<div class="form-group">
<label><spring:message code="entrance"/></label>
<form:select path="entranceId" class="selectpicker form-control" data-live-search="true" data-live-search-placeholder="search">
@@ -155,7 +155,7 @@ $(document).ready(function(){
</c:forEach>
</form:select>
</div>
</div>
</div> --%>
<div class="col-md-2">
<div class="form-group">
@@ -280,14 +280,14 @@ $(document).ready(function(){
<td>${log.foundTime }</td>
<td>${log.recvTime }</td>
<td>
<c:set var="entrances">${log.entranceId }</c:set>
<td>${log.entranceId }
<%-- <c:set var="entrances">${log.entranceId }</c:set>
<c:forEach items="${fns:getDictList('ENTRANCE')}" var="dic">
<c:if test="${dic.itemCode eq log.entranceId}">
<c:set var="entrances">${dic.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${entrances}"/>
<spring:message code="${entrances}"/> --%>
</td>
<td>${log.pid}</td>
<td>

View File

@@ -166,7 +166,7 @@ $(document).ready(function(){
</form:select>
</div>
</div> --%>
<div class="col-md-2">
<%-- <div class="col-md-2">
<div class="form-group">
<label><spring:message code="entrance"/></label>
<form:select path="entranceId" class="selectpicker form-control" data-live-search="true" data-live-search-placeholder="search">
@@ -176,7 +176,7 @@ $(document).ready(function(){
</c:forEach>
</form:select>
</div>
</div>
</div> --%>
<div class="col-md-2">
<div class="form-group">
<label><spring:message code="clj_ip"/></label>
@@ -287,14 +287,14 @@ $(document).ready(function(){
<td>${log.foundTime }</td>
<td>${log.recvTime }</td>
<td>
<c:set var="entrances">${log.entranceId }</c:set>
<td>${log.entranceId }
<%-- <c:set var="entrances">${log.entranceId }</c:set>
<c:forEach items="${fns:getDictList('ENTRANCE')}" var="dic">
<c:if test="${dic.itemCode eq log.entranceId}">
<c:set var="entrances">${dic.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${entrances}"/>
<spring:message code="${entrances}"/> --%>
</td>
<td>${log.pid}</td>

View File

@@ -145,7 +145,7 @@ $(document).ready(function(){
<!-- 筛选搜索内容栏默认隐藏-->
<div class="col-md-12 filter-action-select-panle hide" >
<div class="row">
<div class="col-md-2">
<%-- <div class="col-md-2">
<div class="form-group">
<label><spring:message code="entrance"/></label>
<form:select path="entranceId" class="selectpicker form-control" data-live-search="true" data-live-search-placeholder="search">
@@ -155,7 +155,7 @@ $(document).ready(function(){
</c:forEach>
</form:select>
</div>
</div>
</div> --%>
<div class="col-md-2">
<div class="form-group">
@@ -281,14 +281,14 @@ $(document).ready(function(){
<td>${log.foundTime }</td>
<td>${log.recvTime }</td>
<td>
<c:set var="entrances">${log.entranceId }</c:set>
<td>${log.entranceId }
<%-- <c:set var="entrances">${log.entranceId }</c:set>
<c:forEach items="${fns:getDictList('ENTRANCE')}" var="dic">
<c:if test="${dic.itemCode eq log.entranceId}">
<c:set var="entrances">${dic.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${entrances}"/>
<spring:message code="${entrances}"/> --%>
</td>
<td>${log.pid}</td>

View File

@@ -167,7 +167,7 @@ $(document).ready(function(){
</form:select>
</div>
</div> --%>
<div class="col-md-2">
<%-- <div class="col-md-2">
<div class="form-group">
<label><spring:message code="entrance"/></label>
<form:select path="entranceId" class="selectpicker form-control" data-live-search="true" data-live-search-placeholder="search">
@@ -177,7 +177,7 @@ $(document).ready(function(){
</c:forEach>
</form:select>
</div>
</div>
</div> --%>
<div class="col-md-2">
<div class="form-group">
<label><spring:message code="clj_ip"/></label>
@@ -287,14 +287,14 @@ $(document).ready(function(){
<td>${log.foundTime }</td>
<td>${log.recvTime }</td>
<td>
<c:set var="entrances">${log.entranceId }</c:set>
<td>${log.entranceId }
<%-- <c:set var="entrances">${log.entranceId }</c:set>
<c:forEach items="${fns:getDictList('ENTRANCE')}" var="dic">
<c:if test="${dic.itemCode eq log.entranceId}">
<c:set var="entrances">${dic.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${entrances}"/>
<spring:message code="${entrances}"/> --%>
</td>
<td>${log.pid}</td>

View File

@@ -155,7 +155,7 @@ $(document).ready(function(){
<!-- 筛选搜索内容栏默认隐藏-->
<div class="col-md-12 filter-action-select-panle hide" >
<div class="row">
<div class="col-md-2">
<%-- <div class="col-md-2">
<div class="form-group">
<label><spring:message code="entrance"/></label>
<form:select path="entranceId" class="selectpicker form-control" data-live-search="true" data-live-search-placeholder="search">
@@ -165,7 +165,7 @@ $(document).ready(function(){
</c:forEach>
</form:select>
</div>
</div>
</div> --%>
<div class="col-md-2">
<div class="form-group">
<label><spring:message code="clj_ip"/></label>
@@ -293,14 +293,14 @@ $(document).ready(function(){
<td>${log.foundTime }</td>
<td>${log.recvTime }</td>
<td>
<c:set var="entrances">${log.entranceId }</c:set>
<td>${log.entranceId }
<%-- <c:set var="entrances">${log.entranceId }</c:set>
<c:forEach items="${fns:getDictList('ENTRANCE')}" var="dic">
<c:if test="${dic.itemCode eq log.entranceId}">
<c:set var="entrances">${dic.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${entrances}"/>
<spring:message code="${entrances}"/> --%>
</td>
<td>${log.duation}</td>
<td>${log.voipProtocol}</td>

View File

@@ -156,7 +156,7 @@ $(document).ready(function(){
<!-- 筛选搜索内容栏默认隐藏-->
<div class="col-md-12 filter-action-select-panle hide" >
<div class="row">
<div class="col-md-2">
<%-- <div class="col-md-2">
<div class="form-group">
<label><spring:message code="entrance"/></label>
<form:select path="entranceId" class="selectpicker form-control" data-live-search="true" data-live-search-placeholder="search">
@@ -166,7 +166,7 @@ $(document).ready(function(){
</c:forEach>
</form:select>
</div>
</div>
</div> --%>
<div class="col-md-2">
<div class="form-group">
@@ -315,14 +315,14 @@ $(document).ready(function(){
<td>${log.foundTime }</td>
<td>${log.recvTime }</td>
<td>
<c:set var="entrances">${log.entranceId }</c:set>
<td>${log.entranceId }
<%-- <c:set var="entrances">${log.entranceId }</c:set>
<c:forEach items="${fns:getDictList('ENTRANCE')}" var="dic">
<c:if test="${dic.itemCode eq log.entranceId}">
<c:set var="entrances">${dic.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${entrances}"/>
<spring:message code="${entrances}"/> --%>
</td>
<c:if test="${fns:getUser().isAdmin()}"><td>${log.duation}</td></c:if>
<td>${log.voipProtocol}</td>

View File

@@ -155,7 +155,7 @@ $(document).ready(function(){
<!-- 筛选搜索内容栏默认隐藏-->
<div class="col-md-12 filter-action-select-panle hide" >
<div class="row">
<div class="col-md-2">
<%-- <div class="col-md-2">
<div class="form-group">
<label><spring:message code="entrance"/></label>
<form:select path="entranceId" class="selectpicker form-control" data-live-search="true" data-live-search-placeholder="search">
@@ -165,7 +165,7 @@ $(document).ready(function(){
</c:forEach>
</form:select>
</div>
</div>
</div> --%>
<div class="col-md-2">
<div class="form-group">
@@ -292,14 +292,14 @@ $(document).ready(function(){
<td>${log.foundTime }</td>
<td>${log.recvTime }</td>
<td>
<c:set var="entrances">${log.entranceId }</c:set>
<td>${log.entranceId }
<%-- <c:set var="entrances">${log.entranceId }</c:set>
<c:forEach items="${fns:getDictList('ENTRANCE')}" var="dic">
<c:if test="${dic.itemCode eq log.entranceId}">
<c:set var="entrances">${dic.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${entrances}"/>
<spring:message code="${entrances}"/> --%>
</td>
<td>
<c:if test="${fn:startsWith(log.url, 'http://')}">

View File

@@ -128,7 +128,7 @@ $(document).ready(function(){
<!-- 筛选搜索内容栏默认隐藏-->
<div class="col-md-12 filter-action-select-panle hide" >
<div class="row">
<div class="col-md-2">
<%-- <div class="col-md-2">
<div class="form-group">
<label><spring:message code="entrance"/></label>
<form:select path="entranceId" class="selectpicker form-control" data-live-search="true" data-live-search-placeholder="search">
@@ -138,7 +138,7 @@ $(document).ready(function(){
</c:forEach>
</form:select>
</div>
</div>
</div> --%>
<div class="col-md-2">
<div class="form-group">
<label><spring:message code="clj_ip"/></label>
@@ -264,13 +264,14 @@ $(document).ready(function(){
<td>${log.recvTime }</td>
<td>
<c:set var="entrances">${log.entranceId }</c:set>
<%-- <c:set var="entrances">${log.entranceId }</c:set>
<c:forEach items="${fns:getDictList('ENTRANCE')}" var="dic">
<c:if test="${dic.itemCode eq log.entranceId}">
<c:set var="entrances">${dic.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${entrances}"/>
<spring:message code="${entrances}"/> --%>
${log.entranceId }
</td>
<%-- <td>${log.version}</td>

View File

@@ -152,7 +152,7 @@
<!-- 筛选搜索内容栏默认隐藏-->
<div class="col-md-12 filter-action-select-panle hide" >
<div class="row">
<div class="col-md-2">
<%-- <div class="col-md-2">
<div class="form-group">
<label><spring:message code="entrance"/></label>
<form:select path="entranceId" class="selectpicker form-control" data-live-search="true" data-live-search-placeholder="search">
@@ -162,7 +162,7 @@
</c:forEach>
</form:select>
</div>
</div>
</div> --%>
<div class="col-md-2">
<div class="form-group">
@@ -286,14 +286,14 @@
<td>${log.recvTime }</td>
<td>
<c:set var="entrances">${log.entranceId }</c:set>
<td>${log.entranceId }
<%-- <c:set var="entrances">${log.entranceId }</c:set>
<c:forEach items="${fns:getDictList('ENTRANCE')}" var="dic">
<c:if test="${dic.itemCode eq log.entranceId}">
<c:set var="entrances">${dic.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${entrances}"/>
<spring:message code="${entrances}"/> --%>
</td>
<td>${log.p2pProto}</td>

View File

@@ -123,7 +123,7 @@
<!-- 筛选搜索内容栏默认隐藏-->
<div class="col-md-12 filter-action-select-panle hide" >
<div class="row">
<div class="col-md-2">
<%-- <div class="col-md-2">
<div class="form-group">
<label><spring:message code="entrance"/></label>
<form:select path="entranceId" class="selectpicker form-control" data-live-search="true" data-live-search-placeholder="search">
@@ -133,7 +133,7 @@
</c:forEach>
</form:select>
</div>
</div>
</div> --%>
<div class="col-md-2">
<div class="form-group">
@@ -272,14 +272,14 @@
</td> --%>
<td>${log.foundTime }</td>
<td>${log.recvTime }</td>
<td>
<c:set var="entrances">${log.entranceId }</c:set>
<td>${log.entranceId }
<%-- <c:set var="entrances">${log.entranceId }</c:set>
<c:forEach items="${fns:getDictList('ENTRANCE')}" var="dic">
<c:if test="${dic.itemCode eq log.entranceId}">
<c:set var="entrances">${dic.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${entrances}"/>
<spring:message code="${entrances}"/> --%>
</td>
<td>

View File

@@ -169,7 +169,7 @@
<!-- 筛选搜索内容栏默认隐藏-->
<div class="col-md-12 filter-action-select-panle hide" >
<div class="row">
<div class="col-md-2">
<%-- <div class="col-md-2">
<div class="form-group">
<label><spring:message code="entrance"/></label>
<form:select path="entranceId" class="selectpicker form-control" data-live-search="true" data-live-search-placeholder="search">
@@ -179,7 +179,7 @@
</c:forEach>
</form:select>
</div>
</div>
</div> --%>
<div class="col-md-2">
<div class="form-group">
@@ -304,14 +304,14 @@
<td>${log.foundTime }</td>
<td>${log.recvTime }</td>
<td>
<c:set var="entrances">${log.entranceId }</c:set>
<td>${log.entranceId }
<%-- <c:set var="entrances">${log.entranceId }</c:set>
<c:forEach items="${fns:getDictList('ENTRANCE')}" var="dic">
<c:if test="${dic.itemCode eq log.entranceId}">
<c:set var="entrances">${dic.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${entrances}"/>
<spring:message code="${entrances}"/> --%>
</td>
<td>${log.version }</td>

View File

@@ -169,7 +169,7 @@
<!-- 筛选搜索内容栏默认隐藏-->
<div class="col-md-12 filter-action-select-panle hide" >
<div class="row">
<div class="col-md-2">
<%-- <div class="col-md-2">
<div class="form-group">
<label><spring:message code="entrance"/></label>
<form:select path="entranceId" class="selectpicker form-control" data-live-search="true" data-live-search-placeholder="search">
@@ -179,7 +179,7 @@
</c:forEach>
</form:select>
</div>
</div>
</div> --%>
<div class="col-md-2">
<div class="form-group">
@@ -304,14 +304,14 @@
<td>${log.foundTime }</td>
<td>${log.recvTime }</td>
<td>
<c:set var="entrances">${log.entranceId }</c:set>
<td>${log.entranceId }
<%-- <c:set var="entrances">${log.entranceId }</c:set>
<c:forEach items="${fns:getDictList('ENTRANCE')}" var="dic">
<c:if test="${dic.itemCode eq log.entranceId}">
<c:set var="entrances">${dic.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${entrances}"/>
<spring:message code="${entrances}"/> --%>
</td>
<td>${log.version }</td>

View File

@@ -138,7 +138,7 @@
<!-- 筛选搜索内容栏默认隐藏-->
<div class="col-md-12 filter-action-select-panle hide" >
<div class="row">
<div class="col-md-2">
<%-- <div class="col-md-2">
<div class="form-group">
<label><spring:message code="entrance"/></label>
<form:select path="entranceId" class="selectpicker form-control" data-live-search="true" data-live-search-placeholder="search">
@@ -148,7 +148,7 @@
</c:forEach>
</form:select>
</div>
</div>
</div> --%>
<div class="col-md-2">
<div class="form-group">
@@ -294,14 +294,14 @@
<td>${log.foundTime }</td>
<td>${log.recvTime }</td>
<td>
<c:set var="entrances">${log.entranceId }</c:set>
<td>${log.entranceId }
<%-- <c:set var="entrances">${log.entranceId }</c:set>
<c:forEach items="${fns:getDictList('ENTRANCE')}" var="dic">
<c:if test="${dic.itemCode eq log.entranceId}">
<c:set var="entrances">${dic.itemValue}</c:set>
</c:if>
</c:forEach>
<spring:message code="${entrances}"/>
<spring:message code="${entrances}"/> --%>
</td>
<td>

View File

@@ -8,7 +8,7 @@
<meta charset="utf-8" />
<title>NTC</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<link rel="shortcut icon" href="${pageContext.request.contextPath}/static/pages/img/logo-K.ico" />
<link rel="shortcut icon" href="${pageContext.request.contextPath}/static/pages/img/logo-N.ico" />
<link href="${pageContext.request.contextPath}/static/login/assets/css/bootstrap.min.css" rel="stylesheet" />
<link rel="stylesheet" href="${pageContext.request.contextPath}/static/login/assets/css/font-awesome.min.css" />
@@ -79,7 +79,7 @@
}
.main_right{
background-image: url("${pageContext.request.contextPath}/static/login/assets/images/login/login_06-K.png");
background-image: url("${pageContext.request.contextPath}/static/login/assets/images/login/login_06-N.png");
background-repeat:no-repeat;
background-size: 100% 100%;
max-height: 501px;

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.2 KiB

View File

@@ -87,10 +87,20 @@
var data=new Array();
var drillData=new Array();
var unit="bytes";
var minCount = 0;
for (var int = rs.length-1; int >= 0; int--) {
if(rs[int].count>0){
minCount=rs[int].count;
break;
}
}
$(rs).each(function(i, d) {
var inoctetsNum=d.count;
unit=changeUnit(inoctetsNum);
inoctetsNum=changeNum(inoctetsNum);
// var inoctetsNum=d.count;
// unit=changeUnit(inoctetsNum);
// inoctetsNum=changeNum(inoctetsNum);
var mapNum=getUnit(minCount,d.count);
var inoctetsNum=mapNum.sum;
unit=mapNum.unit;
// var pktNum=new Array();
// var byteLen=new Array();
//协议图-操作系统
@@ -540,10 +550,20 @@
var xData=new Array();
var drillData=new Array();
var unit="bytes";
var minCount = 0;
for (var int = rs.length-1; int >= 0; int--) {
if(rs[int].count>0){
minCount=rs[int].count;
break;
}
}
$(rs).each(function(i, d) {
var inoctetsNum=d.count;
unit=changeUnit(inoctetsNum);
inoctetsNum=changeNum(inoctetsNum);
var mapNum=getUnit(minCount,d.count);
// var inoctetsNum=d.count;
// unit=changeUnit(inoctetsNum);
// inoctetsNum=changeNum(inoctetsNum);
var inoctetsNum=mapNum.sum;
unit=mapNum.unit;
var pktNum=new Array();
var byteLen=new Array();
xData.push(d.appType);
@@ -681,7 +701,7 @@
tooltip: {
enabled: true,
headerFormat: '<span style="font-size:10px"><b>{point.key}</span><br>',
pointFormat: '{point.y:.1f} <b> '+unit,
pointFormat: '{point.y:.2f} <b> '+unit,
shared: true,
useHTML: true
},
@@ -732,10 +752,20 @@ function echart_2(rs){
var data=new Array();
var drillData=new Array();
var unit="bytes";
var minCount = 0;
for (var int = rs.length-1; int >= 0; int--) {
if(rs[int].count>0){
minCount=rs[int].count;
break;
}
}
$(rs).each(function(i, d) {
var inoctetsNum=d.count;
unit=changeUnit(inoctetsNum);
inoctetsNum=changeNum(inoctetsNum);
// var inoctetsNum=d.count;
// unit=changeUnit(inoctetsNum);
// inoctetsNum=changeNum(inoctetsNum);
var mapNum=getUnit(minCount,d.count);
var inoctetsNum=mapNum.sum;
unit=mapNum.unit;
// var pktNum=new Array();
// var byteLen=new Array();
data.push({
@@ -882,10 +912,20 @@ function echart_5(rs){
var data=new Array();
var drillData=new Array();
var unit="bytes";
var minCount = 0;
for (var int = rs.length-1; int >= 0; int--) {
if(rs[int].count>0){
minCount=rs[int].count;
break;
}
}
$(rs).each(function(i, d) {
var inoctetsNum=d.count;
unit=changeUnit(inoctetsNum);
inoctetsNum=changeNum(inoctetsNum);
// var inoctetsNum=d.count;
// unit=changeUnit(inoctetsNum);
// inoctetsNum=changeNum(inoctetsNum);
var mapNum=getUnit(minCount,d.count);
var inoctetsNum=mapNum.sum;
unit=mapNum.unit;
// var pktNum=new Array();
// var byteLen=new Array();
//协议图-操作系统
@@ -1039,10 +1079,20 @@ function echart_4(rs){
var data=new Array();
// var drillData=new Array();
var unit="bytes";
var minCount = 0;
for (var int = rs.length-1; int >= 0; int--) {
if(rs[int].count>0){
minCount=rs[int].count;
break;
}
}
$(rs).each(function(i, d) {
var inoctetsNum=d.count;
unit=changeUnit(inoctetsNum);
inoctetsNum=changeNum(inoctetsNum);
// var inoctetsNum=d.count;
// unit=changeUnit(inoctetsNum);
// inoctetsNum=changeNum(inoctetsNum);
var mapNum=getUnit(minCount,d.count);
var inoctetsNum=mapNum.sum;
unit=mapNum.unit;
// var pktNum=new Array();
// var byteLen=new Array();
data.push({
@@ -1182,10 +1232,20 @@ function echart_6(rs){
var data=new Array();
// var drillData=new Array();
var unit="bytes";
var minCount = 0;
for (var int = rs.length-1; int >= 0; int--) {
if(rs[int].count>0){
minCount=rs[int].count;
break;
}
}
$(rs).each(function(i, d) {
var inoctetsNum=d.count;
unit=changeUnit(inoctetsNum);
inoctetsNum=changeNum(inoctetsNum);
// var inoctetsNum=d.count;
// unit=changeUnit(inoctetsNum);
// inoctetsNum=changeNum(inoctetsNum);
var mapNum=getUnit(minCount,d.count);
var inoctetsNum=mapNum.sum;
unit=mapNum.unit;
// var pktNum=new Array();
// var byteLen=new Array();
//协议图-操作系统
@@ -1331,26 +1391,36 @@ function echart_topic_domain(rs){
color:'#265197'
}];
var unit="bytes";
var minCount = 0;
for (var int = rs.length-1; int >= 0; int--) {
if(rs[int].count>0){
minCount=rs[int].count;
break;
}
}
$(rs).each(function(i,d){
var inoctetsNum=d.count;
var inoctetsNumK=inoctetsNum/1024;
var inoctetsNumM=inoctetsNumK/1024;
var inoctetsNumG=inoctetsNumM/1024;
inoctetsNum=inoctetsNumG;
inoctetsNum=Math.round(inoctetsNum*100)/100;
// var inoctetsNumK=inoctetsNum/1024;
// var inoctetsNumM=inoctetsNumK/1024;
// var inoctetsNumG=inoctetsNumM/1024;
// inoctetsNum=inoctetsNumG;
// inoctetsNum=Math.round(inoctetsNum*100)/100;
unit="GB";
unit="GB";
if(inoctetsNum>0){
/****主题中的子域名*******/
var topicData=0;
$(d.domainData).each(function(j,t){
var domainNum=t.byteCount;
var domainNumK=domainNum/1024;
var domainNumM=domainNumK/1024;
var domainNumG=domainNumM/1024;
domainNum=domainNumG;
domainNum=Math.round(domainNum*100)/100;
// var domainNum=t.byteCount;
// var domainNumK=domainNum/1024;
// var domainNumM=domainNumK/1024;
// var domainNumG=domainNumM/1024;
// domainNum=domainNumG;
// domainNum=Math.round(domainNum*100)/100;
var mapNum=getUnit(minCount,t.byteCount);
var domainNum=mapNum.sum;
unit=mapNum.unit;
topicData=topicData+domainNum;
data.push({
'id': '2.'+t.webId,
@@ -1582,3 +1652,82 @@ function addDateName(){
var now=year+""+month+""+date+""+h+""+m+""+s;
return now;
}
// minCount Topic 最小的count值
function getUnit(minCount,count){
var unit="bytes";
if(minCount >0){
var countk1=minCount/1024;
var sumk1=Math.round(countk1*100)/100;
if(sumk1>0){
var countm1=countk1/1024;
var summ1=Math.round(countm1*100)/100;
if(summ1>0){
var countg1=countm1/1024;
var sumg1=Math.round(countg1*100)/100;
if(sumg1>0){
unit="GB";
}else{
unit="MB";
}
}else{
unit="KB";
}
}else{
unit="bytes";
}
}
var map={};
if(count >=0){
if(unit =="bytes"){
map.unit=unit;
map.sum=count;
}else if(unit =="KB"){
var countk=count/1024;
var sumk=Math.round(countk*100)/100;
map.unit=unit;
map.sum=sumk;
}else if(unit =="MB"){
var countk=count/1024;
var countm=countk/1024;
var summ=Math.round(countm*100)/100;
map.unit=unit;
map.sum=summ;
}else if(unit =="GB"){
var countk=count/1024;
var countm=countk/1024;
var countg=countm/1024;
var sumg=Math.round(countg*100)/100;
map.unit=unit;
map.sum=sumg;
}
}
return map;
// if(count >=0){
// var countk=count/1024;
// var sumk=Math.round(countk*100)/100;
// if(sumk>0){
// var countm=countk/1024;
// var summ=Math.round(countm*100)/100;
// if(summ>0){
// var countg=countm/1024;
// var sumg=Math.round(countg*100)/100;
// if(sumg>0){
// map.unit="GB";
// map.sum=sumg;
// }else{
// map.unit="MB";
// map.sum=summ;
// }
// }else{
// map.unit="KB";
// map.sum=sumk;
// }
// }else{
// map.unit="bytes";
// map.sum=count;
// }
// }else{
// map.unit="bytes";
// map.sum=0;
// }
}