Merge branch 'develop' of http://192.168.10.125/k18_web/NFS.git into develop

This commit is contained in:
leijun
2018-10-10 15:29:14 +08:00
42 changed files with 563 additions and 52 deletions

View File

@@ -0,0 +1,70 @@
package com.nis.domain.log;
import com.wordnik.swagger.annotations.ApiModelProperty;
/**
* @ClassName:MmFileDigestLog
* @author (wx)
* @date 2018年7月16日 下午2:54:23
* @version V1.0
*/
public class MmFileDigestLog extends BaseLogEntity<MmFileDigestLog> {
private static final long serialVersionUID = -6177790560553329386L;
@ApiModelProperty(value="节目ID", required=true)
protected String pid;
@ApiModelProperty(value="节目访问地址", required=true)
protected String url;
@ApiModelProperty(value="封堵现场片段路径", required=true)
protected String logUri;
@ApiModelProperty(value="入口页面", required=true)
protected String referer;
@ApiModelProperty(value="有害级别", required=true)
protected Integer level;
@ApiModelProperty(value="封堵类型", required=true)
protected Integer fdType;
@ApiModelProperty(value="协议", required=true)
protected String protocol;
public String getPid() {
return pid;
}
public void setPid(String pid) {
this.pid = pid;
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
public String getLogUri() {
return logUri;
}
public void setLogUri(String logUri) {
this.logUri = logUri;
}
public String getReferer() {
return referer;
}
public void setReferer(String referer) {
this.referer = referer;
}
public Integer getLevel() {
return level;
}
public void setLevel(Integer level) {
this.level = level;
}
public Integer getFdType() {
return fdType;
}
public void setFdType(Integer fdType) {
this.fdType = fdType;
}
public String getProtocol() {
return protocol;
}
public void setProtocol(String protocol) {
this.protocol = protocol;
}
}

View File

@@ -0,0 +1,28 @@
package com.nis.domain.log;
public class NtcBGPLog extends BaseLogEntity<NtcBGPLog> {
private static final long serialVersionUID = 4597407682545926823L;
private Integer type;
private String as;
private String route;
public Integer getType() {
return type;
}
public void setType(Integer type) {
this.type = type;
}
public String getAs() {
return as;
}
public void setAs(String as) {
this.as = as;
}
public String getRoute() {
return route;
}
public void setRoute(String route) {
this.route = route;
}
}

View File

@@ -3,5 +3,4 @@ package com.nis.domain.log;
public class NtcIpLog extends BaseLogEntity<NtcIpLog> { public class NtcIpLog extends BaseLogEntity<NtcIpLog> {
private static final long serialVersionUID = 4597407682545926823L; private static final long serialVersionUID = 4597407682545926823L;
} }

View File

@@ -415,6 +415,7 @@ public final class Constants {
public static final String NTC_MMVOIP_LOG = Configurations.getStringProperty("mmVoipLog", ""); public static final String NTC_MMVOIP_LOG = Configurations.getStringProperty("mmVoipLog", "");
public static final String NTC_MMSAMPLE_VOIP_LOG = Configurations.getStringProperty("mmSampleVoipLog", ""); public static final String NTC_MMSAMPLE_VOIP_LOG = Configurations.getStringProperty("mmSampleVoipLog", "");
public static final String NTC_MMAVIP_LOG = Configurations.getStringProperty("mmAvIpLog", ""); public static final String NTC_MMAVIP_LOG = Configurations.getStringProperty("mmAvIpLog", "");
public static final String NTC_MMFILEDIGEST_LOG = Configurations.getStringProperty("mmFileDigestLog", "");
public static final String NTC_MMPORNAUDIOSAMPLE_LOG = Configurations.getStringProperty("mmPornAudioLevelLog", ""); public static final String NTC_MMPORNAUDIOSAMPLE_LOG = Configurations.getStringProperty("mmPornAudioLevelLog", "");
public static final String NTC_MMPORNVIDEOSAMPLE_LOG = Configurations.getStringProperty("mmPornVideoLevelLog", ""); public static final String NTC_MMPORNVIDEOSAMPLE_LOG = Configurations.getStringProperty("mmPornVideoLevelLog", "");
public static final String NTC_MMAVURL_LOG = Configurations.getStringProperty("mmAvUrlLog", ""); public static final String NTC_MMAVURL_LOG = Configurations.getStringProperty("mmAvUrlLog", "");

View File

@@ -95,7 +95,7 @@ public class DkBehaviorLogController extends BaseController{
logger.info("查询行为识别日志成功"); logger.info("查询行为识别日志成功");
} }
} catch (Exception e) { } catch (Exception e) {
logger.info("查询行为识别日志失败", e); logger.error("查询行为识别日志失败", e);
addMessageLog(model, e.getMessage()); addMessageLog(model, e.getMessage());
} }
return "/log/manipulation/dkBehaviorList"; return "/log/manipulation/dkBehaviorList";

View File

@@ -76,7 +76,7 @@ public class AppLogController extends BaseController{
logger.info("查询App日志成功"); logger.info("查询App日志成功");
} }
} catch (Exception e) { } catch (Exception e) {
logger.info("查询App日志失败", e); logger.error("查询App日志失败", e);
addMessageLog(model, e.getMessage()); addMessageLog(model, e.getMessage());
} }
return "/log/ntc/appList"; return "/log/ntc/appList";

