Merge branch 'develop' of http://10.0.6.99/gwall/gwall.git into develop

This commit is contained in:
wangxin
2018-09-26 17:44:31 +08:00
28 changed files with 260 additions and 1109 deletions

View File

@@ -79,6 +79,7 @@ public class InterceptController extends CommonController{
interceptCfgService.saveInterceptCfg(entity); interceptCfgService.saveInterceptCfg(entity);
addMessage(redirectAttributes,"save_success"); addMessage(redirectAttributes,"save_success");
} catch (Exception e) { } catch (Exception e) {
logger.error("save_failed", e);
addMessage(redirectAttributes,"save_failed"); addMessage(redirectAttributes,"save_failed");
} }
return "redirect:" + adminPath +"/proxy/intercept/ip/list?functionId="+entity.getFunctionId(); return "redirect:" + adminPath +"/proxy/intercept/ip/list?functionId="+entity.getFunctionId();

View File

@@ -63,35 +63,41 @@ public class TrafficStatisticsInfoController extends BaseController {
fromJsonList = gson.fromJson(string, new TypeToken<Map>(){}.getType()); fromJsonList = gson.fromJson(string, new TypeToken<Map>(){}.getType());
list = (ArrayList) fromJsonList.get("data"); list = (ArrayList) fromJsonList.get("data");
Random r = new Random(); Random r = new Random();
Double rejectNum=r.nextDouble()*100+61351; Double rejectNum=0d;
Double dropConnNum=r.nextDouble()*100+54271; Double dropConnNum=0d;
Double monitorNum=r.nextDouble()*100+54271; Double monitorNum=0d;
Double loopConnNum=r.nextDouble()*100+54271; Double loopConnNum=0d;
Double inoctetsNum=0d;
Double outoctetsNum=0d;
Double bandwidth=0d;
if(list!=null&&list.size()>0){ if(list!=null&&list.size()>0){
Map map = (Map) list.get(0); Map map = (Map) list.get(0);
rejectNum = (Double) map.get("rejectNum") ; rejectNum = (Double) map.get("rejectNum") ;
monitorNum = (Double) map.get("monitorNum"); monitorNum = (Double) map.get("monitorNum");
dropConnNum = (Double) map.get("dropConnNum"); dropConnNum = (Double) map.get("dropConnNum");
loopConnNum = (Double) map.get("loopConnNum"); loopConnNum = (Double) map.get("loopConnNum");
inoctetsNum = (Double) map.get("inoctets");
outoctetsNum = (Double) map.get("outoctets");
//单位换算 byte->bit/s
inoctetsNum=(inoctetsNum*8)/(5*60*60);
outoctetsNum=(outoctetsNum*8)/(5*60*60);
} }
int newUniConn=r.nextInt(7666)+815036; bandwidth=inoctetsNum+outoctetsNum;
int liveConnNum=r.nextInt(852)+23621;
int bandwidth=r.nextInt(2567)+62150;
int c2sNum=r.nextInt(100);
m.put("rejectNum", rejectNum); m.put("rejectNum", rejectNum);
m.put("monitorNum", monitorNum); m.put("monitorNum", monitorNum);
m.put("loopConnNum", loopConnNum); m.put("loopConnNum", loopConnNum);
m.put("dropConnNum", dropConnNum); m.put("dropConnNum", dropConnNum);
m.put("newUniConn", newUniConn);
m.put("liveConnNum", liveConnNum);
m.put("c2sNum", c2sNum);
m.put("bandwidth", bandwidth);
logger.info("活跃IP数据"+fromJsonList); m.put("bandwidth", bandwidth);
m.put("inoctetsNum", inoctetsNum);
m.put("outoctetsNum", outoctetsNum);
logger.info("统计流量信息数据"+fromJsonList);
return m; return m;
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
logger.error("活跃IP错误"+e); logger.error("统计流量信息数据错误"+e);
} }
return m; return m;
} }

View File

@@ -1172,9 +1172,9 @@ ASN_POLICY_MONIT=ASN Policy Monitoring
p2p_monit=P2P Monitoring p2p_monit=P2P Monitoring
av_content_url_whitelist=Multimedia Content Url White List av_content_url_whitelist=Multimedia Content Url White List
av_content_ip_whitelist=Multimedia Content IP White List av_content_ip_whitelist=Multimedia Content IP White List
active_port=Active Port TOP10 active_port=\u0410\u043A\u0442\u0438\u0432\u043D\u044B\u0439 \u041F\u043E\u0440\u0442 \u0422\u041E\u041F 10
visits=visits visits=\u041F\u043E\u0441\u0435\u0449\u0430\u0435\u043C\u043E\u0441\u0442\u044C
percentage=Percentage percentage=\u041F\u0440\u043E\u0446\u0435\u043D\u0442
APP_SSL=APP SSL Feature APP_SSL=APP SSL Feature
APP_IP_RANGE=APP IP RANGE APP_IP_RANGE=APP IP RANGE
APP_DK=APP DK Feature APP_DK=APP DK Feature

View File

@@ -135,7 +135,7 @@
<c:if test="${region[0] eq 2 }"> <c:if test="${region[0] eq 2 }">
<c:forEach items="${_cfg.ntcSubscribeIdCfgList}" var="cfg"> <c:forEach items="${_cfg.ntcSubscribeIdCfgList}" var="cfg">
<c:if test="${region[1] eq cfg.cfgType }"> <c:if test="${region[1] eq cfg.cfgType }">
<div id="${region[1]}Info${index}" class="content content2" name="subCfg${index}"> <div id="${region[1]}Info${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-8"> <div class="col-md-8">
<div class="form-group"> <div class="form-group">

View File

@@ -141,7 +141,7 @@
</c:if> </c:if>
<c:if test="${region.regionType eq 2 }"> <c:if test="${region.regionType eq 2 }">
<c:forEach items="${region.strList}" var="cfg"> <c:forEach items="${region.strList}" var="cfg">
<div id="${region.regionValue}_${regionStatus.index}Info${index}" class="content content2" name="subCfg${index}"> <div id="${region.regionValue}_${regionStatus.index}Info${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-8"> <div class="col-md-8">
<div class="form-group"> <div class="form-group">
@@ -248,7 +248,7 @@
<c:if test="${region.regionType eq 3 }"> <c:if test="${region.regionType eq 3 }">
<c:forEach items="${region.complexList}" var="cfg"> <c:forEach items="${region.complexList}" var="cfg">
<div id="${region.regionValue}_${regionStatus.index}Info${index}" class="content content2" name="subCfg${index}"> <div id="${region.regionValue}_${regionStatus.index}Info${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-4"> <div class="col-md-4">
<div class="form-group"> <div class="form-group">

View File

@@ -117,7 +117,7 @@
</c:if> </c:if>
<c:if test="${region[0] eq 2 }"> <c:if test="${region[0] eq 2 }">
<c:if test="${region[1] eq _cfg.cfgType }"> <c:if test="${region[1] eq _cfg.cfgType }">
<div id="${region[1]}Info${index}" class="content content2" name="subCfg${index}"> <div id="${region[1]}Info${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-8"> <div class="col-md-8">
<div class="form-group"> <div class="form-group">
@@ -222,7 +222,7 @@
<c:forEach items="${_cfg.ntcSubscribeIdCfgList}" var="cfg"> <c:forEach items="${_cfg.ntcSubscribeIdCfgList}" var="cfg">
<c:if test="${region[1] eq cfg.cfgType }"> <c:if test="${region[1] eq cfg.cfgType }">
<div id="${region[1]}Info${index}" class="content content2" name="subCfg${index}"> <div id="${region[1]}Info${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-8"> <div class="col-md-8">
<div class="form-group"> <div class="form-group">

View File

@@ -134,7 +134,7 @@
<c:if test="${region[0] eq 2 }"> <c:if test="${region[0] eq 2 }">
<c:forEach items="${_cfg.ntcSubscribeIdCfgList}" var="cfg"> <c:forEach items="${_cfg.ntcSubscribeIdCfgList}" var="cfg">
<c:if test="${region[1] eq cfg.cfgType }"> <c:if test="${region[1] eq cfg.cfgType }">
<div id="${region[1]}Info${index}" class="content content2" name="subCfg${index}"> <div id="${region[1]}Info${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-8"> <div class="col-md-8">
<div class="form-group"> <div class="form-group">

View File

@@ -135,7 +135,7 @@
<c:if test="${region[0] eq 2 }"> <c:if test="${region[0] eq 2 }">
<c:forEach items="${_cfg.ntcSubscribeIdCfgList}" var="cfg"> <c:forEach items="${_cfg.ntcSubscribeIdCfgList}" var="cfg">
<c:if test="${region[1] eq cfg.cfgType }"> <c:if test="${region[1] eq cfg.cfgType }">
<div id="${region[1]}Info${index}" class="content content2" name="subCfg${index}"> <div id="${region[1]}Info${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-8"> <div class="col-md-8">
<div class="form-group"> <div class="form-group">

