新增IR_SNAT_LOG和IR_DNAT_LOG日志查询

修复实时报表 表格合计--最后一列数据合计错误
This commit is contained in:
leijun
2018-12-06 15:58:40 +08:00
parent 04e35d5b3c
commit d3bbf10f72
11 changed files with 1018 additions and 4 deletions

View File

@@ -0,0 +1,81 @@
package com.nis.domain.log;
public class IrDnatLog extends BaseLogEntity<IrDnatLog> {
private static final long serialVersionUID = 5860838446015457328L;
protected String userId;// 用户名
protected String natIp;// 复用的ip地址
protected String creatTime;// 链接建立时间
protected String closeTime;// 链接结束时间
protected String c2sPktNum;// c2s包数
protected String s2cPktNum;// s2c包数
protected String c2sByteNum;// c2s字节数
protected String s2cByteNum;// s2c字节数
public String getUserId() {
return userId;
}
public void setUserId(String userId) {
this.userId = userId;
}
public String getNatIp() {
return natIp;
}
public void setNatIp(String natIp) {
this.natIp = natIp;
}
public String getCreatTime() {
return creatTime;
}
public void setCreatTime(String creatTime) {
this.creatTime = creatTime;
}
public String getCloseTime() {
return closeTime;
}
public void setCloseTime(String closeTime) {
this.closeTime = closeTime;
}
public String getC2sPktNum() {
return c2sPktNum;
}
public void setC2sPktNum(String c2sPktNum) {
this.c2sPktNum = c2sPktNum;
}
public String getS2cPktNum() {
return s2cPktNum;
}
public void setS2cPktNum(String s2cPktNum) {
this.s2cPktNum = s2cPktNum;
}
public String getC2sByteNum() {
return c2sByteNum;
}
public void setC2sByteNum(String c2sByteNum) {
this.c2sByteNum = c2sByteNum;
}
public String getS2cByteNum() {
return s2cByteNum;
}
public void setS2cByteNum(String s2cByteNum) {
this.s2cByteNum = s2cByteNum;
}
}

View File

@@ -0,0 +1,73 @@
package com.nis.domain.log;
public class IrSnatLog extends BaseLogEntity<IrSnatLog> {
private static final long serialVersionUID = 5860838446015457328L;
protected String natIp;// 复用的ip地址
protected String creatTime;// 链接建立时间
protected String closeTime;// 链接结束时间
protected String c2sPktNum;// c2s包数
protected String s2cPktNum;// s2c包数
protected String c2sByteNum;// c2s字节数
protected String s2cByteNum;// s2c字节数
public String getNatIp() {
return natIp;
}
public void setNatIp(String natIp) {
this.natIp = natIp;
}
public String getCreatTime() {
return creatTime;
}
public void setCreatTime(String creatTime) {
this.creatTime = creatTime;
}
public String getCloseTime() {
return closeTime;
}
public void setCloseTime(String closeTime) {
this.closeTime = closeTime;
}
public String getC2sPktNum() {
return c2sPktNum;
}
public void setC2sPktNum(String c2sPktNum) {
this.c2sPktNum = c2sPktNum;
}
public String getS2cPktNum() {
return s2cPktNum;
}
public void setS2cPktNum(String s2cPktNum) {
this.s2cPktNum = s2cPktNum;
}
public String getC2sByteNum() {
return c2sByteNum;
}
public void setC2sByteNum(String c2sByteNum) {
this.c2sByteNum = c2sByteNum;
}
public String getS2cByteNum() {
return s2cByteNum;
}
public void setS2cByteNum(String s2cByteNum) {
this.s2cByteNum = s2cByteNum;
}
}

View File

@@ -757,4 +757,7 @@ public final class Constants {
public static final String IP_REUSE_CALL_CGI_URL = Configurations.getStringProperty("ip_reuse_call_cgi_url","");
public static final String ALL_IP_GET = Configurations.getStringProperty("allIpGet","AllIpGet");
public static final String IP_NUM_GET = Configurations.getStringProperty("ipNumGet","IpNumGet");
//日志查询接口URL
public static final String IR_SNAT_LOG = Configurations.getStringProperty("irSnatLog","");
public static final String IR_DNAT_LOG = Configurations.getStringProperty("irDnatLog","");
}