View File

@@ -1,7 +1,5 @@
package com.nis.web.controller.log.ntc; package com.nis.web.controller.log.ntc;
import java.io.File;
import java.io.IOException;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@@ -10,23 +8,18 @@ import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.aspectj.util.FileUtil;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Controller; import org.springframework.stereotype.Controller;
import org.springframework.ui.Model; import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.ModelAttribute; import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import com.google.gson.Gson; import com.google.gson.Gson;
import com.google.gson.GsonBuilder; import com.google.gson.GsonBuilder;
import com.google.gson.reflect.TypeToken; import com.google.gson.reflect.TypeToken;
import com.nis.domain.FunctionServiceDict; import com.nis.domain.FunctionServiceDict;
import com.nis.domain.Page;
import com.nis.domain.PageLog; import com.nis.domain.PageLog;
import com.nis.domain.log.NtcIpLog; import com.nis.domain.log.NtcBGPLog;
import com.nis.domain.maat.LogRecvData; import com.nis.domain.maat.LogRecvData;
import com.nis.exceptions.MaatConvertException;
import com.nis.util.Constants; import com.nis.util.Constants;
import com.nis.util.DictUtils; import com.nis.util.DictUtils;
import com.nis.util.httpclient.HttpClientUtil; import com.nis.util.httpclient.HttpClientUtil;
@@ -37,9 +30,9 @@ import com.nis.web.controller.BaseController;
public class BgpLogController extends BaseController { public class BgpLogController extends BaseController {
@RequestMapping(value = {"list", ""}) @RequestMapping(value = {"list", ""})
public String list(@ModelAttribute("log") NtcIpLog log, Model model, HttpServletRequest request, HttpServletResponse response) { public String list(@ModelAttribute("log") NtcBGPLog log, Model model, HttpServletRequest request, HttpServletResponse response) {
try { try {
PageLog<NtcIpLog> page = new PageLog<NtcIpLog>(request, response); PageLog<NtcBGPLog> page = new PageLog<NtcBGPLog>(request, response);
Map<String, Object> params = new HashMap<String, Object>(); Map<String, Object> params = new HashMap<String, Object>();
params.put("pageSize", page.getPageSize()); params.put("pageSize", page.getPageSize());
params.put("pageNo", page.getPageNo()); params.put("pageNo", page.getPageNo());
@@ -55,11 +48,11 @@ public class BgpLogController extends BaseController {
logger.info("查询结果:" + recv); logger.info("查询结果:" + recv);
if (StringUtils.isNotBlank(recv)) { if (StringUtils.isNotBlank(recv)) {
Gson gson = new GsonBuilder().create(); Gson gson = new GsonBuilder().create();
LogRecvData<NtcIpLog> fromJson = gson.fromJson(recv, new TypeToken<LogRecvData<NtcIpLog>>(){}.getType()); LogRecvData<NtcBGPLog> fromJson = gson.fromJson(recv, new TypeToken<LogRecvData<NtcBGPLog>>(){}.getType());
if (fromJson.getStatus().intValue() == 200) { if (fromJson.getStatus().intValue() == 200) {
page.setList(fromJson.getData().getList()); page.setList(fromJson.getData().getList());
List<NtcIpLog> list = page.getList(); List<NtcBGPLog> list = page.getList();
for (NtcIpLog l : list) { for (NtcBGPLog l : list) {
l.setFunctionId(log.getFunctionId()); l.setFunctionId(log.getFunctionId());
setLogAction(l,serviceList); setLogAction(l,serviceList);
} }

View File

@@ -91,7 +91,7 @@ public class DdosLogController extends BaseController{
logger.info("查询Ddos日志成功"); logger.info("查询Ddos日志成功");
} }
} catch (Exception e) { } catch (Exception e) {
logger.info("查询Ddos日志失败", e); logger.error("查询Ddos日志失败", e);
addMessageLog(model, e.getMessage()); addMessageLog(model, e.getMessage());
} }
return "/log/ntc/ddosList"; return "/log/ntc/ddosList";

View File

@@ -78,7 +78,7 @@ public class FtpLogController extends BaseController{
logger.info("查询Ftp日志成功"); logger.info("查询Ftp日志成功");
} }
} catch (Exception e) { } catch (Exception e) {
logger.info("查询Ftp日志失败", e); logger.error("查询Ftp日志失败", e);
addMessageLog(model, e.getMessage()); addMessageLog(model, e.getMessage());
} }
return "/log/ntc/ftpList"; return "/log/ntc/ftpList";

View File

@@ -76,7 +76,7 @@ public class IpsecLogController extends BaseController{
logger.info("查询Ipsec日志成功"); logger.info("查询Ipsec日志成功");
} }
} catch (Exception e) { } catch (Exception e) {
logger.info("查询Ipsec日志失败", e); logger.error("查询Ipsec日志失败", e);
addMessageLog(model, e.getMessage()); addMessageLog(model, e.getMessage());
} }
return "/log/ntc/ipsecList"; return "/log/ntc/ipsecList";

View File

@@ -62,7 +62,7 @@ public class L2tpLogController extends BaseController {
model.addAttribute("page", page); model.addAttribute("page", page);
} }
} catch (Exception e) { } catch (Exception e) {
logger.info("L2TP日志查询失败", e); logger.error("L2TP日志查询失败", e);
addMessageLog(model, e.getMessage()); addMessageLog(model, e.getMessage());
} }