View File

@@ -36,7 +36,7 @@
<c:if test="${region[0] eq 2 }"> <c:if test="${region[0] eq 2 }">
<c:forEach items="${_cfg.ntcSubscribeIdCfgList}" var="cfg"> <c:forEach items="${_cfg.ntcSubscribeIdCfgList}" var="cfg">
<c:if test="${region[1] eq cfg.cfgType }"> <c:if test="${region[1] eq cfg.cfgType }">
<div id="${region[1]}Info${index}" class="content content2" name="subCfg${index}"> <div id="${region[1]}Info${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-8"> <div class="col-md-8">
<div class="form-group"> <div class="form-group">

View File

@@ -115,7 +115,7 @@
<c:if test="${region[0] eq 2 }"> <c:if test="${region[0] eq 2 }">
<c:forEach items="${_cfg.stringList}" var="cfg"> <c:forEach items="${_cfg.stringList}" var="cfg">
<c:if test="${region[1] eq cfg.cfgType }"> <c:if test="${region[1] eq cfg.cfgType }">
<div id="${region[1]}Info${index}" class="content content2" name="subCfg${index}"> <div id="${region[1]}Info${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-8"> <div class="col-md-8">
<div class="form-group"> <div class="form-group">
@@ -230,7 +230,7 @@
<!-- subscribe_id--> <!-- subscribe_id-->
<c:forEach items="${_cfg.ntcSubscribeIdCfgList}" var="cfg"> <c:forEach items="${_cfg.ntcSubscribeIdCfgList}" var="cfg">
<c:if test="${region[1] eq cfg.cfgType }"> <c:if test="${region[1] eq cfg.cfgType }">
<div id="${region[1]}Info${index}" class="content content2" name="subCfg${index}"> <div id="${region[1]}Info${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-8"> <div class="col-md-8">
<div class="form-group"> <div class="form-group">
@@ -338,7 +338,7 @@
<%-- <c:if test="${region[0] eq 5 }"> <%-- <c:if test="${region[0] eq 5 }">
<c:forEach items="${_cfg.digestList}" var="cfg"> <c:forEach items="${_cfg.digestList}" var="cfg">
<c:if test="${region[1] eq cfg.cfgType }"> <c:if test="${region[1] eq cfg.cfgType }">
<div id="${region[1]}Info${index}" class="content content2" name="subCfg${index}"> <div id="${region[1]}Info${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-4"> <div class="col-md-4">
<div class="form-group"> <div class="form-group">

View File

@@ -125,7 +125,7 @@
<c:if test="${region[0] eq 2 }"> <c:if test="${region[0] eq 2 }">
<c:forEach items="${_cfg.p2pHashList}" var="cfg"> <c:forEach items="${_cfg.p2pHashList}" var="cfg">
<c:if test="${region[1] eq cfg.cfgType }"> <c:if test="${region[1] eq cfg.cfgType }">
<div id="${region[1]}Info${index}" class="content content2" name="subCfg${index}"> <div id="${region[1]}Info${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-8"> <div class="col-md-8">
<div class="form-group"> <div class="form-group">
@@ -242,7 +242,7 @@
<c:forEach items="${_cfg.ntcSubscribeIdCfgList}" var="cfg"> <c:forEach items="${_cfg.ntcSubscribeIdCfgList}" var="cfg">
<c:if test="${region[1] eq cfg.cfgType }"> <c:if test="${region[1] eq cfg.cfgType }">
<div id="${region[1]}Info${index}" class="content content2" name="subCfg${index}"> <div id="${region[1]}Info${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-8"> <div class="col-md-8">
<div class="form-group"> <div class="form-group">
@@ -348,7 +348,7 @@
<c:forEach items="${_cfg.p2pKeywordList}" var="cfg"> <c:forEach items="${_cfg.p2pKeywordList}" var="cfg">
<c:if test="${region[1] eq cfg.cfgType }"> <c:if test="${region[1] eq cfg.cfgType }">
<div id="${region[1]}Info${index}" class="content content2" name="subCfg${index}"> <div id="${region[1]}Info${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-8"> <div class="col-md-8">
<div class="form-group"> <div class="form-group">

View File

@@ -247,7 +247,7 @@
<select name="userRegion1" class="selectpicker show-tick form-control"> <select name="userRegion1" class="selectpicker show-tick form-control">
<option value="" <c:if test="${empty _cfg.userRegion1}">selected</c:if> ><spring:message code="selected"/></option> <option value="" <c:if test="${empty _cfg.userRegion1}">selected</c:if> ><spring:message code="selected"/></option>
<c:forEach items="${certificateList}" var="certificate"> <c:forEach items="${certificateList}" var="certificate">
<option value="${certificate.compileId}" <c:if test="${_cfg.userRegion1==certificate.compileId}">selected</c:if>>${certificate.cfgDesc}</option> <option value="${certificate.compileId}" <c:if test="${_cfg.userRegion1 eq fn:trim(certificate.compileId)}">selected</c:if>>${certificate.cfgDesc}</option>
</c:forEach> </c:forEach>
</select> </select>
</div> </div>

View File

@@ -115,7 +115,7 @@
<c:if test="${region[0] eq 2 }"> <c:if test="${region[0] eq 2 }">
<c:forEach items="${_cfg.interceptPktBinList}" var="cfg"> <c:forEach items="${_cfg.interceptPktBinList}" var="cfg">
<c:if test="${region[1] eq cfg.cfgType }"> <c:if test="${region[1] eq cfg.cfgType }">
<div id="${region[1]}Info${index}" class="content content2" name="subCfg${index}"> <div id="${region[1]}Info${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-8"> <div class="col-md-8">
<div class="form-group"> <div class="form-group">
@@ -221,7 +221,7 @@
</c:forEach> </c:forEach>
<c:forEach items="${_cfg.httpUrlList}" var="cfg"> <c:forEach items="${_cfg.httpUrlList}" var="cfg">
<c:if test="${region[1] eq cfg.cfgType }"> <c:if test="${region[1] eq cfg.cfgType }">
<div id="${region[1]}Info${index}" class="content content2" name="subCfg${index}"> <div id="${region[1]}Info${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-8"> <div class="col-md-8">
<div class="form-group"> <div class="form-group">

View File

@@ -115,7 +115,7 @@
<c:if test="${(region[0] eq 2) && (fn:length(_cfg.ntcSubscribeIdCfgList) >0)}"> <c:if test="${(region[0] eq 2) && (fn:length(_cfg.ntcSubscribeIdCfgList) >0)}">
<c:forEach items="${_cfg.ntcSubscribeIdCfgList}" var="cfg"> <c:forEach items="${_cfg.ntcSubscribeIdCfgList}" var="cfg">
<c:if test="${region[1] eq cfg.cfgType }"> <c:if test="${region[1] eq cfg.cfgType }">
<div id="${region[1]}Info${index}" class="content content2" name="subCfg${index}"> <div id="${region[1]}Info${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-8"> <div class="col-md-8">
<div class="form-group"> <div class="form-group">

View File

@@ -116,7 +116,7 @@
<c:if test="${region[0] eq 3 }"> <c:if test="${region[0] eq 3 }">
<c:forEach items="${_cfg.complexList}" var="cfg"> <c:forEach items="${_cfg.complexList}" var="cfg">
<c:if test="${region[1] eq cfg.cfgType }"> <c:if test="${region[1] eq cfg.cfgType }">
<div id="${region[1]}Info${index}" class="content content3" name="subCfg${index}"> <div id="${region[1]}Info${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-4"> <div class="col-md-4">
<div class="form-group"> <div class="form-group">
@@ -231,7 +231,7 @@
<c:if test="${region[0] eq 5 }"> <c:if test="${region[0] eq 5 }">
<c:forEach items="${_cfg.digestList}" var="cfg"> <c:forEach items="${_cfg.digestList}" var="cfg">
<c:if test="${region[1] eq cfg.cfgType }"> <c:if test="${region[1] eq cfg.cfgType }">
<div id="${region[1]}Info${index}" class="content content5" name="subCfg${index}"> <div id="${region[1]}Info${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-4"> <div class="col-md-4">
<div class="form-group"> <div class="form-group">
@@ -278,7 +278,7 @@
<c:if test="${region[0] eq 2 }"> <c:if test="${region[0] eq 2 }">
<c:forEach items="${_cfg.ntcSubscribeIdCfgList}" var="cfg"> <c:forEach items="${_cfg.ntcSubscribeIdCfgList}" var="cfg">
<c:if test="${region[1] eq cfg.cfgType }"> <c:if test="${region[1] eq cfg.cfgType }">
<div id="${region[1]}Info${index}" class="content content2" name="subCfg${index}"> <div id="${region[1]}Info${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-8"> <div class="col-md-8">
<div class="form-group"> <div class="form-group">