View File

@@ -0,0 +1,70 @@
package com.nis.web.controller.log.ntc;
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.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 com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.gson.reflect.TypeToken;
import com.nis.domain.FunctionServiceDict;
import com.nis.domain.PageLog;
import com.nis.domain.log.IrDnatLog;
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("${adminPath}/log/ntc/irDnatLogs")
public class IrDnatLogController extends BaseController {
@RequestMapping(value = {"list", ""})
public String list(@ModelAttribute("log") IrDnatLog log, Model model, HttpServletRequest request, HttpServletResponse response) {
try {
PageLog<IrDnatLog> page = new PageLog<IrDnatLog>(request, response);
Map<String, Object> params = new HashMap<String, Object>();
params.put("pageSize", page.getPageSize());
params.put("pageNo", page.getPageNo());
initLogSearchValue(log, params);
List<FunctionServiceDict> serviceList = DictUtils.getFunctionServiceDictList(log.getFunctionId());
model.addAttribute("serviceList", serviceList);
String url = Constants.LOG_BASE_URL + Constants.IR_DNAT_LOG;
String recv = HttpClientUtil.getMsg(url, params, request);
logger.info("查询结果:" + recv);
if (StringUtils.isNotBlank(recv)) {
Gson gson = new GsonBuilder().create();
LogRecvData<IrDnatLog> fromJson = gson.fromJson(recv, new TypeToken<LogRecvData<IrDnatLog>>(){}.getType());
if (fromJson.getStatus().intValue() == 200) {
page.setCount(fromJson.getData().getCount());page.setList(fromJson.getData().getList());
List<IrDnatLog> list = page.getList();
for (IrDnatLog l : list) {
l.setFunctionId(log.getFunctionId());
setLogAction(l,serviceList);
}
model.addAttribute("page", page);
}
}
} catch (Exception e) {
logger.error("查询失败", e);
addMessageLog(model, e.getMessage());
}
return "/log/ntc/irDnatLogList";
}
}

View File

@@ -0,0 +1,70 @@
package com.nis.web.controller.log.ntc;
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.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 com.google.gson.Gson;
import com.google.gson.GsonBuilder;
import com.google.gson.reflect.TypeToken;
import com.nis.domain.FunctionServiceDict;
import com.nis.domain.PageLog;
import com.nis.domain.log.IrSnatLog;
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("${adminPath}/log/ntc/irSnatLogs")
public class IrSnatLogController extends BaseController {
@RequestMapping(value = {"list", ""})
public String list(@ModelAttribute("log") IrSnatLog log, Model model, HttpServletRequest request, HttpServletResponse response) {
try {
PageLog<IrSnatLog> page = new PageLog<IrSnatLog>(request, response);
Map<String, Object> params = new HashMap<String, Object>();
params.put("pageSize", page.getPageSize());
params.put("pageNo", page.getPageNo());
initLogSearchValue(log, params);
List<FunctionServiceDict> serviceList = DictUtils.getFunctionServiceDictList(log.getFunctionId());
model.addAttribute("serviceList", serviceList);
String url = Constants.LOG_BASE_URL + Constants.IR_SNAT_LOG;
String recv = HttpClientUtil.getMsg(url, params, request);
logger.info("查询结果:" + recv);
if (StringUtils.isNotBlank(recv)) {
Gson gson = new GsonBuilder().create();
LogRecvData<IrSnatLog> fromJson = gson.fromJson(recv, new TypeToken<LogRecvData<IrSnatLog>>(){}.getType());
if (fromJson.getStatus().intValue() == 200) {
page.setCount(fromJson.getData().getCount());page.setList(fromJson.getData().getList());
List<IrSnatLog> list = page.getList();
for (IrSnatLog l : list) {
l.setFunctionId(log.getFunctionId());
setLogAction(l,serviceList);
}
model.addAttribute("page", page);
}
}
} catch (Exception e) {
logger.error("查询失败", e);
addMessageLog(model, e.getMessage());
}
return "/log/ntc/irSnatLogList";
}
}