View File

@@ -76,7 +76,7 @@ public class MmAvIpLogController extends BaseController{
logger.info("查询音视频IP日志成功"); logger.info("查询音视频IP日志成功");
} }
} catch (Exception e) { } catch (Exception e) {
logger.info("查询音视频IP日志失败", e); logger.error("查询音视频IP日志失败", e);
addMessageLog(model, e.getMessage()); addMessageLog(model, e.getMessage());
} }
return "/log/ntc/mmAvIpList"; return "/log/ntc/mmAvIpList";

View File

@@ -76,7 +76,7 @@ public class MmAvUrlLogController extends BaseController{
logger.info("查询音视频url日志成功"); logger.info("查询音视频url日志成功");
} }
} catch (Exception e) { } catch (Exception e) {
logger.info("查询音视频url日志失败", e); logger.error("查询音视频url日志失败", e);
addMessageLog(model, e.getMessage()); addMessageLog(model, e.getMessage());
} }
return "/log/ntc/mmAvUrlList"; return "/log/ntc/mmAvUrlList";

View File

@@ -0,0 +1,85 @@
package com.nis.web.controller.log.ntc;
import java.io.IOException;
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.http.client.ClientProtocolException;
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 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.log.MmFileDigestLog;
import com.nis.domain.maat.LogRecvData;
import com.nis.util.Constants;
import com.nis.util.DictUtils;
import com.nis.util.httpclient.HttpClientUtil;
import com.nis.web.controller.BaseController;
@Controller
@RequestMapping(value = "${adminPath}/log/ntc/mmFileDigestLogs")
public class MmFileDigestLogController extends BaseController{
/**
* 音视频url日志
* @param model
* @param entry
* @param request
* @param response
* @return
* @throws ClientProtocolException
* @throws IOException
*/
@RequestMapping(value={"list",""})
public String list(Model model,@ModelAttribute("log")MmFileDigestLog entry,HttpServletRequest request, HttpServletResponse response) throws ClientProtocolException, IOException {
try {
PageLog<MmFileDigestLog> page = new PageLog<MmFileDigestLog>(request, response);
Map<String, Object> params=new HashMap<>();
params.put("pageSize", page.getPageSize());
params.put("pageNo", page.getPageNo());
//查询值判断
initLogSearchValue(entry,params);
List<FunctionServiceDict> serviceList = DictUtils.getFunctionServiceDictList(entry.getFunctionId());
model.addAttribute("serviceList", serviceList);
String url = "";
url = Constants.LOG_BASE_URL+Constants.NTC_MMFILEDIGEST_LOG;
String jsonString = HttpClientUtil.getMsg(url,params,request);
Gson gson = new GsonBuilder().create();
//gson泛型支持
LogRecvData<MmFileDigestLog> fromJson = gson.fromJson(jsonString, new TypeToken<LogRecvData<MmFileDigestLog>>(){}.getType());
if (fromJson.getStatus().intValue() == 200) {
Page<MmFileDigestLog> data = fromJson.getData();
page.setList(data.getList());
List<MmFileDigestLog> list = page.getList();
for (MmFileDigestLog l : list) {
l.setFunctionId(entry.getFunctionId());
setLogAction(l,serviceList);
}
model.addAttribute("page", page);
logger.info("查询文件摘要日志成功");
}
} catch (Exception e) {
logger.error("查询文件摘要日志失败", e);
addMessageLog(model, e.getMessage());
}
return "/log/ntc/mmFileDigestList";
}
}

View File

@@ -61,7 +61,7 @@ public class MmPicIpLogController extends BaseController {
logger.info("音视频图片IP日志查询成功"); logger.info("音视频图片IP日志查询成功");
} }
} catch (Exception e) { } catch (Exception e) {
logger.info("音视频图片IP日志查询失败", e); logger.error("音视频图片IP日志查询失败", e);
addMessageLog(model, e.getMessage()); addMessageLog(model, e.getMessage());
} }

View File

@@ -61,7 +61,7 @@ public class MmPicUrlController extends BaseController{
logger.info("音视频图片URL日志查询成功"); logger.info("音视频图片URL日志查询成功");
} }
} catch (Exception e) { } catch (Exception e) {
logger.info("音视频图片URL日志查询失败", e); logger.error("音视频图片URL日志查询失败", e);
addMessageLog(model, e.getMessage()); addMessageLog(model, e.getMessage());
} }

View File

@@ -63,7 +63,7 @@ public class MmPornAvSampleController extends BaseController {
logger.info("查询音频色情样例日志成功"); logger.info("查询音频色情样例日志成功");
} }
} catch (Exception e) { } catch (Exception e) {
logger.info("查询音频色情样例日志失败", e); logger.error("查询音频色情样例日志失败", e);
addMessageLog(model, e.getMessage()); addMessageLog(model, e.getMessage());
} }
return "/log/ntc/mmPornAudioSampleList"; return "/log/ntc/mmPornAudioSampleList";
@@ -104,7 +104,7 @@ public class MmPornAvSampleController extends BaseController {
logger.info("查询视频色情样例日志成功"); logger.info("查询视频色情样例日志成功");
} }
} catch (Exception e) { } catch (Exception e) {
logger.info("查询视频色情样例日志失败", e); logger.error("查询视频色情样例日志失败", e);
addMessageLog(model, e.getMessage()); addMessageLog(model, e.getMessage());
} }
return "/log/ntc/mmPornVideoSampleList"; return "/log/ntc/mmPornVideoSampleList";