View File

@@ -115,7 +115,7 @@
<c:if test="${region[0] eq 2 }"> <c:if test="${region[0] eq 2 }">
<c:forEach items="${_cfg.ntcBgpAsCfgList}" var="cfg"> <c:forEach items="${_cfg.ntcBgpAsCfgList}" var="cfg">
<c:if test="${region[1] eq cfg.cfgType }"> <c:if test="${region[1] eq cfg.cfgType }">
<div id="${region[1]}Info${index}" class="content content2" name="subCfg${index}"> <div id="${region[1]}Info${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-8"> <div class="col-md-8">
<div class="form-group"> <div class="form-group">
@@ -222,7 +222,7 @@
<c:forEach items="${_cfg.ntcSubscribeIdCfgList}" var="cfg"> <c:forEach items="${_cfg.ntcSubscribeIdCfgList}" var="cfg">
<c:if test="${region[1] eq cfg.cfgType }"> <c:if test="${region[1] eq cfg.cfgType }">
<div id="${region[1]}Info${index}" class="content content2" name="subCfg${index}"> <div id="${region[1]}Info${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-8"> <div class="col-md-8">
<div class="form-group"> <div class="form-group">

View File

@@ -116,7 +116,7 @@
<c:if test="${region[0] eq 2 }"> <c:if test="${region[0] eq 2 }">
<c:forEach items="${_cfg.ntcSubscribeIdCfgList}" var="cfg"> <c:forEach items="${_cfg.ntcSubscribeIdCfgList}" var="cfg">
<c:if test="${region[1] eq cfg.cfgType }"> <c:if test="${region[1] eq cfg.cfgType }">
<div id="${region[1]}Info${index}" class="content content2" name="subCfg${index}"> <div id="${region[1]}Info${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-8"> <div class="col-md-8">
<div class="form-group"> <div class="form-group">
@@ -223,7 +223,7 @@
<c:if test="${region[0] eq 3 }"> <c:if test="${region[0] eq 3 }">
<c:forEach items="${_cfg.domainList}" var="cfg"> <c:forEach items="${_cfg.domainList}" var="cfg">
<c:if test="${region[1] eq cfg.cfgType }"> <c:if test="${region[1] eq cfg.cfgType }">
<div id="${region[1]}Info${index}" class="content content3" name="subCfg${index}"> <div id="${region[1]}Info${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-4"> <div class="col-md-4">
<div class="form-group"> <div class="form-group">

View File

@@ -151,7 +151,7 @@
</div> </div>
</c:forEach> </c:forEach>
<c:forEach items="${_cfg.httpUrlList}" var="cfg"> <c:forEach items="${_cfg.httpUrlList}" var="cfg">
<div id="urlInfo${index}" class="content content2" name="subCfg${index}"> <div id="urlInfo${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-8"> <div class="col-md-8">
<div class="form-group"> <div class="form-group">
@@ -254,7 +254,7 @@
</c:forEach> </c:forEach>
<c:forEach items="${_cfg.httpReqHdrList}" var="cfg"> <c:forEach items="${_cfg.httpReqHdrList}" var="cfg">
<div id="reqHdrInfo${index}" class="content content2" name="subCfg${index}"> <div id="reqHdrInfo${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-8"> <div class="col-md-8">
<div class="form-group"> <div class="form-group">
@@ -363,7 +363,7 @@
</div> </div>
</c:forEach> </c:forEach>
<c:forEach items="${_cfg.httpReqBodyList}" var="cfg"> <c:forEach items="${_cfg.httpReqBodyList}" var="cfg">
<div id="reqBodyInfo${index}" class="content content2" name="subCfg${index}"> <div id="reqBodyInfo${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-8"> <div class="col-md-8">
<div class="form-group"> <div class="form-group">
@@ -466,7 +466,7 @@
</c:forEach> </c:forEach>
<c:forEach items="${_cfg.httpResHdrList}" var="cfg"> <c:forEach items="${_cfg.httpResHdrList}" var="cfg">
<div id="resHdrInfo${index}" class="content content2" name="subCfg${index}"> <div id="resHdrInfo${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-8"> <div class="col-md-8">
<div class="form-group"> <div class="form-group">
@@ -576,7 +576,7 @@
</c:forEach> </c:forEach>
<c:forEach items="${_cfg.httpResBodyList}" var="cfg"> <c:forEach items="${_cfg.httpResBodyList}" var="cfg">
<div id="resBodyInfo${index}" class="content content2" name="subCfg${index}"> <div id="resBodyInfo${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-8"> <div class="col-md-8">
<div class="form-group"> <div class="form-group">
@@ -679,7 +679,7 @@
</c:forEach> </c:forEach>
<c:forEach items="${_cfg.ntcSubscribeIdCfgList}" var="cfg"> <c:forEach items="${_cfg.ntcSubscribeIdCfgList}" var="cfg">
<div id="subscribeIdInfo${index}" class="content content2" name="subCfg${index}"> <div id="subscribeIdInfo${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-8"> <div class="col-md-8">
<div class="form-group"> <div class="form-group">

View File

@@ -117,7 +117,7 @@
<c:if test="${region[0] eq 3 }"> <c:if test="${region[0] eq 3 }">
<c:forEach items="${_cfg.domainList}" var="cfg"> <c:forEach items="${_cfg.domainList}" var="cfg">
<c:if test="${region[1] eq cfg.cfgType }"> <c:if test="${region[1] eq cfg.cfgType }">
<div id="${region[1]}Info${index}" class="content content3" name="subCfg${index}"> <div id="${region[1]}Info${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-4"> <div class="col-md-4">
<div class="form-group"> <div class="form-group">
@@ -232,7 +232,7 @@
<c:if test="${region[0] eq 2 }"> <c:if test="${region[0] eq 2 }">
<c:forEach items="${_cfg.ntcSubscribeIdCfgList}" var="cfg"> <c:forEach items="${_cfg.ntcSubscribeIdCfgList}" var="cfg">
<c:if test="${region[1] eq cfg.cfgType }"> <c:if test="${region[1] eq cfg.cfgType }">
<div id="${region[1]}Info${index}" class="content content2" name="subCfg${index}"> <div id="${region[1]}Info${index}" class="content content${region[0]}}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-8"> <div class="col-md-8">
<div class="form-group"> <div class="form-group">

View File

@@ -150,7 +150,7 @@
</div> </div>
</c:forEach> </c:forEach>
<c:forEach items="${_cfg.httpUrlList}" var="cfg"> <c:forEach items="${_cfg.httpUrlList}" var="cfg">
<div id="urlInfo${index}" class="content content2" name="subCfg${index}"> <div id="urlInfo${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-8"> <div class="col-md-8">
<div class="form-group"> <div class="form-group">
@@ -254,7 +254,7 @@
</c:forEach> </c:forEach>
<c:forEach items="${_cfg.httpReqHdrList}" var="cfg"> <c:forEach items="${_cfg.httpReqHdrList}" var="cfg">
<div id="reqHdrInfo${index}" class="content content2" name="subCfg${index}"> <div id="reqHdrInfo${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-4"> <div class="col-md-4">
<div class="form-group"> <div class="form-group">
@@ -363,7 +363,7 @@
</div> </div>
</c:forEach> </c:forEach>
<c:forEach items="${_cfg.httpReqBodyList}" var="cfg"> <c:forEach items="${_cfg.httpReqBodyList}" var="cfg">
<div id="reqBodyInfo${index}" class="content content2" name="subCfg${index}"> <div id="reqBodyInfo${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-8"> <div class="col-md-8">
<div class="form-group"> <div class="form-group">
@@ -466,7 +466,7 @@
</c:forEach> </c:forEach>
<c:forEach items="${_cfg.httpResHdrList}" var="cfg"> <c:forEach items="${_cfg.httpResHdrList}" var="cfg">
<div id="resHdrInfo${index}" class="content content2" name="subCfg${index}"> <div id="resHdrInfo${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-4"> <div class="col-md-4">
<div class="form-group"> <div class="form-group">
@@ -577,7 +577,7 @@
</c:forEach> </c:forEach>
<c:forEach items="${_cfg.httpResBodyList}" var="cfg"> <c:forEach items="${_cfg.httpResBodyList}" var="cfg">
<div id="resBodyInfo${index}" class="content content2" name="subCfg${index}"> <div id="resBodyInfo${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-8"> <div class="col-md-8">
<div class="form-group"> <div class="form-group">
@@ -680,7 +680,7 @@
</c:forEach> </c:forEach>
<c:forEach items="${_cfg.ntcSubscribeIdCfgList}" var="cfg"> <c:forEach items="${_cfg.ntcSubscribeIdCfgList}" var="cfg">
<div id="subscribeIdInfo${index}" class="content content2" name="subCfg${index}"> <div id="subscribeIdInfo${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-8"> <div class="col-md-8">
<div class="form-group"> <div class="form-group">

