@@ -5,6 +5,7 @@ import java.util.Calendar;
import java.util.HashMap ;
import java.util.List ;
import java.util.Map ;
import java.util.Properties ;
import javax.servlet.http.HttpServletRequest ;
import javax.servlet.http.HttpServletResponse ;
@@ -22,6 +23,7 @@ import com.google.gson.reflect.TypeToken;
import com.nis.domain.Page ;
import com.nis.domain.PageLog ;
import com.nis.domain.SysUser ;
import com.nis.domain.log.BaseLogEntity ;
import com.nis.domain.log.SearchReport ;
import com.nis.domain.maat.LogRecvData ;
import com.nis.domain.report.NtcAsnRecord ;
@@ -29,6 +31,7 @@ import com.nis.domain.report.NtcIpRangeReport;
import com.nis.domain.report.NtcURLReport ;
import com.nis.util.Constants ;
import com.nis.util.DateUtils ;
import com.nis.util.StringUtil ;
import com.nis.util.httpclient.HttpClientUtil ;
import com.nis.web.controller.BaseController ;
import com.nis.web.security.UserUtils ;
@@ -37,22 +40,25 @@ import com.nis.web.security.UserUtils;
@RequestMapping ( " ${adminPath}/report " )
public class ReportController extends BaseController {
@RequestMapping ( " /list " )
public String list ( @ModelAttribute ( " bean " ) SearchReport bean , Model model , HttpServletRequest request , HttpServletResponse response ) {
public String list ( @ModelAttribute ( " bean " ) SearchReport bean , Model model , HttpServletRequest request ,
HttpServletResponse response ) {
initReportCondition ( model , bean ) ;
return " /report/list " ;
}
//asn
@RequestMapping ( value = { " /asnConnList " , " " } )
public String asnConnLists ( @ModelAttribute ( " log " ) NtcAsnRecord log , Model model , HttpServletRequest request , HttpServletResponse response ) {
// asn
@RequestMapping ( value = { " /asnConnList " , " " } )
public String asnConnLists ( @ModelAttribute ( " log " ) NtcAsnRecord log , Model model , HttpServletRequest request ,
HttpServletResponse response ) {
try {
PageLog < NtcAsnRecord > page = new PageLog < NtcAsnRecord > ( request , response ) ;
Map < String , Object > params = new HashMap < String , Object > ( ) ;
params . put ( " pageSize " , page . getPageSize ( ) ) ;
params . put ( " pageNo " , page . getPageNo ( ) ) ;
//判断请求参数
if ( StringUtils . isNotEmpty ( log . getSearchAsnType ( ) ) ) {
// 判断请求参数
if ( StringUtils . isNotEmpty ( log . getSearchAsnType ( ) ) ) {
params . put ( " searchAsnType " , log . getSearchAsnType ( ) ) ;
} else {
} else {
params . put ( " searchAsnType " , 1 ) ;
}
if ( StringUtils . isNotBlank ( log . getSearchFoundStartTime ( ) )
@@ -60,40 +66,43 @@ public class ReportController extends BaseController {
params . put ( " searchFoundStartTime " , log . getSearchFoundStartTime ( ) ) ;
params . put ( " searchFoundEndTime " , log . getSearchFoundEndTime ( ) ) ;
} else {
Calendar time = Calendar . getInstance ( ) ;
String searchEndTime = DateUtils . formatDateTime ( time . getTime ( ) ) ;
time . add ( Calendar . HOUR_OF_DAY , - 1 ) ;
String searchStartTime = DateUtils . formatDateTime ( time . getTime ( ) ) ;
params . put ( " searchFoundStartTime " , searchStartTime ) ;
params . put ( " searchFoundEndTime " , searchEndTime ) ;
log . setSearchFoundStartTime ( searchStartTime ) ;
log . setSearchFoundEndTime ( searchEndTime ) ;
}
if ( StringUtils . isNotBlank ( log . getAsn ( ) ) ) {
Calendar time = Calendar . getInstance ( ) ;
String searchEndTime = DateUtils . formatDateTime ( time . getTime ( ) ) ;
time . add ( Calendar . HOUR_OF_DAY , - 1 ) ;
String searchStartTime = DateUtils . formatDateTime ( time . getTime ( ) ) ;
params . put ( " searchFoundStartTime " , searchStartTime ) ;
params . put ( " searchFoundEndTime " , searchEndTime ) ;
log . setSearchFoundStartTime ( searchStartTime ) ;
log . setSearchFoundEndTime ( searchEndTime ) ;
}
if ( StringUtils . isNotBlank ( log . getAsn ( ) ) ) {
params . put ( " searchAsn " , log . getAsn ( ) ) ;
}
String url = Constants . LOG_BASE_URL + Constants . NTC_ASN_RECORD ;
String url = Constants . LOG_BASE_URL + Constants . NTC_ASN_RECORD ;
String recv = HttpClientUtil . getMsg ( url , params , request ) ;
// String recv="{\"status\":200,\"businessCode\":2001000,\"reason\":\"数据获取操作成功\",\"msg\":\"ASN通联关系(源,目的)检索成功\",\"fromuri\":\"/galaxy-service/service/log/v1/ntcAsnRecord\",\"logSource\":0,\"traceCode\":\"2018121609404451375322\",\"data\":"
// +"{\"pageNo\":1,\"pageSize\":30,\"count\":66564,\"last\":2219,\"list\":[{\"bps\":\"8.56\",\"pps\":\"0.07\",\"sAsn \": \"9198\",\"dAsn\":\" 405 45_26836\"},"+
// "{\"bps\":\"3.68\",\"pps\":\"0.12\",\"sAsn\":\"9198\",\"dAsn\":\"19506\"}, {\"bps\":\"1.77 \",\"pps\":\"0.08 \",\"sAsn\":\"38266 \",\"dAsn\":\"N/A \"},"+
// "{\"bps\":\"493.55 \",\"pps\":\"0.76 \",\"sAsn\":\"30922 \",\"dAsn\":\"2 9555 \"},{\"bps\":\"26.63 \",\"pps\":\"0.04 \",\"sAsn\":\"4454 6\",\"dAsn\":\"197482 \"},"+
// "{\"bps\":\"25.43 \",\"pps\":\"0.45 \",\"sAsn\":\"44391 \",\"dAsn\":\"9198 \"},{\"bps\":\"52.96 \",\"pps\":\"0.08 \",\"sAsn\":\"29555 \",\"dAsn\":\"14080\"}]}}";
//recv="{\"status\":200,\"businessCode\":2001000,\"reason\":\"数据获取操作成功\",\"msg\":\"ASN通联关系(源,目的)检索成功\",\"fromuri\":\"/galaxy-service/service/log/v1/ntcAsnRecord\",\"logSource\":0,\"traceCode\":\"2018121722070122546049\",\"data\":{\"pageNo\":1,\"pageSize\":30,\"count\":24466,\"last\":816,\"list\":[{\"bps\":\"20.21\",\"pps\":\"0.17\",\"asn\":\"6858\"},{\"bps\":\"48662.31\",\"pps\":\"91.27\",\"asn\":\"60476\"},{\"bps\":\"3770.41\",\"pps\":\"5.38\",\"asn\":\"49963\"},{\"bps\":\"1.74\",\"pps\":\"0.01\",\"asn\":\"327892\"},{\"bps\":\"72.96\",\"pps\":\"0.13\",\"asn\":\"20598\"},{\"bps\":\"3.76\",\"pps\":\"0.03\",\"asn\":\"266106\"},{\"bps\":\"889.16\",\"pps\":\"1.28\",\"asn\":\"21928\"},{\"bps\":\"109274.80\",\"pps\":\"160.89\",\"asn\":\"200052\"},{\"bps\":\"3269.08\",\"pps\":\"4.85\",\"asn\":\"196977\"},{\"bps\":\"0.16\",\"pps\":\"0\",\"asn\":\"42643\"},{\"bps\":\"872.50\",\"pps\":\"1.22\",\"asn\":\"35017\"},{\"bps\":\"51079.66\",\"pps\":\"0\",\"asn\":\"57701\"},{\"bps\":\"1.25\",\"pps\":\"0.05\",\"asn\":\"58000\"},{\"bps\":\"0.45\",\"pps\":\"0.02\",\"asn\":\"266022\"},{\"bps\":\"0.16\",\"pps\":\"0\",\"asn\":\"43246\"},{\"bps\":\"5180.62\",\"pps\":\"9.11\",\"asn\":\"57172\"},{\"bps\":\"145.86\",\"pps\":\"0.29\",\"asn\":\"36994\"},{\"bps\":\"31.96\",\"pps\":\"0.06\",\"asn\":\"48536\"},{\"bps\":\"1009.25\",\"pps\":\"1.67\",\"asn\":\"4795\"},{\"bps\":\"0.86\",\"pps\":\"0.02\",\"asn\":\"196924\"},{\"bps\":\"0.5\",\"pps\":\"0\",\"asn\":\"21275\"},{\"bps\":\"13432.03\",\"pps\":\"0.28\",\"asn\":\"198640\"},{\"bps\":\"9.47\",\"pps\":\"0.33\",\"asn\":\"197287\"},{\"bps\":\"5.84\",\"pps\":\"0.02\",\"asn\":\"197155\"},{\"bps\":\"1890.60\",\"pps\":\"2.86\",\"asn\":\"29208\"},{\"bps\":\"18.26\",\"pps\":\"0.37\",\"asn\":\"51078\"},{\"bps\":\"1.53\",\"pps\":\"0.02\",\"asn\":\"5390\"},{\"bps\":\"16074.91\",\"pps\":\"30.44 \",\"a sn\":\"34974\"},{\"bps\":\"1695.46\",\"pps\":\"2.51\",\"asn\":\"31103\"},{\"bps\":\"42.18\",\"pps\":\"0.24\",\"asn\":\"6407 \"}]}}";
// String
// recv="{\"status\":200,\"businessCode\":2001000,\"reason\":\"数据获取操作成功\",\"msg\":\"ASN通联关系(源,目的)检索成功\",\"fromuri\":\"/galaxy-service/service/log/v1/ntcAsnRecord \", \"logSource\":0,\"traceCode\":\"2018121609 404 451375322\",\"data\":"
// +"{\"pageNo\":1,\"pageSize\":30,\"count\":66564,\"last\":2219,\"list\":[ {\"bps\":\"8.56 \",\"pps\":\"0.07 \",\"sAsn\":\"9198 \",\"dAsn\":\"40545_26836 \"},"+
// "{\"bps\":\"3.68 \",\"pps\":\"0.12 \",\"sAsn\":\"9198 \",\"dAsn\":\"1 9506 \"},{\"bps\":\"1.77 \",\"pps\":\"0.08 \",\"sAsn\":\"3826 6\",\"dAsn\":\"N/A \"},"+
// "{\"bps\":\"493.55 \",\"pps\":\"0.76 \",\"sAsn\":\"30922 \",\"dAsn\":\"29555 \"},{\"bps\":\"26.63 \",\"pps\":\"0.04 \",\"sAsn\":\"44546 \",\"dAsn\":\"197482\"},"+
// "{\"bps\":\"25.43\",\"pps\":\"0.45\",\"sAsn\":\"44391\",\"dAsn\":\"9198\"},{\"bps\":\"52.96\",\"pps\":\"0.08\",\"sAsn\":\"29555 \",\"dA sn\":\"14080 \"}]}}";
// recv="{\"status\":200,\"businessCode\":2001000,\"reason\":\"数据获取操作成功\",\"msg\":\"ASN通联关系(源,目的)检索成功\",\"fromuri\":\"/galaxy-service/service/log/v1/ntcAsnRecord\",\"logSource\":0,\"traceCode\":\"2018121722070122546049\",\"data\":{\"pageNo\":1,\"pageSize\":30,\"count\":24466,\"last\":816,\"list\":[{\"bps\":\"20.21\",\"pps\":\"0.17\",\"asn\":\"6858\"},{\"bps\":\"48662.31\",\"pps\":\"91.27\",\"asn\":\"60476\"},{\"bps\":\"3770.41\",\"pps\":\"5.38\",\"asn\":\"49963\"},{\"bps\":\"1.74\",\"pps\":\"0.01\",\"asn\":\"327892\"},{\"bps\":\"72.96\",\"pps\":\"0.13\",\"asn\":\"20598\"},{\"bps\":\"3.76\",\"pps\":\"0.03\",\"asn\":\"266106\"},{\"bps\":\"889.16\",\"pps\":\"1.28\",\"asn\":\"21928\"},{\"bps\":\"109274.80\",\"pps\":\"160.89\",\"asn\":\"200052\"},{\"bps\":\"3269.08\",\"pps\":\"4.85\",\"asn\":\"196977\"},{\"bps\":\"0.16\",\"pps\":\"0\",\"asn\":\"42643\"},{\"bps\":\"872.50\",\"pps\":\"1.22\",\"asn\":\"35017\"},{\"bps\":\"51079.66\",\"pps\":\"0\",\"asn\":\"57701\"},{\"bps\":\"1.25\",\"pps\":\"0.05\",\"asn\":\"58000\"},{\"bps\":\"0.45\",\"pps\":\"0.02\",\"asn\":\"266022\"},{\"bps\":\"0.16\",\"pps\":\"0\",\"asn\":\"43246\"},{\"bps\":\"5180.62\",\"pps\":\"9.11\",\"asn\":\"57172\"},{\"bps\":\"145.86\",\"pps\":\"0.29\",\"asn\":\"36994\"},{\"bps\":\"31.96\",\"pps\":\"0.06\",\"asn\":\"48536\"},{\"bps\":\"1009.25\",\"pps\":\"1.67\",\"asn\":\"4795\"},{\"bps\":\"0.86\",\"pps\":\"0.02\",\"asn\":\"196924\"},{\"bps\":\"0.5\",\"pps\":\"0\",\"asn\":\"21275\"},{\"bps\":\"13432.03\",\"pps\":\"0.28\",\"asn\":\"198640\"},{\"bps\":\"9.47\",\"pps\":\"0.33\",\"asn\":\"197287\"},{\"bps\":\"5.84\",\"pps\":\"0.02\",\"asn\":\"197155\"},{\"bps\":\"1890.60\",\"pps\":\"2.86\",\"asn\":\"29208\"},{\"bps\":\"18.26\",\"pps\":\"0.37\",\"asn\":\"51078\"},{\"bps\":\"1.53\",\"pps\":\"0.02\",\"asn\":\"5390\"},{\"bps\":\"16074.91\",\"pps\":\"30.44\",\"asn\":\"34974\"},{\"bps\":\"1695.46\",\"pps\":\"2.51\",\"asn\":\"31103\"},{\"bps\":\"42.18\",\"pps\":\"0.24\",\"asn\":\"6407\"}]}}";
if ( StringUtils . isNotBlank ( recv ) ) {
Gson gson = new GsonBuilder ( ) . create ( ) ;
LogRecvData < NtcAsnRecord > fromJson = gson . fromJson ( recv , new TypeToken < LogRecvData < NtcAsnRecord > > ( ) {} . getType ( ) ) ;
LogRecvData < NtcAsnRecord > fromJson = gson . fromJson ( recv , new TypeToken < LogRecvData < NtcAsnRecord > > ( ) {
} . getType ( ) ) ;
if ( fromJson . getStatus ( ) . intValue ( ) = = 200 ) {
Page < NtcAsnRecord > data = fromJson . getData ( ) ;
page . setCount ( data . getCount ( ) ) ;
page . setLast ( data . getLast ( ) ) ;
page . setList ( data . getList ( ) ) ;
/*List<NtcCollectRadiusLog> list = page.getList();
for (NtcConnRecord Log l : list) {
l.setFunctionId(log.getFunctionId());
setLogAction(l,serviceList );
}*/
/*
* List<NtcCollectRadius Log> list = page.getList(); for
* (NtcConnRecordLog l : list) {
* l.setFunctionId(log.getFunctionId() );
* setLogAction(l,serviceList); }
*/
model . addAttribute ( " page " , page ) ;
}
}
@@ -101,56 +110,90 @@ public class ReportController extends BaseController {
logger . error ( " 查询失败 " , e ) ;
addMessageLog ( model , e . getMessage ( ) ) ;
}
return " /report/asnRecordList " ;
}
//
@RequestMapping ( value = { " /httpsUrlList " , " " } )
public String httpsUrlLists ( @ModelAttribute ( " log " ) NtcURLReport log , Model model , HttpServletRequest request , HttpServletResponse response ) {
@RequestMapping ( value = { " /httpsUrlList " , " " } )
public String httpsUrlLists ( @ModelAttribute ( " log " ) NtcURLReport log , Model model , HttpServletRequest request ,
HttpServletResponse response ) {
try {
PageLog < NtcURLReport > page = new PageLog < NtcURLReport > ( request , response ) ;
Map < String , Object > params = new HashMap < String , Object > ( ) ;
params . put ( " pageSize " , page . getPageSize ( ) ) ;
params . put ( " pageNo " , page . getPageNo ( ) ) ;
//判断请求参数
// 判断请求参数
if ( StringUtils . isNotBlank ( log . getSearchReportStartTime ( ) )
& & StringUtils . isNotBlank ( log . getSearchReportEndTime ( ) ) ) {
params . put ( " searchReportStartTime " , log . getSearchReportStartTime ( ) ) ;
params . put ( " searchReportEndTime " , log . getSearchReportEndTime ( ) ) ;
} else {
Calendar time = Calendar . getInstance ( ) ;
String searchEndTime = DateUtils . formatDateTime ( time . getTime ( ) ) ;
time . add ( Calendar . HOUR_OF_DAY , - 1 ) ;
String searchStartTime = DateUtils . formatDateTime ( time . getTime ( ) ) ;
params . put ( " searchReportStartTime " , searchStartTime ) ;
params . put ( " searchReportEndTime " , searchEndTime ) ;
log . setSearchReportStartTime ( searchStartTime ) ;
log . setSearchReportEndTime ( searchEndTime ) ;
Calendar time = Calendar . getInstance ( ) ;
String searchEndTime = DateUtils . formatDateTime ( time . getTime ( ) ) ;
time . add ( Calendar . HOUR_OF_DAY , - 1 ) ;
String searchStartTime = DateUtils . formatDateTime ( time . getTime ( ) ) ;
params . put ( " searchReportStartTime " , searchStartTime ) ;
params . put ( " searchReportEndTime " , searchEndTime ) ;
log . setSearchReportStartTime ( searchStartTime ) ;
log . setSearchReportEndTime ( searchEndTime ) ;
}
//url参数
// url参数
if ( StringUtils . isNotBlank ( log . getSearchUrl ( ) ) ) {
params . put ( " searchUrl " , log . getSearchUrl ( ) ) ;
}
String url = Constants . LOG_BASE_URL + Constants . NTC_URL_REPORT ;
String url = Constants . LOG_BASE_URL + Constants . NTC_URL_REPORT ;
String recv = HttpClientUtil . getMsg ( url , params , request ) ;
// String recv="{\"status\":200,\"businessCode\":2001000,\"reason\":\"数据获取操作成功\",\"msg\":\"URL统计查询成功\",\"fromuri\":\"/galaxy-service/service/log/v1/ntcURLReport\",\"logSource\":0,\"traceCode\":\"2018121610374649425419\",\"data\":{\"pageNo\":1,\"pageSize\":30,\"count\":174,\"last\":6,\"list\":[{\"url\":\"142.44.167.226/eventproxy/v1/bulk\",\"urlCount\":1686,\"dataList\":[{\"sum\":1686,\"ipAddr\":\"100.101.129.6\"}]},{\"url\":\"188.0.145.98/YZ/e1cib/dlist?cmd=query\",\"urlCount\":2652,\"dataList\":[{\"sum\":1248,\"ipAddr\":\"188.0.145.98\"},{\"sum\":1404,\"ipAddr\":\"89.218.9.2\"}]},{\"url\":\"cdn7.alpha-ag.ru/1c1233923d1a6/c51e872ab5861be256408f6cafa99ed8/luckypatcher_v7.5.9.apk\",\"urlCount\":882,\"dataList\":[{\"sum\":882,\"ipAddr\":\"100.81.118.193\"}]}]}}";
// recv = "{\"status\":200,\"businessCode\":2001000,\"reason\":\"数据获取操作成功\",\"msg\":\"URL统计查询成功\",\"fromuri\":\"/galaxy-service/service/log/v1/ntcURLReport\",\"logSource\":0,\"traceCode\":\"2018121721092486282928 \",\"data\":{\"pageNo\":1,\"pageSize\":30,\"count\":11193 ,\"last\":374 ,\"list\":[{\"reportTime\":\"2018-12-17 14:15:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17 14:30:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17 14:45:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17 16:30:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":10},{\"reportTime\":\"2018-12-17 16:45:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":10},{\"reportTime\":\"2018-12-17 18:30:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":8},{\"reportTime\":\"2018-12-17 18:45:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":8},{\"reportTime\":\"2018-12-17 19:15:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17 19:30:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17 19:45:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17 20:00:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17 14:15:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F114274\",\"ipCount\":1,\"connCount\":7},{\"reportTime\":\"2018-12-17 14:30:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F114274\",\"ipCount\":1,\"connCount\":7},{\"reportTime\":\"2018-12-17 14:45:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F114274\",\"ipCount\":1,\"connCount\":7},{\"reportTime\":\"2018-12-17 19:30:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F114274\",\"ipCount\":1,\"connCount\":7},{\"reportTime\":\"2018-12-17 14:15:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F46507\",\"ipCount\":1,\"connCount\":6},{\"reportTime\":\"2018-12-17 14:30:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F46507\",\"ipCount\":1,\"connCount\":6},{\"reportTime\":\"2018-12-17 19:15:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F46507\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17 19:30:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F46507\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17 19:45:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F46507\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17 19:15:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F50460\",\"ipCount\":1,\"connCount\":8},{\"reportTime\":\"2018-12-16 20:15:00\",\"url\":\"119.29.29.29/d?dn=ww.kyzd0r.com\",\"ipCount\":1,\"connCount\":2},{\"reportTime\":\"2018-12-16 21:00:00\",\"url\":\"119.29.29.29/d?dn=ww.kyzd0r.com\",\"ipCount\":1,\"connCount\":2},{\"reportTime\":\"2018-12-16 22:30:00\",\"url\":\"119.29.29.29/d?dn=ww.kyzd0r.com\",\"ipCount\":1,\"connCount\":2},{\"reportTime\":\"2018-12-16 22:45:00\",\"url\":\"119.29.29.29/d?dn=ww.kyzd0r.com\",\"ipCount\":1,\"connCount\":2},{\"reportTime\":\"2018-12-17 14:00:00\",\"url\":\"119.29.29.29/d?dn=ww.kyzd0r.com\",\"ipCount\":1,\"connCount\":2},{\"reportTime\":\"2018-12-17 19:45:00\",\"url\":\"185.203.72.28/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":2},{\"reportTime\":\"2018-12-17 15:30:00\",\"url\":\"biboba.ru/\",\"ipCount\":1,\"connCount\":2},{\"reportTime\":\"2018-12-17 17:00:00\",\"url\":\"biboba.ru/porno_video/style/img/logo.gif\",\"ipCount\":1,\"connCount\":1},{\"reportTime\":\"2018-12-17 01:15:00\",\"url\":\"bilimsite.kz/\",\"ipCount\":1,\"connCount\":1 }]}}";
// String
// recv= "{\"status\":200,\"businessCode\":2001000,\"reason\":\"数据获取操作成功\",\"msg\":\"URL统计查询成功\",\"fromuri\":\"/galaxy-service/service/log/v1/ntcURLReport\",\"logSource\":0,\"traceCode\":\"2018121610374649425419 \",\"data\":{\"pageNo\":1,\"pageSize\":30,\"count\":174 ,\"last\":6 ,\"list\":[{\"url\":\"142.44.167.226/eventproxy/v1/bulk\",\"urlCount\":1686,\"dataList\":[{\"sum\":1686,\"ipAddr\":\"100.101.129.6\"}]},{\"url\":\"188.0.145.98/YZ/e1cib/dlist?cmd=query\",\"urlCount\":2652,\"dataList\":[{\"sum\":1248,\"ipAddr\":\"188.0.145.98\"},{\"sum\":1404,\"ipAddr\":\"89.218.9.2\"}]},{\"url\":\"cdn7.alpha-ag.ru/1c1233923d1a6/c51e872ab5861be256408f6cafa99ed8/luckypatcher_v7.5.9.apk\",\"urlCount\":882,\"dataList\":[{\"sum\":882,\"ipAddr\":\"100.81.118.193\"}] }]}}";
// recv =
// "{\"status\":200,\"businessCode\":2001000,\"reason\":\"数据获取操作成功\",\"msg\":\"URL统计查询成功\",\"fromuri\":\"/galaxy-service/service/log/v1/ntcURLReport\",\"logSource\":0,\"traceCode\":\"2018121721092486282928\",\"data\":{\"pageNo\":1,\"pageSize\":30,\"count\":11193,\"last\":374,\"list\":[{\"reportTime\":\"2018-12-17
// 14:15:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17
// 14:30:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17
// 14:45:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17
// 16:30:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":10},{\"reportTime\":\"2018-12-17
// 16:45:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":10},{\"reportTime\":\"2018-12-17
// 18:30:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":8},{\"reportTime\":\"2018-12-17
// 18:45:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":8},{\"reportTime\":\"2018-12-17
// 19:15:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17
// 19:30:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17
// 19:45:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17
// 20:00:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17
// 14:15:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F114274\",\"ipCount\":1,\"connCount\":7},{\"reportTime\":\"2018-12-17
// 14:30:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F114274\",\"ipCount\":1,\"connCount\":7},{\"reportTime\":\"2018-12-17
// 14:45:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F114274\",\"ipCount\":1,\"connCount\":7},{\"reportTime\":\"2018-12-17
// 19:30:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F114274\",\"ipCount\":1,\"connCount\":7},{\"reportTime\":\"2018-12-17
// 14:15:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F46507\",\"ipCount\":1,\"connCount\":6},{\"reportTime\":\"2018-12-17
// 14:30:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F46507\",\"ipCount\":1,\"connCount\":6},{\"reportTime\":\"2018-12-17
// 19:15:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F46507\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17
// 19:30:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F46507\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17
// 19:45:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F46507\",\"ipCount\":1,\"connCount\":9},{\"reportTime\":\"2018-12-17
// 19:15:00\",\"url\":\"1.kyzd0r.com/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F50460\",\"ipCount\":1,\"connCount\":8},{\"reportTime\":\"2018-12-16
// 20:15:00\",\"url\":\"119.29.29.29/d?dn=ww.kyzd0r.com\",\"ipCount\":1,\"connCount\":2},{\"reportTime\":\"2018-12-16
// 21:00:00\",\"url\":\"119.29.29.29/d?dn=ww.kyzd0r.com\",\"ipCount\":1,\"connCount\":2},{\"reportTime\":\"2018-12-16
// 22:30:00\",\"url\":\"119.29.29.29/d?dn=ww.kyzd0r.com\",\"ipCount\":1,\"connCount\":2},{\"reportTime\":\"2018-12-16
// 22:45:00\",\"url\":\"119.29.29.29/d?dn=ww.kyzd0r.com\",\"ipCount\":1,\"connCount\":2},{\"reportTime\":\"2018-12-17
// 14:00:00\",\"url\":\"119.29.29.29/d?dn=ww.kyzd0r.com\",\"ipCount\":1,\"connCount\":2},{\"reportTime\":\"2018-12-17
// 19:45:00\",\"url\":\"185.203.72.28/away?url=http%3A%2F%2Fw.kyzd0r.com%2Fchlen-kluba%2F10159\",\"ipCount\":1,\"connCount\":2},{\"reportTime\":\"2018-12-17
// 15:30:00\",\"url\":\"biboba.ru/\",\"ipCount\":1,\"connCount\":2},{\"reportTime\":\"2018-12-17
// 17:00:00\",\"url\":\"biboba.ru/porno_video/style/img/logo.gif\",\"ipCount\":1,\"connCount\":1},{\"reportTime\":\"2018-12-17
// 01:15:00\",\"url\":\"bilimsite.kz/\",\"ipCount\":1,\"connCount\":1}]}}";
if ( StringUtils . isNotBlank ( recv ) ) {
Gson gson = new GsonBuilder ( ) . create ( ) ;
LogRecvData < NtcURLReport > fromJson = gson . fromJson ( recv , new TypeToken < LogRecvData < NtcURLReport > > ( ) {} . getType ( ) ) ;
LogRecvData < NtcURLReport > fromJson = gson . fromJson ( recv , new TypeToken < LogRecvData < NtcURLReport > > ( ) {
} . getType ( ) ) ;
if ( fromJson . getStatus ( ) . intValue ( ) = = 200 ) {
Page < NtcURLReport > data = fromJson . getData ( ) ;
page . setCount ( data . getCount ( ) ) ;
page . setLast ( data . getLast ( ) ) ;
page . setList ( data . getList ( ) ) ;
/*List<NtcCollectRadiusLog> list = page.getList();
for (NtcConnRecord Log l : list) {
l.setFunctionId(log.getFunctionId());
setLogAction(l,serviceList );
}*/
/*
* List<NtcCollectRadius Log> list = page.getList(); for
* (NtcConnRecordLog l : list) {
* l.setFunctionId(log.getFunctionId() );
* setLogAction(l,serviceList); }
*/
model . addAttribute ( " page " , page ) ;
}
}
@@ -158,25 +201,25 @@ public class ReportController extends BaseController {
logger . error ( " 查询失败 " , e ) ;
addMessageLog ( model , e . getMessage ( ) ) ;
}
return " /report/urlReportList " ;
}
//IP范围统计
@RequestMapping ( value = { " /ipRangeList " , " " } )
public String ipRangeLists ( @ModelAttribute ( " log " ) NtcIpRangeReport log , Model model , HttpServletRequest request , HttpServletResponse response ) {
// IP范围统计
@RequestMapping ( value = { " /ipRangeList " , " " } )
public String ipRangeLists ( @ModelAttribute ( " log " ) NtcIpRangeReport log , Model model , HttpServletRequest request ,
HttpServletResponse response ) {
try {
PageLog < NtcIpRangeReport > page = new PageLog < NtcIpRangeReport > ( request , response ) ;
Map < String , Object > params = new HashMap < String , Object > ( ) ;
params . put ( " pageSize " , page . getPageSize ( ) ) ;
params . put ( " pageNo " , page . getPageNo ( ) ) ;
//判断请求参数
//查询国家
// 判断请求参数
// 查询国家
if ( StringUtils . isNotBlank ( log . getSearchCountry ( ) ) ) {
params . put ( " searchCountry " , log . getSearchCountry ( ) ) ;
}
//查询开始IP
// 查询开始IP
if ( StringUtils . isNotBlank ( log . getSearchIp ( ) ) ) {
params . put ( " searchIp " , log . getSearchIp ( ) ) ;
}
@@ -187,24 +230,28 @@ public class ReportController extends BaseController {
if ( StringUtils . isNotBlank ( log . getSearchAreaType ( ) ) ) {
params . put ( " searchDesc " , log . getSearchDesc ( ) ) ;
}
String url = Constants . LOG_BASE_URL + Constants . NTC_IP_RANGE_REPORT ;
String url = Constants . LOG_BASE_URL + Constants . NTC_IP_RANGE_REPORT ;
String recv = HttpClientUtil . getMsg ( url , params , request ) ;
// String recv="{\"status\":200,\"businessCode\":2001000,\"reason\":\"数据获取操作成功\",\"msg\":\"URL统计查询成功\",\"fromuri\":\"/galaxy-service/service/log/v1/ntcIpRangeReport\",\"logSource\":0,\"traceCode\":\"2018121616062785920271\",\"data\":{\"pageNo\":1,\"pageSize\":30,\"count\":0,\"last\":1,\"list\":[{\"ipStart\":\"192.168.10.121\",\"ipEnd\":\"192.168.10.122\",\"ipStartNum\":3232238201,\"ipEndNum\":3232238202,\"ipSub\":\"255.255.255.252\"}]}}";
// String
// recv="{\"status\":200,\"businessCode\":2001000,\"reason\":\"数据获取操作成功\",\"msg\":\"URL统计查询成功\",\"fromuri\":\"/galaxy-service/service/log/v1/ntcIpRangeReport\",\"logSource\":0,\"traceCode\":\"2018121616062785920271\",\"data\":{\"pageNo\":1,\"pageSize\":30,\"count\":0,\"last\":1,\"list\":[{\"ipStart\":\"192.168.10.121\",\"ipEnd\":\"192.168.10.122\",\"ipStartNum\":3232238201,\"ipEndNum\":3232238202,\"ipSub\":\"255.255.255.252\"}]}}";
if ( StringUtils . isNotBlank ( recv ) ) {
Gson gson = new GsonBuilder ( ) . create ( ) ;
LogRecvData < NtcIpRangeReport > fromJson = gson . fromJson ( recv , new TypeToken < LogRecvData < NtcIpRangeReport > > ( ) { } . getType ( ) ) ;
LogRecvData < NtcIpRangeReport > fromJson = gson . fromJson ( recv ,
new TypeToken < LogRecvData < NtcIpRangeReport > > ( ) {
} . getType ( ) ) ;
if ( fromJson . getStatus ( ) . intValue ( ) = = 200 ) {
Page < NtcIpRangeReport > data = fromJson . getData ( ) ;
page . setCount ( data . getCount ( ) ) ;
page . setLast ( data . getLast ( ) ) ;
page . setList ( data . getList ( ) ) ;
/*List<NtcCollectRadiusLog> list = page.getList();
for (NtcConnRecord Log l : list) {
l.setFunctionId(log.getFunctionId());
setLogAction(l,serviceList );
}*/
/*
* List<NtcCollectRadius Log> list = page.getList(); for
* (NtcConnRecordLog l : list) {
* l.setFunctionId(log.getFunctionId() );
* setLogAction(l,serviceList); }
*/
model . addAttribute ( " page " , page ) ;
}
}
@@ -212,10 +259,11 @@ public class ReportController extends BaseController {
logger . error ( " 查询失败 " , e ) ;
addMessageLog ( model , e . getMessage ( ) ) ;
}
return " /report/ipRangeReportList " ;
}
//asnExport
// asnExport
@RequestMapping ( value = " asnExport " )
public void asnExport ( @ModelAttribute ( " log " ) NtcAsnRecord log , Model model , String hColumns , String type ,
HttpServletRequest request , HttpServletResponse response , RedirectAttributes redirectAttributes ) {
@@ -232,10 +280,10 @@ public class ReportController extends BaseController {
Map < String , Object > params = new HashMap < String , Object > ( ) ;
params . put ( " pageSize " , page . getPageSize ( ) ) ;
params . put ( " pageNo " , page . getPageNo ( ) ) ;
//判断请求参数
if ( StringUtils . isNotEmpty ( log . getSearchAsnType ( ) ) ) {
// 判断请求参数
if ( StringUtils . isNotEmpty ( log . getSearchAsnType ( ) ) ) {
params . put ( " searchAsnType " , log . getSearchAsnType ( ) ) ;
} else {
} else {
params . put ( " searchAsnType " , 1 ) ;
}
if ( StringUtils . isNotBlank ( log . getSearchFoundStartTime ( ) )
@@ -243,22 +291,23 @@ public class ReportController extends BaseController {
params . put ( " searchFoundStartTime " , log . getSearchFoundStartTime ( ) ) ;
params . put ( " searchFoundEndTime " , log . getSearchFoundEndTime ( ) ) ;
} else {
Calendar time = Calendar . getInstance ( ) ;
String searchEndTime = DateUtils . formatDateTime ( time . getTime ( ) ) ;
time . add ( Calendar . HOUR_OF_DAY , - 1 ) ;
String searchStartTime = DateUtils . formatDateTime ( time . getTime ( ) ) ;
params . put ( " searchFoundStartTime " , searchStartTime ) ;
params . put ( " searchFoundEndTime " , searchEndTime ) ;
log . setSearchFoundStartTime ( searchStartTime ) ;
log . setSearchFoundEndTime ( searchEndTime ) ;
Calendar time = Calendar . getInstance ( ) ;
String searchEndTime = DateUtils . formatDateTime ( time . getTime ( ) ) ;
time . add ( Calendar . HOUR_OF_DAY , - 1 ) ;
String searchStartTime = DateUtils . formatDateTime ( time . getTime ( ) ) ;
params . put ( " searchFoundStartTime " , searchStartTime ) ;
params . put ( " searchFoundEndTime " , searchEndTime ) ;
log . setSearchFoundStartTime ( searchStartTime ) ;
log . setSearchFoundEndTime ( searchEndTime ) ;
}
String url = Constants . LOG_BASE_URL + Constants . NTC_ASN_RECORD ;
// String recv="{\"status\":200,\"businessCode\":2001000,\"reason\":\"数据获取操作成功\",\"msg\":\"ASN通联关系(源,目的)检索成功\",\"fromuri\":\"/galaxy-service/service/log/v1/ntcAsnRecord\",\"logSource\":0,\"traceCode\":\"2018121609404451375322\",\"data\":"
// +"{\"pageNo\":1,\"pageSize\":30,\"count\":66564,\"last\":2219,\"list\":[{\"bps\":\"8.56\",\"pps\":\"0.07\",\"sAsn \": \"9198\",\"dAsn\":\" 405 45_26836\"},"+
// "{\"bps\":\"3.68\",\"pps\":\"0.12\",\"sAsn\":\"9198\",\"dAsn\":\"19506\"}, {\"bps\":\"1.77 \",\"pps\":\"0.08 \",\"sAsn\":\"38266 \",\"dAsn\":\"N/A \"},"+
// "{\"bps\":\"493.55 \",\"pps\":\"0.76 \",\"sAsn\":\"30922 \",\"dAsn\":\"2 9555 \"},{\"bps\":\"26.63 \",\"pps\":\"0.04 \",\"sAsn\":\"4454 6\",\"dAsn\":\"197482 \"},"+
// "{\"bps\":\"25.43 \",\"pps\":\"0.45 \",\"sAsn\":\"44391 \",\"dAsn\":\"9198 \"},{\"bps\":\"52.96 \",\"pps\":\"0.08 \",\"sAsn\":\"29555 \",\"dAsn\":\"14080\"}]}}";
String url = Constants . LOG_BASE_URL + Constants . NTC_ASN_RECORD ;
// String
// recv="{\"status\":200,\"businessCode\":2001000,\"reason\":\"数据获取操作成功\",\"msg\":\"ASN通联关系(源,目的)检索成功\",\"fromuri\":\"/galaxy-service/service/log/v1/ntcAsnRecord \", \"logSource\":0,\"traceCode\":\"2018121609 404 451375322\",\"data\":"
// +"{\"pageNo\":1,\"pageSize\":30,\"count\":66564,\"last\":2219,\"list\":[ {\"bps\":\"8.56 \",\"pps\":\"0.07 \",\"sAsn\":\"9198 \",\"dAsn\":\"40545_26836 \"},"+
// "{\"bps\":\"3.68 \",\"pps\":\"0.12 \",\"sAsn\":\"9198 \",\"dAsn\":\"1 9506 \"},{\"bps\":\"1.77 \",\"pps\":\"0.08 \",\"sAsn\":\"3826 6\",\"dAsn\":\"N/A \"},"+
// "{\"bps\":\"493.55 \",\"pps\":\"0.76 \",\"sAsn\":\"30922 \",\"dAsn\":\"29555 \"},{\"bps\":\"26.63 \",\"pps\":\"0.04 \",\"sAsn\":\"44546 \",\"dAsn\":\"197482\"},"+
// "{\"bps\":\"25.43\",\"pps\":\"0.45\",\"sAsn\":\"44391\",\"dAsn\":\"9198\"},{\"bps\":\"52.96\",\"pps\":\"0.08\",\"sAsn\":\"29555\",\"dAsn\":\"14080\"}]}}";
String recv = HttpClientUtil . getMsg ( url , params , request ) ;
List < NtcAsnRecord > list = new ArrayList < NtcAsnRecord > ( ) ;
if ( StringUtils . isNotBlank ( recv ) ) {
@@ -270,35 +319,59 @@ public class ReportController extends BaseController {
list = data . getList ( ) ;
}
}
//
//
titleList . add ( " Ntc_Asn_Record " ) ;
classMap . put ( " Ntc_Asn_Record " , NtcAsnRecord . class ) ;
SysUser user = UserUtils . getUser ( ) ;
hColumns + = " ,s_asn,d_asn,cfg_id,action,found_time,recv_time,entrance_id,clj_ip,transport_layer_protocol,addr_type,server_ip, "
+ " client_ip,server_port,client_port,deviceid,link_id,encap_type,direction,inner_smac,inner_dmac, "
+ " stream_type,nest_addr_list,server_locate,client_locate,s_subscribe_id,d_subscribe_id,user_region,scene_file, " ;
+ " client_ip,server_port,client_port,deviceid,link_id,encap_type,direction,inner_smac,inner_dmac, "
+ " stream_type,nest_addr_list,server_locate,client_locate,s_subscribe_id,d_subscribe_id,user_region,scene_file, " ;
String cfgIndexInfoNoExport = " , " + hColumns ;
noExportMap . put ( " Ntc_Asn_Record " , cfgIndexInfoNoExport ) ;
Properties msgProp = getMsgProp ( ) ;
NtcAsnRecord ntcAsnRecord = new NtcAsnRecord ( ) ;
double pps = 0 ;
double bps = 0 ;
for ( NtcAsnRecord entity : list ) {
if ( null ! = entity . getBps ( ) & & ! " " . equals ( entity . getBps ( ) ) ) {
bps + = Double . valueOf ( entity . getBps ( ) ) ;
}
if ( null ! = entity . getPps ( ) & & ! " " . equals ( entity . getPps ( ) ) ) {
pps + = Double . valueOf ( entity . getPps ( ) ) ;
}
}
String report_total = msgProp . getProperty ( " report_total " ) ;
ntcAsnRecord . setAsn ( report_total ) ;
ntcAsnRecord . setBps ( String . format ( " %.2f " , bps ) ) ;
ntcAsnRecord . setPps ( String . format ( " %.2f " , pps ) ) ;
list . add ( ntcAsnRecord ) ;
dataMap . put ( " Ntc_Asn_Record " , list ) ;
String timeRange = initLogMap ( log , " Ntc_Asn_Record " ) ;
noExportMap . put ( " timeRange " , timeRange ) ;
/* } */
if ( " csv " . equals ( type ) ) {
this . _exportCsv ( model , request , response , redirectAttributes , " Ntc_Asn_Record " , titleList , classMap ,
dataMap , noExportMap ) ;
} else {
this . _export ( model , request , response , redirectAttributes , " Ntc_Asn_Record " , titleList , classMap , dataMap ,
noExportMap ) ;
this . _export ( model , request , response , redirectAttributes , " Ntc_Asn_Record " , titleList , classMap ,
dataMap , noExportMap) ;
}
} catch ( Exception e ) {
logger . error ( " Ntc_Asn_Record export failed " , e ) ;
addMessage ( redirectAttributes , " error " , " export_failed " ) ;
}
}
//ipRangeExport
// ipRangeExport
@RequestMapping ( value = " ipRangeExport " )
public void ipRangeExport ( @ModelAttribute ( " log " ) NtcIpRangeReport log , Model model , String hColumns , String type ,
HttpServletRequest request , HttpServletResponse response , RedirectAttributes redirectAttributes ) {
HttpServletRequest request , HttpServletResponse response , String seType ,
RedirectAttributes redirectAttributes ) {
try {
// export data info
List < String > titleList = new ArrayList < String > ( ) ;
@@ -312,12 +385,13 @@ public class ReportController extends BaseController {
Map < String , Object > params = new HashMap < String , Object > ( ) ;
params . put ( " pageSize " , page . getPageSize ( ) ) ;
params . put ( " pageNo " , page . getPageNo ( ) ) ;
//判断请求参数
//查询国家
log . setSearchAreaType ( seType ) ;
// 判断请求参数
// 查询国家
if ( StringUtils . isNotBlank ( log . getSearchCountry ( ) ) ) {
params . put ( " searchCountry " , log . getSearchCountry ( ) ) ;
}
//查询开始IP
// 查询开始IP
if ( StringUtils . isNotBlank ( log . getSearchStartIp ( ) ) ) {
params . put ( " searchIp " , log . getSearchIp ( ) ) ;
}
@@ -328,123 +402,169 @@ public class ReportController extends BaseController {
if ( StringUtils . isNotBlank ( log . getSearchAreaType ( ) ) ) {
params . put ( " searchDesc " , log . getSearchDesc ( ) ) ;
}
String url = Constants . LOG_BASE_URL + Constants . NTC_IP_RANGE_REPORT ;
String url = Constants . LOG_BASE_URL + Constants . NTC_IP_RANGE_REPORT ;
String recv = HttpClientUtil . getMsg ( url , params , request ) ;
// String recv="{\"status\":200,\"businessCode\":2001000,\"reason\":\"数据获取操作成功\",\"msg\":\"URL统计查询成功\",\"fromuri\":\"/galaxy-service/service/log/v1/ntcIpRangeReport\",\"logSource\":0,\"traceCode\":\"2018121616062785920271\",\"data\":{\"pageNo\":1,\"pageSize\":30,\"count\":0,\"last\":1,\"list\":[{\"ipStart\":\"192.168.10.121\",\"ipEnd\":\"192.168.10.122\",\"ipStartNum\":3232238201,\"ipEndNum\":3232238202,\"ipSub\":\"255.255.255.252\"}]}}";
// String
// recv="{\"status\":200,\"businessCode\":2001000,\"reason\":\"数据获取操作成功\",\"msg\":\"URL统计查询成功\",\"fromuri\":\"/galaxy-service/service/log/v1/ntcIpRangeReport\",\"logSource\":0,\"traceCode\":\"2018121616062785920271\",\"data\":{\"pageNo\":1,\"pageSize\":30,\"count\":0,\"last\":1,\"list\":[{\"ipStart\":\"192.168.10.121\",\"ipEnd\":\"192.168.10.122\",\"ipStartNum\":3232238201,\"ipEndNum\":3232238202,\"ipSub\":\"255.255.255.252\"}]}}";
List < NtcIpRangeReport > list = new ArrayList < NtcIpRangeReport > ( ) ;
if ( StringUtils . isNotBlank ( recv ) ) {
Gson gson = new GsonBuilder ( ) . create ( ) ;
LogRecvData < NtcIpRangeReport > fromJson = gson . fromJson ( recv , new TypeToken < LogRecvData < NtcIpRangeReport > > ( ) {
} . getType ( ) ) ;
LogRecvData < NtcIpRangeReport > fromJson = gson . fromJson ( recv ,
new TypeToken < LogRecvData < NtcIpRangeReport > > ( ) {
} . getType ( ) ) ;
if ( fromJson . getStatus ( ) . intValue ( ) = = 200 ) {
Page < NtcIpRangeReport > data = fromJson . getData ( ) ;
list = data . getList ( ) ;
}
}
}
titleList . add ( " Ntc_Ip_Range_Report " ) ;
classMap . put ( " Ntc_Ip_Range_Report " , NtcIpRangeReport . class ) ;
SysUser user = UserUtils . getUser ( ) ;
hColumns + = " ,s_asn,d_asn,cfg_id,action,found_time,recv_time,entrance_id,clj_ip,transport_layer_protocol,addr_type,server_ip, "
+ " client_ip,server_port,client_port,deviceid,link_id,encap_type,direction,inner_smac,inner_dmac, "
+ " stream_type,nest_addr_list,server_locate,client_locate,s_asn,d_asn,s_subscribe_id,d_subscribe_id, "
+ " user_region,scene_file, " ;
+ " client_ip,server_port,client_port,deviceid,link_id,encap_type,direction,inner_smac,inner_dmac, "
+ " stream_type,nest_addr_list,server_locate,client_locate,s_asn,d_asn,s_subscribe_id,d_subscribe_id, "
+ " user_region,scene_file, " ;
String cfgIndexInfoNoExport = " , " + hColumns ;
noExportMap . put ( " Ntc_Ip_Range_Report " , cfgIndexInfoNoExport ) ;
dataMap . put ( " Ntc_Ip_Range_Report " , list ) ;
String timeRange = initLogMap ( log , " Ntc_Ip_Range_Report " ) ;
noExportMap . put ( " timeRange " , timeRange ) ;
if ( " csv " . equals ( type ) ) {
this . _exportCsv ( model , request , response , redirectAttributes , " Ntc_Ip_Range_Report " , titleList , classMap ,
dataMap , noExportMap ) ;
this . _exportCsv ( model , request , response , redirectAttributes , " Ntc_Ip_Range_Report " , titleList ,
classMap , dataMap, noExportMap ) ;
} else {
this . _export ( model , request , response , redirectAttributes , " Ntc_Ip_Range_Report " , titleList , classMap , dataMap ,
noExportMap ) ;
this . _export ( model , request , response , redirectAttributes , " Ntc_Ip_Range_Report " , titleList , classMap ,
dataMap , noExportMap) ;
}
} catch ( Exception e ) {
logger . error ( " Ntc_Ip_Range_Report export failed " , e ) ;
addMessage ( redirectAttributes , " error " , " export_failed " ) ;
}
}
//asnExport
@RequestMapping ( value = " httpsExport " )
public void httpsExport ( @ModelAttribute ( " log " ) NtcURLReport 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 < NtcURLReport > page = new PageLog < NtcURLReport > ( 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 . getSearchReportStartTime ( ) )
& & StringUtils . isNotBlank ( log . getSearchReportEndTime ( ) ) ) {
params . put ( " searchReportStartTime " , log . getSearchReportStartTime ( ) ) ;
params . put ( " searchReportEndTime " , log . getSearchReportEndTime ( ) ) ;
} else {
Calendar time = Calendar . getInstance ( ) ;
String searchEndTime = DateUtils . formatDateTime ( time . getTime ( ) ) ;
time . add ( Calendar . HOUR_OF_DAY , - 1 ) ;
String searchStartTime = DateUtils . formatDateTime ( time . getTime ( ) ) ;
params . put ( " searchReportStartTime " , searchStartTime ) ;
params . put ( " searchReportEndTime " , searchEndTime ) ;
log . setSearchReportStartTime ( searchStartTime ) ;
log . setSearchReportEndTime ( searchEndTime ) ;
}
//url参数
if ( StringUtils . isNotBlank ( log . getSearchUrl ( ) ) ) {
params . put ( " searchUrl " , log . getSearchUrl ( ) ) ;
}
String url = Constants . LOG_BASE_URL + Constants . NTC_URL_REPORT ;
// String recv="{\"status\":200,\"businessCode\":2001000,\"reason\":\"数据获取操作成功\",\"msg\":\"ASN通联关系(源,目的)检索成功\",\"fromuri\":\"/galaxy-service/service/log/v1/ntcAsnRecord\",\"logSource\":0,\"traceCode\":\"2018121609404451375322\",\"data\":"
// +"{\"pageNo\":1,\"pageSize\":30,\"count\":66564,\"last\":2219,\"list\":[{\"bps\":\"8.56\",\"pps\":\"0.07\",\"sAsn\":\"9198\",\"dAsn\":\"40545_26836\"},"+
// "{\"bps\":\"3.68\",\"pps\":\"0.12\",\"sAsn\":\"9198\",\"dAsn\":\"19506\"},{\"bps\":\"1.77\",\"pps\":\"0.08\",\"sAsn\":\"38266\",\"dAsn\":\"N/A\"},"+
// "{\"bps\":\"493.55\",\"pps\":\"0.76\",\"sAsn\":\"30922\",\"dAsn\":\"29555\"},{\"bps\":\"26.63\",\"pps\":\"0.04\",\"sAsn\":\"44546\",\"dAsn\":\"197482\"},"+
// "{\"bps\":\"25.43\",\"pps\":\"0.45\",\"sAsn\":\"44391\",\"dAsn\":\"9198\"},{\"bps\":\"52.96\",\"pps\":\"0.08\",\"sAsn\":\"29555\",\"dAsn\":\"14080\"}]}}";
String recv = HttpClientUtil . getMsg ( url , params , request ) ;
List < NtcURLReport > list = new ArrayList < NtcURLReport > ( ) ;
if ( StringUtils . isNotBlank ( recv ) ) {
Gson gson = new GsonBuilder ( ) . create ( ) ;
LogRecvData < NtcURLReport > fromJson = gson . fromJson ( recv , new TypeToken < LogRecvData < NtcURLReport > > ( ) {
} . getType ( ) ) ;
if ( fromJson . getStatus ( ) . intValue ( ) = = 200 ) {
Page < NtcURLReport > data = fromJson . getData ( ) ;
list = data . getList ( ) ;
}
}
//
titleList . add ( " Ntc_HTTPS_Report " ) ;
classMap . put ( " Ntc_HTTPS_Report " , NtcURLReport . class ) ;
//SysUser user = UserUtils.getUser();
/*hColumns += "s_asn,d_asn,cfg_id,action,found_time,recv_time,entrance_id,clj_ip,transport_layer_protocol,addr_type,server_ip,"
+ "client_ip,server_port,client_port,deviceid,link_id,encap_type,direction,inner_smac,inner_dmac,"
+ "stream_type,nest_addr_list,server_locate,client_locate,s_subscribe_id,d_subscribe_id,user_region,scene_file,";*/
hColumns + = " ,s_asn,d_asn,cfg_id,action,found_time,recv_time,entrance_id,clj_ip,transport_layer_protocol,addr_type,server_ip, "
+ " client_ip,server_port,client_port,deviceid,link_id,encap_type,direction,inner_smac,inner_dmac, "
+ " stream_type,nest_addr_list,server_locate,client_locate,s_subscribe_id,d_subscribe_id,user_region,scene_file,reportTime, " ;
String cfgIndexInfoNoExport = " , " + hColumns ;
noExportMap . put ( " Ntc_HTTPS_Report " , cfgIndexInfoNoExport ) ;
dataMap . put ( " Ntc_HTTPS_Report " , list ) ;
/* } */
if ( " csv " . equals ( type ) ) {
this . _exportCsv ( model , request , response , redirectAttributes , " Ntc_HTTPS_Report " , titleList , classMap ,
dataMap , noExportMap ) ;
} else {
this . _export ( model , request , response , redirectAttributes , " Ntc_HTTPS_Report " , titleList , classMap , dataMap ,
noExportMap ) ;
}
} catch ( Exception e ) {
logger . error ( " Ntc_HTTPS_Report export failed " , e ) ;
addMessage ( redirectAttributes , " error " , " export_failed " ) ;
}
public String initHttpMap ( NtcURLReport log , String title ) {
Properties msgProp = getMsgProp ( ) ;
String logTime = msgProp . getProperty ( title , title ) ;
;
if ( log . getSearchReportStartTime ( ) ! = null ) {
logTime + = " " + msgProp . getProperty ( " begin_date " ) + " : " + log . getSearchReportStartTime ( ) ;
}
if ( log . getSearchReportEndTime ( ) ! = null ) {
logTime + = " " + msgProp . getProperty ( " end_date " ) + " : " + log . getSearchReportEndTime ( ) ;
}
return logTime ;
}
// asnExport
@RequestMapping ( value = " httpsExport " )
public void httpsExport ( @ModelAttribute ( " log " ) NtcURLReport 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 < NtcURLReport > page = new PageLog < NtcURLReport > ( 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 . getSearchReportStartTime ( ) )
& & StringUtils . isNotBlank ( log . getSearchReportEndTime ( ) ) ) {
params . put ( " searchReportStartTime " , log . getSearchReportStartTime ( ) ) ;
params . put ( " searchReportEndTime " , log . getSearchReportEndTime ( ) ) ;
} else {
Calendar time = Calendar . getInstance ( ) ;
String searchEndTime = DateUtils . formatDateTime ( time . getTime ( ) ) ;
time . add ( Calendar . HOUR_OF_DAY , - 1 ) ;
String searchStartTime = DateUtils . formatDateTime ( time . getTime ( ) ) ;
params . put ( " searchReportStartTime " , searchStartTime ) ;
params . put ( " searchReportEndTime " , searchEndTime ) ;
log . setSearchReportStartTime ( searchStartTime ) ;
log . setSearchReportEndTime ( searchEndTime ) ;
}
// url参数
if ( StringUtils . isNotBlank ( log . getSearchUrl ( ) ) ) {
params . put ( " searchUrl " , log . getSearchUrl ( ) ) ;
}
String url = Constants . LOG_BASE_URL + Constants . NTC_URL_REPORT ;
// String
// recv="{\"status\":200,\"businessCode\":2001000,\"reason\":\"数据获取操作成功\",\"msg\":\"ASN通联关系(源,目的)检索成功\",\"fromuri\":\"/galaxy-service/service/log/v1/ntcAsnRecord\",\"logSource\":0,\"traceCode\":\"2018121609404451375322\",\"data\":"
// +"{\"pageNo\":1,\"pageSize\":30,\"count\":66564,\"last\":2219,\"list\":[{\"bps\":\"8.56\",\"pps\":\"0.07\",\"sAsn\":\"9198\",\"dAsn\":\"40545_26836\"},"+
// "{\"bps\":\"3.68\",\"pps\":\"0.12\",\"sAsn\":\"9198\",\"dAsn\":\"19506\"},{\"bps\":\"1.77\",\"pps\":\"0.08\",\"sAsn\":\"38266\",\"dAsn\":\"N/A\"},"+
// "{\"bps\":\"493.55\",\"pps\":\"0.76\",\"sAsn\":\"30922\",\"dAsn\":\"29555\"},{\"bps\":\"26.63\",\"pps\":\"0.04\",\"sAsn\":\"44546\",\"dAsn\":\"197482\"},"+
// "{\"bps\":\"25.43\",\"pps\":\"0.45\",\"sAsn\":\"44391\",\"dAsn\":\"9198\"},{\"bps\":\"52.96\",\"pps\":\"0.08\",\"sAsn\":\"29555\",\"dAsn\":\"14080\"}]}}";
String recv = HttpClientUtil . getMsg ( url , params , request ) ;
List < NtcURLReport > list = new ArrayList < NtcURLReport > ( ) ;
if ( StringUtils . isNotBlank ( recv ) ) {
Gson gson = new GsonBuilder ( ) . create ( ) ;
LogRecvData < NtcURLReport > fromJson = gson . fromJson ( recv , new TypeToken < LogRecvData < NtcURLReport > > ( ) {
} . getType ( ) ) ;
if ( fromJson . getStatus ( ) . intValue ( ) = = 200 ) {
Page < NtcURLReport > data = fromJson . getData ( ) ;
list = data . getList ( ) ;
}
}
//
titleList . add ( " Ntc_HTTPS_Report " ) ;
classMap . put ( " Ntc_HTTPS_Report " , NtcURLReport . class ) ;
// SysUser user = UserUtils.getUser();
/*
* hColumns +=
* "s_asn,d_asn,cfg_id,action,found_time,recv_time,entrance_id,clj_ip,transport_layer_protocol,addr_type,server_ip,"
* +
* "client_ip,server_port,client_port,deviceid,link_id,encap_type,direction,inner_smac,inner_dmac,"
* +
* "stream_type,nest_addr_list,server_locate,client_locate,s_subscribe_id,d_subscribe_id,user_region,scene_file,";
*/
hColumns + = " ,s_asn,d_asn,cfg_id,action,found_time,recv_time,entrance_id,clj_ip,transport_layer_protocol,addr_type,server_ip, "
+ " client_ip,server_port,client_port,deviceid,link_id,encap_type,direction,inner_smac,inner_dmac, "
+ " stream_type,nest_addr_list,server_locate,client_locate,s_subscribe_id,d_subscribe_id,user_region,scene_file,reportTime, " ;
String cfgIndexInfoNoExport = " , " + hColumns ;
noExportMap . put ( " Ntc_HTTPS_Report " , cfgIndexInfoNoExport ) ;
Properties msgProp = getMsgProp ( ) ;
NtcURLReport ntcURLReport = new NtcURLReport ( ) ;
long ipCount = 0 ;
long connCount = 0 ;
for ( NtcURLReport entity : list ) {
ipCount + = entity . getIpCount ( ) ;
connCount + = entity . getConnCount ( ) ;
}
String report_total = msgProp . getProperty ( " report_total " ) ;
ntcURLReport . setIpCount ( ipCount ) ;
ntcURLReport . setConnCount ( connCount ) ;
ntcURLReport . setUrl ( report_total ) ;
list . add ( ntcURLReport ) ;
dataMap . put ( " Ntc_HTTPS_Report " , list ) ;
String timeRange = initHttpMap ( log , " Ntc_HTTPS_Report " ) ;
noExportMap . put ( " timeRange " , timeRange ) ;
/* } */
if ( " csv " . equals ( type ) ) {
this . _exportCsv ( model , request , response , redirectAttributes , " Ntc_HTTPS_Report " , titleList , classMap ,
dataMap , noExportMap ) ;
} else {
this . _export ( model , request , response , redirectAttributes , " Ntc_HTTPS_Report " , titleList , classMap ,
dataMap , noExportMap ) ;
}
} catch ( Exception e ) {
logger . error ( " Ntc_HTTPS_Report export failed " , e ) ;
addMessage ( redirectAttributes , " error " , " export_failed " ) ;
}
}
}