View File

@@ -61,7 +61,7 @@ public class MmSampleAudioController extends BaseController{
logger.info("音频样例日志查询成功!"); logger.info("音频样例日志查询成功!");
} }
} catch (Exception e) { } catch (Exception e) {
logger.info("音频样例日志查询失败!", e); logger.error("音频样例日志查询失败!", e);
addMessageLog(model, e.getMessage()); addMessageLog(model, e.getMessage());
} }

View File

@@ -61,7 +61,7 @@ public class MmSampleFaceController extends BaseController{
logger.info("人脸识别日志查询成功!"); logger.info("人脸识别日志查询成功!");
} }
} catch (Exception e) { } catch (Exception e) {
logger.info("人脸识别日志查询失败!", e); logger.error("人脸识别日志查询失败!", e);
addMessageLog(model, e.getMessage()); addMessageLog(model, e.getMessage());
} }

View File

@@ -61,7 +61,7 @@ public class MmSampleLogoController extends BaseController{
logger.info("台标识别日志查询成功!"); logger.info("台标识别日志查询成功!");
} }
} catch (Exception e) { } catch (Exception e) {
logger.info("台标识别日志查询失败!", e); logger.error("台标识别日志查询失败!", e);
addMessageLog(model, e.getMessage()); addMessageLog(model, e.getMessage());
} }

View File

@@ -61,7 +61,7 @@ public class MmSamplePicController extends BaseController{
logger.info("图片样例日志查询成功!"); logger.info("图片样例日志查询成功!");
} }
} catch (Exception e) { } catch (Exception e) {
logger.info("图片样例日志查询失败!", e); logger.error("图片样例日志查询失败!", e);
addMessageLog(model, e.getMessage()); addMessageLog(model, e.getMessage());
} }

View File

@@ -61,7 +61,7 @@ public class MmSampleSpeakerController extends BaseController{
logger.info("说话人识别日志查询成功!"); logger.info("说话人识别日志查询成功!");
} }
} catch (Exception e) { } catch (Exception e) {
logger.info("说话人识别日志查询失败!", e); logger.error("说话人识别日志查询失败!", e);
addMessageLog(model, e.getMessage()); addMessageLog(model, e.getMessage());
} }

View File

@@ -61,7 +61,7 @@ public class MmSampleVideoController extends BaseController{
logger.info("视频样例日志查询成功!"); logger.info("视频样例日志查询成功!");
} }
} catch (Exception e) { } catch (Exception e) {
logger.info("视频样例日志查询失败!", e); logger.error("视频样例日志查询失败!", e);
addMessageLog(model, e.getMessage()); addMessageLog(model, e.getMessage());
} }

View File

@@ -68,7 +68,7 @@ public class MmSampleVoipLogController extends BaseController {
logger.info("查询Voip样例日志成功"); logger.info("查询Voip样例日志成功");
} }
} catch (Exception e) { } catch (Exception e) {
logger.info("查询Voip日志失败", e); logger.error("查询Voip日志失败", e);
addMessageLog(model, e.getMessage()); addMessageLog(model, e.getMessage());
} }
return "/log/ntc/mmSampleVoipList"; return "/log/ntc/mmSampleVoipList";

View File

@@ -75,7 +75,7 @@ public class MmVoipAccountLogController extends BaseController{
logger.info("查询mmVoipAccount日志成功"); logger.info("查询mmVoipAccount日志成功");
} }
} catch (Exception e) { } catch (Exception e) {
logger.info("查询mmVoipAccount日志失败", e); logger.error("查询mmVoipAccount日志失败", e);
addMessageLog(model, e.getMessage()); addMessageLog(model, e.getMessage());
} }
return "/log/ntc/mmVoipAccountList"; return "/log/ntc/mmVoipAccountList";

View File

@@ -75,7 +75,7 @@ public class MmVoipIpLogController extends BaseController{
logger.info("查询VoipIp日志成功"); logger.info("查询VoipIp日志成功");
} }
} catch (Exception e) { } catch (Exception e) {
logger.info("查询VoipIp日志失败", e); logger.error("查询VoipIp日志失败", e);
addMessageLog(model, e.getMessage()); addMessageLog(model, e.getMessage());
} }
return "/log/ntc/mmVoipIpList"; return "/log/ntc/mmVoipIpList";

View File

@@ -75,7 +75,7 @@ public class MmVoipLogController extends BaseController{
logger.info("查询Voip日志成功"); logger.info("查询Voip日志成功");
} }
} catch (Exception e) { } catch (Exception e) {
logger.info("查询Voip日志失败", e); logger.error("查询Voip日志失败", e);
addMessageLog(model, e.getMessage()); addMessageLog(model, e.getMessage());
} }
return "/log/ntc/mmVoipList"; return "/log/ntc/mmVoipList";

View File