View File

@@ -115,7 +115,7 @@
<c:if test="${(region[0] eq 2) && (fn:length(_cfg.sslList) >0)}"> <c:if test="${(region[0] eq 2) && (fn:length(_cfg.sslList) >0)}">
<c:forEach items="${_cfg.sslList}" var="cfg"> <c:forEach items="${_cfg.sslList}" var="cfg">
<c:if test="${region[1] eq cfg.cfgType }"> <c:if test="${region[1] eq cfg.cfgType }">
<div id="${region[1]}Info${index}" class="content content2" name="subCfg${index}"> <div id="${region[1]}Info${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-8"> <div class="col-md-8">
<div class="form-group"> <div class="form-group">
@@ -221,7 +221,7 @@
<c:if test="${(region[0] eq 2) && (fn:length(_cfg.ntcSubscribeIdCfgList) >0)}"> <c:if test="${(region[0] eq 2) && (fn:length(_cfg.ntcSubscribeIdCfgList) >0)}">
<c:forEach items="${_cfg.ntcSubscribeIdCfgList}" var="cfg"> <c:forEach items="${_cfg.ntcSubscribeIdCfgList}" var="cfg">
<c:if test="${region[1] eq cfg.cfgType }"> <c:if test="${region[1] eq cfg.cfgType }">
<div id="${region[1]}Info${index}" class="content content2" name="subCfg${index}"> <div id="${region[1]}Info${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-8"> <div class="col-md-8">
<div class="form-group"> <div class="form-group">

View File

@@ -115,7 +115,7 @@
<c:if test="${(region[0] eq 2) && (fn:length(_cfg.httpUrlList) >0)}"> <c:if test="${(region[0] eq 2) && (fn:length(_cfg.httpUrlList) >0)}">
<c:forEach items="${_cfg.httpUrlList}" var="cfg"> <c:forEach items="${_cfg.httpUrlList}" var="cfg">
<c:if test="${region[1] eq cfg.cfgType }"> <c:if test="${region[1] eq cfg.cfgType }">
<div id="${region[1]}Info${index}" class="content content2" name="subCfg${index}"> <div id="${region[1]}Info${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-8"> <div class="col-md-8">
<div class="form-group"> <div class="form-group">
@@ -167,7 +167,7 @@
<c:if test="${(region[0] eq 2) && (fn:length(_cfg.ntcSubscribeIdCfgList) >0)}"> <c:if test="${(region[0] eq 2) && (fn:length(_cfg.ntcSubscribeIdCfgList) >0)}">
<c:forEach items="${_cfg.ntcSubscribeIdCfgList}" var="cfg"> <c:forEach items="${_cfg.ntcSubscribeIdCfgList}" var="cfg">
<c:if test="${region[1] eq cfg.cfgType }"> <c:if test="${region[1] eq cfg.cfgType }">
<div id="${region[1]}Info${index}" class="content content2" name="subCfg${index}"> <div id="${region[1]}Info${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-10"> <div class="col-md-10">
<div class="form-group"> <div class="form-group">

View File

@@ -115,7 +115,7 @@
<c:if test="${(region[0] eq 2) && (fn:length(_cfg.ntcSubscribeIdCfgList) >0)}"> <c:if test="${(region[0] eq 2) && (fn:length(_cfg.ntcSubscribeIdCfgList) >0)}">
<c:forEach items="${_cfg.ntcSubscribeIdCfgList}" var="cfg"> <c:forEach items="${_cfg.ntcSubscribeIdCfgList}" var="cfg">
<c:if test="${region[1] eq cfg.cfgType }"> <c:if test="${region[1] eq cfg.cfgType }">
<div id="${region[1]}Info${index}" class="content content2" name="subCfg${index}"> <div id="${region[1]}Info${index}" class="content content${region[0]}" name="subCfg${index}">
<div class="row"> <div class="row">
<div class="col-md-8"> <div class="col-md-8">
<div class="form-group"> <div class="form-group">

View File