@@ -77,7 +77,7 @@ public class OpenVpnLogController extends BaseController{
logger.info("查询OpenVpn日志成功"); logger.info("查询OpenVpn日志成功");
} }
} catch (Exception e) { } catch (Exception e) {
logger.info("查询OpenVpn日志失败", e); logger.error("查询OpenVpn日志失败", e);
addMessageLog(model, e.getMessage()); addMessageLog(model, e.getMessage());
} }
return "/log/ntc/openVpnList"; return "/log/ntc/openVpnList";

View File

@@ -42,7 +42,7 @@ public class P2pLogController extends BaseController {
String url = Constants.LOG_BASE_URL + Constants.NTC_P2P_LOG; String url = Constants.LOG_BASE_URL + Constants.NTC_P2P_LOG;
String recv = HttpClientUtil.getMsg(url, params, request); String recv = HttpClientUtil.getMsg(url, params, request);
logger.info("查询结果:" + recv); logger.error("查询结果:" + recv);
if (StringUtils.isNotBlank(recv)) { if (StringUtils.isNotBlank(recv)) {
Gson gson = new GsonBuilder().create(); Gson gson = new GsonBuilder().create();
LogRecvData<NtcP2pLog> fromJson = gson.fromJson(recv, new TypeToken<LogRecvData<NtcP2pLog>>(){}.getType()); LogRecvData<NtcP2pLog> fromJson = gson.fromJson(recv, new TypeToken<LogRecvData<NtcP2pLog>>(){}.getType());

View File

@@ -62,7 +62,7 @@ public class PptpLogController extends BaseController {
model.addAttribute("page", page); model.addAttribute("page", page);
} }
} catch (Exception e) { } catch (Exception e) {
logger.info("PPTP日志查询失败", e); logger.error("PPTP日志查询失败", e);
addMessageLog(model, e.getMessage()); addMessageLog(model, e.getMessage());
} }

View File

@@ -77,7 +77,7 @@ public class SshLogController extends BaseController{
logger.info("查询Ssh日志成功"); logger.info("查询Ssh日志成功");
} }
} catch (Exception e) { } catch (Exception e) {
logger.info("查询Ssh日志失败", e); logger.error("查询Ssh日志失败", e);
addMessageLog(model, e.getMessage()); addMessageLog(model, e.getMessage());
} }
return "/log/ntc/sshList"; return "/log/ntc/sshList";

View File

@@ -66,7 +66,7 @@ public class SslLogController extends BaseController {
model.addAttribute("page", page); model.addAttribute("page", page);
} }
} catch (Exception e) { } catch (Exception e) {
logger.info("SSL日志查询失败", e); logger.error("SSL日志查询失败", e);
addMessageLog(model, e.getMessage()); addMessageLog(model, e.getMessage());
} }

View File

@@ -1197,3 +1197,7 @@ snat_ip_reuse_adress_pool_loop=SNAT IP Reuse Address Pool Loop
dnat_ip_reuse_adress_pool_loop=DNAT IP Reuse Address Pool Loop dnat_ip_reuse_adress_pool_loop=DNAT IP Reuse Address Pool Loop
snat_policy=SNAT Reuse Policy snat_policy=SNAT Reuse Policy
dnat_policy=DNAT Reuse Policy dnat_policy=DNAT Reuse Policy
report_total=Total
message_type=Message Type
as=AS
route=Route

View File

@@ -1197,3 +1197,9 @@ dnat_ip_complex_loop=DNAT Complex Loop
snat_ip_complex_loop=SNAT Complex Loop snat_ip_complex_loop=SNAT Complex Loop
snat_ip_reuse_adress_pool_loop=SNAT IP Reuse Address Pool Loop snat_ip_reuse_adress_pool_loop=SNAT IP Reuse Address Pool Loop
dnat_ip_reuse_adress_pool_loop=DNAT IP Reuse Address Pool Loop dnat_ip_reuse_adress_pool_loop=DNAT IP Reuse Address Pool Loop
snat_policy=SNAT Reuse Policy
dnat_policy=DNAT Reuse Policy
report_total=Total
message_type=\u6D88\u606F\u7C7B\u578B
as=\u81EA\u6CBB\u7CFB\u7EDF\u53F7
route=\u8DEF\u7531\u4FE1\u606F

View File

@@ -1191,3 +1191,7 @@ dnat_complex_loop=DNAT IP\u590D\u7528\u56DE\u6D41
ip_reuse_adress_pool_loop=IP\u590D\u7528\u5730\u5740\u6C60\u56DE\u6D41 ip_reuse_adress_pool_loop=IP\u590D\u7528\u5730\u5740\u6C60\u56DE\u6D41
snat_policy=SNAT\u590D\u7528\u7B56\u7565 snat_policy=SNAT\u590D\u7528\u7B56\u7565
dnat_policy=DNAT\u590D\u7528\u7B56\u7565 dnat_policy=DNAT\u590D\u7528\u7B56\u7565
report_total=\u5408\u8BA1
message_type=\u6D88\u606F\u7C7B\u578B
as=\u81EA\u6CBB\u7CFB\u7EDF\u53F7
route=\u8DEF\u7531\u4FE1\u606F

View File

@@ -219,14 +219,14 @@ clusterBStartTime=1503504000725
isCommit=true isCommit=true
############################################################################################################################################ ############################################################################################################################################
############################################################################################################################################ ############################################################################################################################################
httpUrl=http://10.0.6.242:8080/galaxy/service/cfg/v1/ httpUrl=http://192.168.10.204:7777/galaxy/service/cfg/v1/
maatCfg=configSources maatCfg=configSources
fileUploadCfg=fileUploadSources fileUploadCfg=fileUploadSources
callbackCfg=commonSources callbackCfg=commonSources
fileDigestCfg=fileDigestSources fileDigestCfg=fileDigestSources
configIdSources=configPzIdSources configIdSources=configPzIdSources
#logBaseUrl=http://10.0.6.242:8080/galaxy/service/log/v1/ #logBaseUrl=http://10.0.6.242:8080/galaxy/service/log/v1/
logBaseUrl=http://10.0.6.242:8080/galaxy/service/log/v1/ logBaseUrl=http://192.168.10.204:7777/galaxy/service/log/v1/
ntcPzReport=ntcPzReport ntcPzReport=ntcPzReport
ntcServiceReport=ntcServiceReport ntcServiceReport=ntcServiceReport
ntcTagReport=ntcTagReport ntcTagReport=ntcTagReport
@@ -270,7 +270,7 @@ mmLogoDetectionLog=mmLogoDetectionLogs
mmFaceRecognizationLog=mmFaceRecognizationLogs mmFaceRecognizationLog=mmFaceRecognizationLogs
######################################## ########################################
#\u5927\u5C4F\u56FE\u8868\u5C55\u793A\u670D\u52A1\u63A5\u53E3 #\u5927\u5C4F\u56FE\u8868\u5C55\u793A\u670D\u52A1\u63A5\u53E3
dashboardUrl=http://10.0.6.101:8080/galaxy/service/log/v1/ dashboardUrl=http://192.168.10.204:7777/galaxy/service/log/v1/
trafficIpActive=trafficIpActive trafficIpActive=trafficIpActive
trafficProtocol=trafficProtocol trafficProtocol=trafficProtocol
trafficApp=trafficApp trafficApp=trafficApp
@@ -524,3 +524,4 @@ log_time_start=2018-08-01 00:00:00
log_time_end=2018-10-01 00:00:00 log_time_end=2018-10-01 00:00:00
area_tag=location area_tag=location
isp_tag=isp isp_tag=isp
mmFileDigestLog=mmFileDigestLogs

View File

@@ -0,0 +1,10 @@
ALTER TABLE ssl_keyword_cfg MODIFY cfg_keywords VARCHAR(2048),MODIFY district varchar(128);
ALTER TABLE app_ssl_cert_cfg MODIFY cfg_keywords VARCHAR(2048);
ALTER TABLE app_string_feature_cfg MODIFY cfg_keywords VARCHAR(2048);
ALTER TABLE byte_features_cfg MODIFY cfg_desc VARCHAR(128);
ALTER TABLE complex_keyword_cfg MODIFY district VARCHAR(128);
ALTER TABLE dns_domain_cfg MODIFY district VARCHAR(128);
ALTER TABLE http_req_head_cfg MODIFY district VARCHAR(128);
ALTER TABLE http_res_head_cfg MODIFY district VARCHAR(128);
ALTER TABLE intercept_pkt_bin MODIFY district VARCHAR(128);
ALTER TABLE mail_keyword_cfg MODIFY district VARCHAR(128),MODIFY cfg_keywords VARCHAR(2048);

View File

@@ -28,13 +28,13 @@
<div class="form-group"> <div class="form-group">
<label class="col-md-3 control-label"><font color="red">*</font><spring:message code="task_name"></spring:message>:</label> <label class="col-md-3 control-label"><font color="red">*</font><spring:message code="task_name"></spring:message>:</label>
<div class="col-md-4"> <div class="col-md-4">
<input type="text" class="form-control required" name="taskName" value="${taskInfo.taskName}"> <input type="text" class="form-control required" name="taskName" maxlength="64" value="${taskInfo.taskName}">
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group">
<label class="col-md-3 control-label"><font color="red">*</font><spring:message code="task_org"></spring:message>:</label> <label class="col-md-3 control-label"><font color="red">*</font><spring:message code="task_org"></spring:message>:</label>
<div class="col-md-4"> <div class="col-md-4">
<input type="text" class="form-control required" name="taskOrg" value="${taskInfo.taskOrg}"> <input type="text" class="form-control required" name="taskOrg" maxlength="128" value="${taskInfo.taskOrg}">
</div> </div>
</div> </div>
<div class="form-group"> <div class="form-group">
@@ -47,7 +47,7 @@
<div class="form-group last"> <div class="form-group last">
<label class="col-md-3 control-label"><th><spring:message code="desc"/>:</label> <label class="col-md-3 control-label"><th><spring:message code="desc"/>:</label>
<div class="col-md-4"> <div class="col-md-4">
<input type="text" class="form-control" name="taskDesc" value="${taskInfo.taskDesc}"> <input type="text" class="form-control" maxlength="512" name="taskDesc" value="${taskInfo.taskDesc}">
</div> </div>
</div> </div>
</div> </div>

View File