@@ -6,8 +6,8 @@
<meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
<title>数据概览</title> <title>数据概览</title>
<link rel="stylesheet" href="${pageContext.request.contextPath}/static/global/plugins/highcharts/css/common.css"> <link rel="stylesheet" href="${pageContext.request.contextPath}/static/pages/css/common.css">
<link rel="stylesheet" href="${pageContext.request.contextPath}/static/global/plugins/highcharts/css/data_text.css"> <link rel="stylesheet" href="${pageContext.request.contextPath}/static/pages/css/data_text.css">
<link rel="stylesheet" href="${pageContext.request.contextPath}/static/pages/css/dashboard.css"> <link rel="stylesheet" href="${pageContext.request.contextPath}/static/pages/css/dashboard.css">
<script src="${pageContext.request.contextPath}/static/pages/scripts/dashboard.js"></script> <script src="${pageContext.request.contextPath}/static/pages/scripts/dashboard.js"></script>
@@ -37,12 +37,14 @@
</div> </div>
<div class="fl_fc"> <div class="fl_fc">
<%-- <a href="${ctx}/dashboard/bandwidthList"> 详情显示--%> <%-- <a href="${ctx}/dashboard/bandwidthList"> 详情显示--%>
<p data-original-title="<spring:message code="bandwith"/>" <p>
<label data-original-title="<spring:message code="bandwith"/>"
class="tooltips" data-flag="false" data-html="true" data-placement="top"> class="tooltips" data-flag="false" data-html="true" data-placement="top">
<!-- 网络带宽 --><spring:message code="bandwith"/> <!-- 网络带宽 --><spring:message code="bandwith"/>
</label>
</p> </p>
<p class="csNum">In <span class="c2sNum">83</span>% <i id="c2sColor" class="fa fa-arrow-up"></i> | Out <span class="s2cNum">17</span>% <i id="s2cColor" class="fa fa-arrow-down"></i></p> <p class="csNum">In <span class="c2sNum">0</span> | Out <span class="s2cNum">0</span> </p>
<span class="numberRun4">23802</span ><span class="numberRun4-unit"> bps</span> <span class="numberRun4">0</span ><span class="numberRun4-unit"> bps</span>
</div> </div>
</div> </div>
<div class="fr_fc"> <div class="fr_fc">
@@ -51,10 +53,13 @@
</div> </div>
<div class="fl_fc"> <div class="fl_fc">
<!-- <a href="javacript:;"> --> <!-- <a href="javacript:;"> -->
<p data-original-title="<spring:message code="action_reject"/>" <p>
<label data-original-title="<spring:message code="action_reject"/>"
class="tooltips" data-flag="false" data-html="true" data-placement="top"> class="tooltips" data-flag="false" data-html="true" data-placement="top">
<!-- 阻断链接数 --><spring:message code="action_reject"/></p> <!-- 阻断链接数 --><spring:message code="action_reject"/>
<p class="numberRun1">2102</p> </label>
</p>
<p class="numberRun1">0</p>
</div> </div>
</div> </div>
</div> </div>
@@ -71,7 +76,7 @@
<p data-original-title="<spring:message code="action_monit"/>" <p data-original-title="<spring:message code="action_monit"/>"
class="tooltips" data-flag="false" data-html="true" data-placement="top"> class="tooltips" data-flag="false" data-html="true" data-placement="top">
<!-- 监测链接数 --><spring:message code="action_monit"/></p> <!-- 监测链接数 --><spring:message code="action_monit"/></p>
<p class="numberRun2">65802</p> <p class="numberRun2">0</p>
</div> </div>
</div> </div>
<div class="fr_fc"> <div class="fr_fc">
@@ -83,7 +88,7 @@
<p data-original-title="<spring:message code="action_drop"/>" <p data-original-title="<spring:message code="action_drop"/>"
class="tooltips" data-flag="false" data-html="true" data-placement="top"> class="tooltips" data-flag="false" data-html="true" data-placement="top">
<!-- 丢弃链接数 --><spring:message code="action_drop"/></p> <!-- 丢弃链接数 --><spring:message code="action_drop"/></p>
<p class="numberRun3">85812</p> <p class="numberRun3">0</p>
</div> </div>
</div> </div>
<div class="fr_fc"> <div class="fr_fc">
@@ -95,7 +100,7 @@
<p data-original-title="<spring:message code="action_loop"/>" <p data-original-title="<spring:message code="action_loop"/>"
class="tooltips" data-flag="false" data-html="true" data-placement="top"> class="tooltips" data-flag="false" data-html="true" data-placement="top">
<!-- 回流链接数 --><spring:message code="action_loop"/></p> <!-- 回流链接数 --><spring:message code="action_loop"/></p>
<p class="numberRun">45802</p> <p class="numberRun">0</p>
</div> </div>
</div> </div>
@@ -339,7 +344,7 @@ $(document).ready(function(){
ajaxinfo(); ajaxinfo();
setInterval(function(){ setInterval(function(){
ajaxinfo(); ajaxinfo();
},5000); },20000);
protocolList();//协议统计 protocolList();//协议统计
ipActiveList();//活跃IP ipActiveList();//活跃IP
@@ -360,8 +365,8 @@ $(document).ready(function(){
}); });
//获取数据info //获取数据info
function ajaxinfo(){ function ajaxinfo(){
var c2s = $(".c2sNum").text().trim(); // var c2s = $(".c2sNum").text().trim();
var s2c = $(".s2cNum").text().trim(); // var s2c = $(".s2cNum").text().trim();
$.ajax({ $.ajax({
url:'${ctx}/dashboard/traffic/info', url:'${ctx}/dashboard/traffic/info',
type : "get" , type : "get" ,
@@ -372,11 +377,41 @@ function ajaxinfo(){
dataScroll(".numberRun1",Math.floor(data.rejectNum)); dataScroll(".numberRun1",Math.floor(data.rejectNum));
dataScroll(".numberRun2",Math.floor(data.monitorNum)); dataScroll(".numberRun2",Math.floor(data.monitorNum));
dataScroll(".numberRun3",Math.floor(data.dropConnNum)); dataScroll(".numberRun3",Math.floor(data.dropConnNum));
dataScroll(".numberRun4",Math.floor(data.bandwidth)); var bandwidth=data.bandwidth;
var bandwidthK=bandwidth/1024;
var bandwidthM=bandwidthK/1024;
if(bandwidthK>10){
bandwidth=bandwidthK;
$(".numberRun4-unit").text(" Kbps");
}
if(bandwidthM>10){
bandwidth=bandwidthM;
$(".numberRun4-unit").text(" Mbps");
}
dataScroll(".numberRun4",Math.floor(bandwidth));
//计算带宽进出口流量百分比 //计算带宽进出口流量百分比
$("#c2sColor").removeClass(); // $("#c2sColor").removeClass();
$("#s2cColor").removeClass(); // $("#s2cColor").removeClass();
if(data.c2sNum!=c2s){ var inoctetsNum=Math.floor(data.inoctetsNum);
var inoctetsNumK=inoctetsNum/1024;
var inoctetsNumM=inoctetsNumK/1024;
var outoctetsNum=Math.floor(data.outoctetsNum);
var outoctetsNumK=outoctetsNum/1024;
var outoctetsNumM=outoctetsNumK/1024;
var unit="bps";
if(inoctetsNumK>10){
inoctetsNum=inoctetsNumK;
outoctetsNum=outoctetsNumK;
unit="Kbps";
};
if(inoctetsNumM>10){
inoctetsNum=inoctetsNumM;
outoctetsNum=outoctetsNumM;
unit="Mbps";
};
$(".c2sNum").text(inoctetsNum+" "+unit);
$(".s2cNum").text(outoctetsNum+" "+unit);
/* if(data.inoctetsNum!=c2s){
$(".c2sNum").text(data.c2sNum); $(".c2sNum").text(data.c2sNum);
$(".s2cNum").text(100-data.c2sNum); $(".s2cNum").text(100-data.c2sNum);
if(data.c2sNum>c2s){ if(data.c2sNum>c2s){
@@ -393,7 +428,7 @@ function ajaxinfo(){
$("#s2cColor").addClass("fa fa-arrow-up"); $("#s2cColor").addClass("fa fa-arrow-up");
$("#s2cColor").attr({style:"color:green"}); $("#s2cColor").attr({style:"color:green"});
} }
} } */
}, },
error: function(data, textStatus, errorThrown){ error: function(data, textStatus, errorThrown){
// warning_prompt("获取实时列表数据失败!",1500); // warning_prompt("获取实时列表数据失败!",1500);
@@ -405,12 +440,7 @@ function ajaxinfo(){
function dataScroll(index,nums){ function dataScroll(index,nums){
var num=nums; var num=nums;
var numRun = $(index).numberAnimate({num:num, speed:3000, symbol:","}); var numRun = $(index).numberAnimate({num:num, speed:3000, symbol:","});
// var nums = 1000;
// setInterval(function(){
// nums-= 1000;
numRun.resetData(nums); numRun.resetData(nums);
// },2000);
} }
//切换下拉列表-操作系统与浏览器 //切换下拉列表-操作系统与浏览器

View File

@@ -1,916 +0,0 @@
//协议统计分析
function echart_1(rs) {
var data=new Array();
var drillData=new Array();
$(rs).each(function(i, d) {
var pktNum=new Array();
var byteLen=new Array();
//协议图-操作系统
data.push({
name: d.protoType,
y: parseInt(d.count+Math.random()*300),
drilldown: d.protoType,
});
pktNum[0]="pktNum";
pktNum[1]=parseInt(d.pktNum);
byteLen[0]="byteLen";
byteLen[1]=parseInt(d.byteLen);
drillData.push({
name: d.protoType,
id: d.protoType,
type:'pie',
innerSize: '70%',
data: [pktNum,byteLen],
});
});
var chart = Highcharts.chart('chart_1', {
chart: {
type: 'pie',
spacing : [40, 40 , 40, 40],
backgroundColor: 'rgba(255, 255, 255, 0)',
plotBackgroundColor:null,
plotBorderWidth:null,
plotShadow:false,
// margin:10,
},
noData:{
style: {//设置字体颜色
color: '#fff',
},
},
colors:['#f36f8a', '#44A9A8', '#ffff43','#25f3e6' ,'#964CEC','#32B0ED','#2b6ed7','#7278DD','#2DA9D8','#C66FE6'],
title: {
text: null
},
tool: {
enabled: true,
headerFormat: '<span style="font-size:10px">{point.key}: <b>{point.percentage:.1f}%</span><br>',
pointFormat: '{series.name}: {point.y}<b>',
shared: true,
useHTML: true
},
credits:{//是否有highcharts水印
enabled:false
},
legend:{
width:370,
x:20,
itemWidth:90,
itemHoverStyle:{
color:'#61D2F7',
},
itemStyle:{
color: '#fff',
fontFamily:'Microsoft YaHei',
},
// navigation: {//图例分页
// activeColor: 'red',
// animation: true,
// arrowSize: 15,
// inactiveColor: '#CCC',
// style: {
// fontWeight: 'bold',
// color: '#333',
// fontSize: '12px'
// }
// }
},
plotOptions: {
pie: {
allowPointSelect: true,
cursor: 'pointer',
showInLegend: true,
dataLabels: {
enabled: false,
format: '{point.name}:</b>{point.percentage:.1f}%',
style: {
color: (Highcharts.theme && Highcharts.theme.contrastTextColor) || 'black'
}
},
size: 200, //饼图的大小
states: {
hover: {
enabled: false
}
},
point: {
events: {
mouseOver: function(e) { // 鼠标滑过时动态更新标题
// 标题更新函数API 地址https://api.hcharts.cn/highcharts#Chart.setTitle
chart.setTitle({
text:e.target.name.length>10? this.percentage.toFixed(1)+"%<br><span>"+e.target.name.substring(0,10)+"...</span>":this.percentage.toFixed(1)+"%<br><span>"+e.target.name.substring(0,10)+"</span>",
floating:true,
y:120,
style: {//设置字体颜色
color: '#fff',
fontFamily:'Microsoft YaHei'
},
});
this.slice();
},
// 鼠标移出时,收回突出显示
mouseOut: function() {
this.slice();
},
// 默认是点击突出,这里屏蔽掉
click: function() {
return false;
}
},
},
}
},
series: [{
type: 'pie',
innerSize: '70%',//圆环的大小
name: 'count',
data: data
}],
drilldown:{
series:drillData,
drillUpButton: {
relativeTo: 'spacingBox',
}
}
}, function(c) { // 图表初始化完毕后的会掉函数
// 环形图圆心
var centerY = c.series[0].center[1],
titleHeight = parseInt(c.title.styles.fontSize);
// 动态设置标题位置
c.setTitle({
y:centerY + titleHeight/2
});
});
}
// echart_main中心图 活跃IP统计
function echart_main(rs) {
if(rs==null||rs.length<=0){
rs=[{"ipAddr":"103.6.1.12","linkNum":532,"pktNum": 5,"byteLen": 6},
{"ipAddr":"163.5.6.43","linkNum":532,"pktNum": 5,"byteLen": 7},
{"ipAddr":"170.1.0.1","linkNum":532,"pktNum": 5,"byteLen": 8},
{"ipAddr":"10.32.33.61","linkNum":532,"pktNum": 5,"byteLen": 9},
{"ipAddr":"145.16.1.2","linkNum":532,"pktNum": 5,"byteLen": 10},
{"ipAddr":"153.5.0.36","linkNum":532,"pktNum": 5,"byteLen": 11}]
}
var data=new Array();
var xData=new Array();
var drillData=new Array();
$(rs).each(function(i, d) {
var pktNum=new Array();
var byteLen=new Array();
xData.push(d.ipAddr);
//活跃IP图
data.push({
name: d.ipAddr,
y: parseInt(d.linkNum+Math.random()*300),
drilldown: d.ipAddr,
});
pktNum[0]="pktNum";
pktNum[1]=parseInt(d.pktNum);
byteLen[0]="byteLen";
byteLen[1]=parseInt(d.byteLen);
drillData.push({
name: d.ipAddr,
id: d.ipAddr,
type:'pie',
tooltip: {
enabled: true,
pointFormat: '{series.name}: {point.y}<b> ({point.percentage:.1f}%)'
},
data: [pktNum,byteLen],
});
});
var chart = Highcharts.chart('chart_main', {
chart: {
backgroundColor: 'rgba(255, 255, 255, 0)',
plotBackgroundColor:null,
plotBorderWidth:null,
plotShadow:false,
type: 'bar',
// marginLeft:80,
marginTop:50,
inverted: true,
},
noData:{
style: {//设置字体颜色
color: '#fff',
},
},
colors:['#f36f8a', '#44A9A8', '#ffff43','#25f3e6','#964CEC','#32B0ED','#2b6ed7','#7278DD','#2DA9D8','#C66FE6'],
title: {
text: null
},
xAxis: {
type:'category',
categories: xData,
title: {
text: null
},
labels:{
formatter:function(){
if(this.value.length>15){
return '<span>'+this.value.substring(0,15)+"..."+'</span>'
}else{
return this.value
}
}
}
},
yAxis: {
min: 0,
title: {
text: 'Number',
align:'high',
style: {//设置字体颜色
color: '#fff',
fontFamily:'Microsoft YaHei'
},
},
labels: {
style: {//设置字体颜色
color: '#fff',
fontFamily:'Microsoft YaHei'
},
},
lineWidth: 1,
},
tooltip: {
// valueSuffix: ' 单位'
},
plotOptions: {
bar: {
dataLabels: {
enabled: true,
allowOverlap: true, // 允许数据标签重叠
},
showInLegend:false
},
},
credits:{//是否有highcharts水印
enabled:false
},
series: [{
name: 'Number',
colorByPoint: true,
data: data
}],
drilldown:{
activeAxisLabelStyle:{
textDecoration:'none',
color: '#fff',
fontStyle:'Microsoft YaHei',
},
activeDataLabelStyle:{
textDecoration:'none',
color: '#fff',
fontStyle:'Microsoft YaHei'
},
drillUpButton:{
relativeTo: 'spacingBox',
},
series:drillData
}
});
}
//app应用类型统计 echart_3
function echart_3(rs) {
var data=new Array();
var xData=new Array();
var drillData=new Array();
$(rs).each(function(i, d) {
var pktNum=new Array();
var byteLen=new Array();
xData.push(d.appType);
//活跃IP图
data.push({
name: d.appType,
y: parseInt(d.count+Math.random()*300),
drilldown: d.appType,
});
pktNum[0]="pktNum";
pktNum[1]=parseInt(d.pktNum);
byteLen[0]="byteLen";
byteLen[1]=parseInt(d.byteLen);
drillData.push({
name: d.appType,
id: d.appType,
data: [pktNum,byteLen],
});
});
var chart = Highcharts.chart('chart_3',{
chart: {
backgroundColor: 'rgba(255, 255, 255, 0)',
plotBackgroundColor:null,
plotBorderWidth:null,
plotShadow:false,
type: 'column',
marginTop:50,
marginBottom:60,
},
noData:{
style: {//设置字体颜色
color: '#fff',
},
},
labels:{
style: {//设置字体颜色
color: '#fff',
fontSize:'10px',
fontFamily:'Microsoft YaHei'
},
},
colors:['#f36f8a', '#44A9A8', '#ffff43','#25f3e6','#964CEC','#32B0ED','#2b6ed7','#7278DD','#2DA9D8','#C66FE6'],
title: {
text: null
},
credits:{//是否有highcharts水印
enabled:false
},
xAxis: {
categories: xData,
labels:{
style: {//设置字体颜色
color: '#fff',
fontSize:'10px',
fontFamily:'Microsoft YaHei'
},
},
title: {
text: 'App',
align:'high',
style: {//设置字体颜色
color: '#fff',
fontSize:'10px',
fontFamily:'Microsoft YaHei'
},
},
},
yAxis: {
min: 0,
title: {
text: 'Number',
align:'high',
style: {//设置字体颜色
color: '#fff',
fontFamily:'Microsoft YaHei'
},
},
labels:{
style: {//设置字体颜色
color: '#fff',
fontSize:'10px',
fontFamily:'Microsoft YaHei'
},
}
},
tooltip: {
enabled: true,
headerFormat: '<span style="font-size:10px"><b>{point.key}</span><br>',
pointFormat: '{series.name}: {point.y}<b>',
shared: true,
useHTML: true
},
plotOptions: {
column: {
dataLabels: {//数字显示
enabled: true,
allowOverlap: true, // 允许数据标签重叠
style: {//设置字体颜色
color: '#fff',
fontSize:'10px',
fontFamily:'Microsoft YaHei'
},
},
showInLegend:false
},
},
series: [{
name: 'count',
colorByPoint: true,
data: data
}],
drilldown:{
activeAxisLabelStyle:{
textDecoration:'none',
color: '#fff',
fontStyle:'Microsoft YaHei',
},
activeDataLabelStyle:{
textDecoration:'none',
color: '#fff',
fontStyle:'Microsoft YaHei'
},
drillUpButton: {
relativeTo: 'spacingBox',
},
series:drillData
}
});
}
//终端用户 分操作系统与浏览器
function echart_2(rs){
var data=new Array();
var drillData=new Array();
$(rs).each(function(i, d) {
var pktNum=new Array();
var byteLen=new Array();
//协议图-操作系统
data.push({
name: d.osType,
y: parseInt(d.count),
drilldown: d.osType,
});
pktNum[0]="pktNum";
pktNum[1]=parseInt(d.pktNum);
byteLen[0]="byteLen";
byteLen[1]=parseInt(d.byteLen);
drillData.push({
name: d.osType,
id: d.osType,
type:'pie',
data: [pktNum,byteLen],
});
});
// 创建图例
var chart = Highcharts.chart('chart_2',{
chart: {
backgroundColor: 'rgba(255, 255, 255, 0)',
plotBackgroundColor:null,
plotBorderWidth:null,
plotShadow:false,
type: 'pie'
},
noData:{
style: {//设置字体颜色
color: '#fff',
},
},
legend:{
width:480,
x:40,
itemWidth:100,
itemDistance:2,
itemHoverStyle:{
color:'#61D2F7',
},
itemStyle:{
color: '#fff',
fontFamily:'Microsoft YaHei',
}
},
colors:['#f36f8a', '#44A9A8', '#ffff43','#25f3e6','#964CEC','#32B0ED','#2b6ed7','#7278DD','#2DA9D8','#C66FE6'],
title: {
text: null,
style: {//设置字体颜色
color: '#fff',
fontSize:'18px',
fontFamily:'Microsoft YaHei'
},
},
plotOptions: {
series: {
dataLabels: {
enabled: false,
format: '{point.name}'
},
},
pie:{
showInLegend: true,
point: {
events: {
mouseOver: function(e) {
this.slice();
},
// 鼠标移出时,收回突出显示
mouseOut: function() {
this.slice();
},
// 默认是点击突出,这里屏蔽掉
click: function() {
return false;
}
},
},
}
},
credits:{//是否有highcharts水印
enabled:false
},
tooltip: {
enabled: true,
headerFormat: '<span style="font-size:10px">{point.key}: <b>{point.percentage:.1f}%</span><br>',
pointFormat: '{series.name}: {point.y}<b>',
shared: true,
useHTML: true
},
series: [{
name: 'count',
colorByPoint: true,
data: data
}],
drilldown:{
activeAxisLabelStyle:{
textDecoration:'none',
color: '#fff',
fontStyle:'Microsoft YaHei',
},
activeDataLabelStyle:{
textDecoration:'none',
color: '#fff',
fontStyle:'Microsoft YaHei'
},
series:drillData,
drillUpButton: {
relativeTo: 'spacingBox',
}
}
});
}
//当点击操作系统列表时-显示浏览器
function echart_5(rs){
var data=new Array();
var drillData=new Array();
$(rs).each(function(i, d) {
var pktNum=new Array();
var byteLen=new Array();
//协议图-操作系统
data.push({
name: d.bsType,
y: parseInt(d.count),
drilldown: d.bsType,
});
pktNum[0]="pktNum";
pktNum[1]=parseInt(d.pktNum);
byteLen[0]="byteLen";
byteLen[1]=parseInt(d.byteLen);
drillData.push({
name: d.bsType,
id: d.bsType,
type:'pie',
data: [pktNum,byteLen],
});
});
// 创建图例
var chart = Highcharts.chart('chart_2',{
chart: {
backgroundColor: 'rgba(255, 255, 255, 0)',
plotBackgroundColor:null,
plotBorderWidth:null,
plotShadow:false,
type: 'pie'
},
legend:{
width:480,
x:40,
itemWidth:100,
itemDistance:2,
itemHoverStyle:{
color:'#61D2F7',
},
itemStyle:{
color: '#fff',
fontFamily:'Microsoft YaHei',
}
},
noData:{
style: {//设置字体颜色
color: '#fff',
},
},
colors:['#f36f8a', '#44A9A8', '#ffff43','#25f3e6','#964CEC','#32B0ED','#2b6ed7','#7278DD','#2DA9D8','#C66FE6'],
title: {
text: null,
style: {//设置字体颜色
color: '#fff',
fontSize:'18px',
fontFamily:'Microsoft YaHei'
},
},
plotOptions: {
series: {
dataLabels: {
enabled: false,
format: '{point.name}'
},
},
pie:{
point: {
events: {
mouseOver: function(e) { // 鼠标滑过时动态更新标题
this.slice();
},
// 鼠标移出时,收回突出显示
mouseOut: function() {
this.slice();
},
// 默认是点击突出,这里屏蔽掉
click: function() {
return false;
}
},
},
showInLegend: true,
}
},
credits:{//是否有highcharts水印
enabled:false
},
tooltip: {
enabled: true,
headerFormat: '<span style="font-size:10px">{point.key}: <b>{point.percentage:.1f}%</span><br>',
pointFormat: '{series.name}: {point.y}<b>',
shared: true,
useHTML: true
},
series: [{
name: 'count',
colorByPoint: true,
data: data
}],
drilldown:{
activeAxisLabelStyle:{
textDecoration:'none',
color: '#fff',
fontStyle:'Microsoft YaHei',
},
activeDataLabelStyle:{
textDecoration:'none',
color: '#fff',
fontStyle:'Microsoft YaHei'
},
series:drillData,
drillUpButton: {
relativeTo: 'spacingBox',
}
}
});
}
//网站流量分析
function echart_4(rs){
var data=new Array();
var drillData=new Array();
$(rs).each(function(i, d) {
var pktNum=new Array();
var byteLen=new Array();
data.push({
name: d.webId,
y: parseInt(d.count),
drilldown: d.webId,
});
pktNum[0]="pktNum";
pktNum[1]=parseInt(d.pktNum);
byteLen[0]="byteLen";
byteLen[1]=parseInt(d.byteLen);
drillData.push({
name: d.webId,
id: d.webId,
type:'pie',
data: [pktNum,byteLen],
});
});
// 创建图例
var chart = Highcharts.chart('chart_4',{
chart: {
backgroundColor: 'rgba(255, 255, 255, 0)',
plotBackgroundColor:null,
plotBorderWidth:null,
plotShadow:false,
type: 'pie'
},
colors:[ '#44A9A8', '#f36f8a','#25f3e6','#ffff43','#964CEC','#32B0ED','#2b6ed7','#7278DD','#2DA9D8','#C66FE6'],
title: {
text: null,
},
noData:{
style: {//设置字体颜色
color: '#fff',
},
},
plotOptions: {
series: {
dataLabels: {
enabled: false,
format: '{point.name}'
},
},
pie:{
showInLegend: true,
point: {
events: {
mouseOver: function(e) {
this.slice();
},
// 鼠标移出时,收回突出显示
mouseOut: function() {
this.slice();
},
// 默认是点击突出,这里屏蔽掉
click: function() {
return false;
}
},
},
}
},
credits:{//是否有highcharts水印
enabled:false
},
legend:{
width:480,
x:40,
itemWidth:100,
itemDistance:2,
itemHoverStyle:{
color:'#61D2F7',
},
itemStyle:{
color: '#fff',
fontFamily:'Microsoft YaHei',
}
},
tooltip: {
enabled: true,
headerFormat: '<span style="font-size:10px">{point.key}: <b>{point.percentage:.1f}%</span><br>',
pointFormat: '{series.name}: {point.y}<b>',
shared: true,
useHTML: true
},
series: [{
name: 'count',
colorByPoint: true,
data: data,
}],
drilldown:{
activeAxisLabelStyle:{
textDecoration:'none',
color: '#fff',
fontStyle:'Microsoft YaHei',
},
activeDataLabelStyle:{
textDecoration:'none',
color: '#fff',
fontStyle:'Microsoft YaHei'
},
series:drillData,
drillUpButton: {
relativeTo: 'spacingBox',
}
}
});
}
//网站流量分析-点击列表显示网站分类
function echart_6(rs){
var data=new Array();
var drillData=new Array();
$(rs).each(function(i, d) {
var pktNum=new Array();
var byteLen=new Array();
//协议图-操作系统
data.push({
name: d.webType,
y: parseInt(d.count),
drilldown: d.webType,
});
pktNum[0]="pktNum";
pktNum[1]=parseInt(d.pktNum);
byteLen[0]="byteLen";
byteLen[1]=parseInt(d.byteLen);
drillData.push({
name: d.webType,
id: d.webType,
type:'pie',
data: [pktNum,byteLen],
});
});
// 创建图例
var chart = Highcharts.chart('chart_4',{
chart: {
backgroundColor: 'rgba(255, 255, 255, 0)',
plotBackgroundColor:null,
plotBorderWidth:null,
plotShadow:false,
type: 'pie'
},
noData:{
style: {//设置字体颜色
color: '#fff',
},
},
colors:[ '#44A9A8', '#f36f8a','#25f3e6','#ffff43','#964CEC','#32B0ED','#2b6ed7','#7278DD','#2DA9D8','#C66FE6'],
title: {
text: null,
},
plotOptions: {
series: {
dataLabels: {
enabled: false,
format: '{point.name}'
},
},
pie:{
showInLegend: true,
point: {
events: {
mouseOver: function(e) { // 鼠标滑过时动态更新标题
this.slice();
},
// 鼠标移出时,收回突出显示
mouseOut: function() {
this.slice();
},
// 默认是点击突出,这里屏蔽掉
click: function() {
return false;
}
},
},
}
},
credits:{//是否有highcharts水印
enabled:false
},
legend:{
width:370,
x:20,
itemWidth:90,
itemHoverStyle:{
color:'#61D2F7',
},
itemStyle:{
color: '#fff',
fontFamily:'Microsoft YaHei',
}
},
tooltip: {
enabled: true,
headerFormat: '<span style="font-size:10px">{point.key}: <b>{point.percentage:.1f}%</span><br>',
pointFormat: '{series.name}: {point.y}<b>',
shared: true,
useHTML: true
},
series: [{
name: 'count',
colorByPoint: true,
data: data,
}],
drilldown:{
activeAxisLabelStyle:{
textDecoration:'none',
color: '#fff',
fontStyle:'Microsoft YaHei',
},
activeDataLabelStyle:{
textDecoration:'none',
color: '#fff',
fontStyle:'Microsoft YaHei'
},
series:drillData,
drillUpButton: {
relativeTo: 'spacingBox',
}
}
});
}

View File

@@ -99,7 +99,7 @@ p{
margin-left: 10px; margin-left: 10px;
margin-top: 1px; margin-top: 1px;
} }
.data_content .data_info p:nth-child(1){ .data_content .data_info .info_2 p:nth-child(1){
color:#fff; color:#fff;
font-size: 18px; font-size: 18px;
text-align: center; text-align: center;
@@ -107,6 +107,15 @@ p{
white-space: nowrap; white-space: nowrap;
text-overflow: ellipsis; text-overflow: ellipsis;
} }
.data_content .data_info .info_1 label:nth-child(1){
color:#fff;
font-size: 18px;
text-align: center;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
margin: -3px;
}
.data_content .data_info>div.info_1 p:nth-child(2){ .data_content .data_info>div.info_1 p:nth-child(2){
font-weight: 600; font-weight: 600;
font-size: 16px; font-size: 16px;

View File

@@ -11,7 +11,7 @@
data.push({ data.push({
name: d.protoType, name: d.protoType,
y: parseInt(d.count), y: parseInt(d.count),
drilldown: d.protoType, // drilldown: d.protoType,
}); });
pktNum[0]="pktNum"; pktNum[0]="pktNum";
@@ -134,12 +134,12 @@
name: 'count', name: 'count',
data: data data: data
}], }],
drilldown:{ // drilldown:{
series:drillData, // series:drillData,
drillUpButton: { // drillUpButton: {
relativeTo: 'spacingBox', // relativeTo: 'spacingBox',
} // }
} // }
}, function(c) { // 图表初始化完毕后的会掉函数 }, function(c) { // 图表初始化完毕后的会掉函数
// 环形图圆心 // 环形图圆心
@@ -175,7 +175,7 @@
data.push({ data.push({
name: d.ipAddr, name: d.ipAddr,
y: parseInt(d.linkNum), y: parseInt(d.linkNum),
drilldown: d.ipAddr, // drilldown: d.ipAddr,
}); });
pktNum[0]="pktNum"; pktNum[0]="pktNum";
pktNum[1]=parseInt(d.pktNum); pktNum[1]=parseInt(d.pktNum);
@@ -212,6 +212,13 @@
title: { title: {
text: null text: null
}, },
labels:{
style: {//设置字体颜色
color: '#fff',
fontSize:'10px',
fontFamily:'Microsoft YaHei'
},
},
xAxis: { xAxis: {
type:'category', type:'category',
categories: xData, categories: xData,
@@ -225,7 +232,12 @@
}else{ }else{
return this.value return this.value
} }
} },
style: {//设置字体颜色
color: '#fff',
fontSize:'10px',
fontFamily:'Microsoft YaHei'
},
} }
}, },
@@ -235,15 +247,17 @@
text: 'Link Number', text: 'Link Number',
align:'high', align:'high',
style: {//设置字体颜色 style: {//设置字体颜色
color: '#fff', color: '#fff',
fontFamily:'Microsoft YaHei' fontSize:'10px',
}, fontFamily:'Microsoft YaHei'
},
}, },
labels: { labels: {
style: {//设置字体颜色 style: {//设置字体颜色
color: '#fff', color: '#fff',
fontFamily:'Microsoft YaHei' fontSize:'10px',
}, fontFamily:'Microsoft YaHei'
},
}, },
lineWidth: 1, lineWidth: 1,
@@ -257,10 +271,16 @@
dataLabels: { dataLabels: {
enabled: true, enabled: true,
allowOverlap: true, // 允许数据标签重叠 allowOverlap: true, // 允许数据标签重叠
style: {//设置字体颜色
color: '#fff',
fontSize:'10px',
fontFamily:'Microsoft YaHei'
},
}, },
showInLegend:false showInLegend:false
}, },
}, },
credits:{//是否有highcharts水印 credits:{//是否有highcharts水印
enabled:false enabled:false
@@ -270,23 +290,23 @@
colorByPoint: true, colorByPoint: true,
data: data data: data
}], }],
drilldown:{ // drilldown:{
activeAxisLabelStyle:{ // activeAxisLabelStyle:{
textDecoration:'none', // textDecoration:'none',
color: '#fff', // color: '#fff',
fontStyle:'Microsoft YaHei', // fontStyle:'Microsoft YaHei',
//
}, // },
activeDataLabelStyle:{ // activeDataLabelStyle:{
textDecoration:'none', // textDecoration:'none',
color: '#fff', // color: '#fff',
fontStyle:'Microsoft YaHei' // fontStyle:'Microsoft YaHei'
}, // },
drillUpButton:{ // drillUpButton:{
relativeTo: 'spacingBox', // relativeTo: 'spacingBox',
}, // },
series:drillData // series:drillData
} // }
}); });
} }
@@ -375,12 +395,14 @@
}, },
}, },
labels:{ labels:{
enabled:true,
style: {//设置字体颜色 style: {//设置字体颜色
color: '#fff', color: '#fff',
fontSize:'10px', fontSize:'10px',
fontFamily:'Microsoft YaHei' fontFamily:'Microsoft YaHei'
}, },
} },
}, },
tooltip: { tooltip: {
enabled: true, enabled: true,
@@ -435,11 +457,10 @@ function echart_2(rs){
$(rs).each(function(i, d) { $(rs).each(function(i, d) {
var pktNum=new Array(); var pktNum=new Array();
var byteLen=new Array(); var byteLen=new Array();
//协议图-操作系统
data.push({ data.push({
name: d.osType, name: d.osType,
y: parseInt(d.count), y: parseInt(d.count),
drilldown: d.osType, // drilldown: d.osType,
}); });
pktNum[0]="pktNum"; pktNum[0]="pktNum";
@@ -533,23 +554,23 @@ function echart_2(rs){
colorByPoint: true, colorByPoint: true,
data: data data: data
}], }],
drilldown:{ // drilldown:{
activeAxisLabelStyle:{ // activeAxisLabelStyle:{
textDecoration:'none', // textDecoration:'none',
color: '#fff', // color: '#fff',
fontStyle:'Microsoft YaHei', // fontStyle:'Microsoft YaHei',
//
}, // },
activeDataLabelStyle:{ // activeDataLabelStyle:{
textDecoration:'none', // textDecoration:'none',
color: '#fff', // color: '#fff',
fontStyle:'Microsoft YaHei' // fontStyle:'Microsoft YaHei'
}, // },
series:drillData, // series:drillData,
drillUpButton: { // drillUpButton: {
relativeTo: 'spacingBox', // relativeTo: 'spacingBox',
} // }
} // }
}); });
} }
//当点击操作系统列表时-显示浏览器 //当点击操作系统列表时-显示浏览器
@@ -563,7 +584,7 @@ function echart_5(rs){
data.push({ data.push({
name: d.bsType, name: d.bsType,
y: parseInt(d.count), y: parseInt(d.count),
drilldown: d.bsType, // drilldown: d.bsType,
}); });
pktNum[0]="pktNum"; pktNum[0]="pktNum";
@@ -658,23 +679,23 @@ function echart_5(rs){
colorByPoint: true, colorByPoint: true,
data: data data: data
}], }],
drilldown:{ // drilldown:{
activeAxisLabelStyle:{ // activeAxisLabelStyle:{
textDecoration:'none', // textDecoration:'none',
color: '#fff', // color: '#fff',
fontStyle:'Microsoft YaHei', // fontStyle:'Microsoft YaHei',
//
}, // },
activeDataLabelStyle:{ // activeDataLabelStyle:{
textDecoration:'none', // textDecoration:'none',
color: '#fff', // color: '#fff',
fontStyle:'Microsoft YaHei' // fontStyle:'Microsoft YaHei'
}, // },
series:drillData, // series:drillData,
drillUpButton: { // drillUpButton: {
relativeTo: 'spacingBox', // relativeTo: 'spacingBox',
} // }
} // }
}); });
} }
@@ -688,7 +709,7 @@ function echart_4(rs){
data.push({ data.push({
name: d.websiteService, name: d.websiteService,
y: parseInt(d.count), y: parseInt(d.count),
drilldown: d.websiteService, // drilldown: d.websiteService,
}); });
pktNum[0]="pktNum"; pktNum[0]="pktNum";
@@ -777,23 +798,23 @@ function echart_4(rs){
colorByPoint: true, colorByPoint: true,
data: data, data: data,
}], }],
drilldown:{ // drilldown:{
activeAxisLabelStyle:{ // activeAxisLabelStyle:{
textDecoration:'none', // textDecoration:'none',
color: '#fff', // color: '#fff',
fontStyle:'Microsoft YaHei', // fontStyle:'Microsoft YaHei',
//
}, // },
activeDataLabelStyle:{ // activeDataLabelStyle:{
textDecoration:'none', // textDecoration:'none',
color: '#fff', // color: '#fff',
fontStyle:'Microsoft YaHei' // fontStyle:'Microsoft YaHei'
}, // },
series:drillData, // series:drillData,
drillUpButton: { // drillUpButton: {
relativeTo: 'spacingBox', // relativeTo: 'spacingBox',
} // }
} // }
}); });
} }
//网站流量分析-点击列表显示网站分类 //网站流量分析-点击列表显示网站分类
@@ -807,7 +828,7 @@ function echart_6(rs){
data.push({ data.push({
name: d.domain, name: d.domain,
y: parseInt(d.count), y: parseInt(d.count),
drilldown: d.domain, // drilldown: d.domain,
}); });
pktNum[0]="pktNum"; pktNum[0]="pktNum";
@@ -895,23 +916,23 @@ function echart_6(rs){
colorByPoint: true, colorByPoint: true,
data: data, data: data,
}], }],
drilldown:{ // drilldown:{
activeAxisLabelStyle:{ // activeAxisLabelStyle:{
textDecoration:'none', // textDecoration:'none',
color: '#fff', // color: '#fff',
fontStyle:'Microsoft YaHei', // fontStyle:'Microsoft YaHei',
//
}, // },
activeDataLabelStyle:{ // activeDataLabelStyle:{
textDecoration:'none', // textDecoration:'none',
color: '#fff', // color: '#fff',
fontStyle:'Microsoft YaHei' // fontStyle:'Microsoft YaHei'
}, // },
series:drillData, // series:drillData,
drillUpButton: { // drillUpButton: {
relativeTo: 'spacingBox', // relativeTo: 'spacingBox',
} // }
} // }
}); });
} }
function echart_topic_domain(rs){ function echart_topic_domain(rs){