@@ -189,6 +189,9 @@
<th><spring:message code='s_subscribe_id'/></th> <th><spring:message code='s_subscribe_id'/></th>
<th><spring:message code='d_subscribe_id'/></th> <th><spring:message code='d_subscribe_id'/></th>
<th><spring:message code='scene_file'/></th> <th><spring:message code='scene_file'/></th>
<th><spring:message code='message_type'/></th>
<th><spring:message code='as'/></th>
<th><spring:message code='route'/></th>
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
@@ -245,7 +248,9 @@
<td>${log.dAsn}</td> <td>${log.dAsn}</td>
<td>${log.sSubscribeId}</td> <td>${log.sSubscribeId}</td>
<td>${log.dSubscribeId}</td> <td>${log.dSubscribeId}</td>
<td>${log.sceneFile}</td> <td>${log.type}</td>
<td>${log.as}</td>
<td>${log.route}</td>
</tr> </tr>
</c:forEach> </c:forEach>
</tbody> </tbody>

View File

@@ -0,0 +1,304 @@
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ include file="/WEB-INF/include/taglib.jsp"%>
<html>
<head>
<script type="text/javascript">
$(document).ready(function(){
//筛选功能
filterActionInit();
//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();
});
});
</script>
</head>
<body>
<div class="page-content">
<div class="theme-panel hidden-xs hidden-sm">
</div>
<h3 class="page-title">
<spring:message code="file_digest_control"/>
</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/mmFileDigestLogs" 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="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">
<form:select path="action" class="selectpicker select2 input-small">
<form:option value=""><spring:message code="action"/></form:option>
<c:forEach items="${serviceList}" var="service"
varStatus="satus">
<c:forEach items="${fns:getDictList('SERVICE_ACTION') }" var="dict">
<c:if test="${(dict.itemCode eq service.action) && (service.action ne 128) && (service.action ne 32) && (service.action ne 96) }">
<form:option value="${dict.itemCode}"><spring:message code="${dict.itemValue}"/></form:option>
</c:if>
</c:forEach>
</c:forEach>
</form:select>
</div>
<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" class="form-control input-medium Wdate "
value="${log.searchFoundStartTime}" onclick="WdatePicker({dateFmt:'yyyy-MM-dd HH:mm:ss',isShowClear:true});"/>
</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" class="form-control input-medium Wdate "
value="${log.searchFoundEndTime}" onclick="WdatePicker({dateFmt:'yyyy-MM-dd HH:mm:ss',isShowClear:true});"/>
</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"></spring:message> <i class="fa fa-angle-double-down"></i></button>
</div>
<div class="pull-right">
<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="protocol_type"/></label>
<c:set var="select"><spring:message code='select'/></c:set>
<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="dict">
<form:option value="${dict.itemCode}" ><spring:message code="${dict.itemValue}"/></form:option>
</c:forEach>
</form:select>
</div>
</div>
<%-- <div class="col-md-2">
<div class="form-group">
<label><spring:message code="direct"/></label>
<form:select path="direction" class="selectpicker select2 form-control">
<form:option value=""><spring:message code="select"/></form:option>
<c:forEach items="${fns:getDictList('IP_LOCATION')}" var="dict">
<form:option value="${dict.itemCode}"><spring:message code="${dict.itemValue}"/></form:option>
</c:forEach>
</form:select>
</div>
</div> --%>
<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"/></label>
<input name="capIp" type="text" class="form-control" value="${log.capIp}"/>
</div>
</div>
<div class="col-md-2">
<div class="form-group">
<label><spring:message code="clientip"/></label>
<input id="sIp" name="sIp" class="form-control" type="text" value="${log.sIp}"/>
</div>
</div>
<div class="col-md-2">
<div class="form-group">
<label><spring:message code="serverip"/></label>
<input id="dIp" name="dIp" class="form-control" type="text" value="${log.dIp}"/>
</div>
</div>
<div class="col-md-2">
<label><spring:message code="cfg_id"></spring:message></label>
<input name="cfgId" type="text" class="form-control logCfgId number" value="${log.cfgId }"/>
</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='cfg_id'/></th>
<th><spring:message code="action"/></th>
<th><spring:message code='found_time'/></th>
<th><spring:message code='entrance'/></th>
<th><spring:message code='pid'/></th>
<th><spring:message code='access_url'/></th>
<th><spring:message code='log_uri'/></th>
<th><spring:message code='referer'/></th>
<th><spring:message code='harm_level'/></th>
<th><spring:message code='fd_type'/></th>
<%-- <th><spring:message code='av_protocol'/></th> --%>
<th><spring:message code='clj_ip'/></th>
<th><spring:message code='protocol'/></th>
<th><spring:message code='addr_type'/></th>
<th><spring:message code='serverip'/></th>
<th><spring:message code='clientip'/></th>
<th><spring:message code='serverport'/></th>
<th><spring:message code='clientport'/></th>
<%-- <th><spring:message code='deviceid'/></th> --%>
<%-- <th><spring:message code='direct'/></th> --%>
<th><spring:message code='stream_type'/></th>
<%-- <th><spring:message code='nest_addr_list'/></th> --%>
<th><spring:message code='server_locate'/></th>
<th><spring:message code='client_locate'/></th>
<th><spring:message code='s_asn'/></th>
<th><spring:message code='d_asn'/></th>
<th><spring:message code='s_subscribe_id'/></th>
<th><spring:message code='d_subscribe_id'/></th>
<th><spring:message code='scene_file'/></th>
</tr>
</thead>
<tbody>
<c:forEach items="${page.list}" var="log" varStatus="status" step="1">
<tr>
<td>${log.cfgId } <a href="javascript:void(0)" name="viewLogInfo"><i class="icon-book-open"></i></a></td>
<td>
<c:forEach items="${fns:getDictList('SERVICE_ACTION')}" var="dict">
<c:if test="${dict.itemCode eq log.action}">
<spring:message code="${dict.itemValue}"/>
</c:if>
</c:forEach>
</td>
<td>${log.foundTime}</td>
<td>
<c:forEach items="${fns:getDictList('ENTRANCE')}" var="dict">
<c:if test="${dict.itemCode eq log.entranceId}">
<spring:message code="${dict.itemValue}"/>
</c:if>
</c:forEach>
</td>
<td>${log.pid}</td>
<td>
<c:if test="${fn:startsWith(log.url, 'http://')}">
${fn:substring(log.url,7,-1)}
</c:if>
<c:if test="${!fn:startsWith(log.url, 'http://') and !empty log.url}">
${log.url}
</c:if>
</td>
<td>
<c:if test="${fn:startsWith(log.logUri, 'http')}">
<a href="${log.logUri}" data-original-title="${log.logUri}" target="_blank"
class="tooltips" data-flag="false" data-html="true" data-placement="top">
${fn:substring(log.logUri,0,20) }
</a>
</c:if>
<c:if test="${!fn:startsWith(log.logUri, 'http') and !empty log.logUri}">
<a href="http://${log.logUri}" data-original-title="http://${log.logUri}" target="_blank"
class="tooltips" data-flag="false" data-html="true" data-placement="top">
http://${fn:substring(log.logUri,0,20) }
</a>
</c:if>
</td>
<td>
${log.referer}
</td>
<td>${log.level}</td>
<!--0动态黑名单FD1静态配置FD2首次分析命中 -->
<td>
<c:if test="${log.fdType eq 0 }"><spring:message code="black_block_list"/></c:if>
<c:if test="${log.fdType eq 1 }"><spring:message code="static_cfg_block"/></c:if>
<c:if test="${log.fdType eq 2 }"><spring:message code="first_hit"/></c:if>
</td>
<%-- <td>${log.protocol}</td> --%>
<td title="${log.capIp }">${fns:abbr(log.capIp, 42)}</td>
<td>${log.transProto}</td>
<td>
<c:forEach items="${fns:getDictList('IP_TYPE')}" var="dic">
<c:if test="${log.addrType==dic.itemCode}"><spring:message code="${dic.itemValue }"/></c:if>
</c:forEach>
</td>
<td title="${log.dIp }">${fns:abbr(log.dIp, 42)}</td>
<td title="${log.sIp }">${fns:abbr(log.sIp, 42)}</td>
<td>${log.dPort}</td>
<td>${log.sPort}</td>
<%-- <td>${log.deviceId}</td>
<td>
<c:forEach items="${fns:getDictList('IP_LOCATION')}" var="dic">
<c:if test="${log.direction==dic.itemCode}"><spring:message code="${dic.itemValue }"/></c:if>
</c:forEach>
</td> --%>
<td>
<c:forEach items="${fns:getDictList('LOG_STREAM_TYPE')}" var="dic">
<c:if test="${log.streamDir==dic.itemCode}"><spring:message code="${dic.itemValue }"/></c:if>
</c:forEach>
</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.sceneFile}</td>
</tr>
</c:forEach>
</tbody>
</table>
<div class="page">${page}</div>
</div>
</div>
</div>
</div>
</div>
</body>
</html>

View File

@@ -17,7 +17,7 @@
trContent += "<tr>"; trContent += "<tr>";
<c:forEach items="${requestInfos}" var="lwhh"> <c:forEach items="${requestInfos}" var="lwhh">
<c:if test="${lwhh.id eq data.key}"> <c:if test="${lwhh.id eq data.key}">
trContent += "<td>${lwhh.requestTitle}</td>"; trContent += "<td title='${lwhh.requestTitle}'>${fns:abbr(lwhh.requestTitle,32)}</td>";
</c:if> </c:if>
</c:forEach> </c:forEach>
<c:forEach items="${data.value}" var="cloumn" varStatus="status"> <c:forEach items="${data.value}" var="cloumn" varStatus="status">

View File

@@ -1,6 +1,7 @@
$(function(){ $(function(){
//增加描述新增时的文字长度限制 //增加描述新增时的文字长度限制
$("form input[name='cfgDesc']").attr("maxlength","128") $("form input[name='cfgDesc']").attr("maxlength","128");
$("form input[name$='cfgKeywords']").attr("maxlength","2048");
//截取过长的文字 使用id选择器;例如:tab对象->tr->td对象. 排除日志table .logTb //截取过长的文字 使用id选择器;例如:tab对象->tr->td对象. 排除日志table .logTb
$("#contentTable").not(".logTb").find("td").each(function(i){ $("#contentTable").not(".logTb").find("td").each(function(i){
//获取td当前对象的文本,如果长度大于25; //获取td当前对象的文本,如果长度大于25;