diff --git a/README.md b/README.md index a426d44f..a031069a 100644 --- a/README.md +++ b/README.md @@ -87,9 +87,9 @@ uavstack is the All in One source repository of UAVStack. * 服务授权(代码整理中,陆续更新...) # 如何构建 How to Build -如果由于缺少jar包或某些依赖jar无法下载导致Maven Build Failure,可下载[参考Maven依赖仓库](http://pan.baidu.com/s/1i5veR33),使用该Maven仓库或将其复制到你正在使用的Maven仓库中。 +如果由于缺少jar包或某些依赖jar无法下载导致Maven Build Failure,可下载[参考Maven依赖仓库](https://pan.baidu.com/s/1gfeY8pH),使用该Maven仓库或将其复制到你正在使用的Maven仓库中。 -If you are unable to build because of the lack of jar packages or certain dependency jar, pleaser refer this [Maven Repository](http://pan.baidu.com/s/1i5veR33), use the Maven repository, or copy it to the Maven warehouse you are using. +If you are unable to build because of the lack of jar packages or certain dependency jar, pleaser refer this [Maven Repository](https://pan.baidu.com/s/1gfeY8pH), use the Maven repository, or copy it to the Maven warehouse you are using. 1. build com.creditease.uav.superpom ``` @@ -150,13 +150,13 @@ build结果 # 下载中心 Downloads ## 全维监控UAV.Monitor+APM -* [MOF探针](http://pan.baidu.com/s/1c1P0rni) -* [监控代理程序](http://pan.baidu.com/s/1cD9tuu) -* [健康管理服务](http://pan.baidu.com/s/1eROaqEA) -* [AppHub](http://pan.baidu.com/s/1dEBlhwX) +* [MOF探针](https://pan.baidu.com/s/1cg4J0q) +* [监控代理程序](https://pan.baidu.com/s/1ge5MJ9h) +* [健康管理服务](https://pan.baidu.com/s/1i4HnV85) +* [AppHub](https://pan.baidu.com/s/1dFxtDZV) ## 第三方下载 Thirdparty Downloads -* [rocket.war](http://pan.baidu.com/s/1pKCmJ3P) +* [rocket.war](https://pan.baidu.com/s/1dF6NeHN) ## AllInOne开发演示版 AllInOne Install Downloads 开发演示版的健康管理服务(HM)仅适合开发环境,演示环境,小规模测试环境。 @@ -164,9 +164,9 @@ build结果 The health management service (HM) in AllInOne Install Package is only suitable for development environments, demos, and small scale testing environments. [A distributed deployment](https://uavorg.github.io/main/uavdoc_deploydocs/healmanagerInstall/healmanagerInstall/microservice.html) is recommended for the production environment -* [Windows64位](http://pan.baidu.com/s/1boA9p75) -* [Mac](http://pan.baidu.com/s/1boOMZ2f) -* [Linux(CentOS)](http://pan.baidu.com/s/1qYSG5QW) +* [Windows64位](https://pan.baidu.com/s/1jIF0wNs) +* [Mac](https://pan.baidu.com/s/1mhCykp6) +* [Linux(CentOS)](https://pan.baidu.com/s/1nvj6jW1) diff --git a/com.creditease.uav.agent.buildComponent/bin/start.bat b/com.creditease.uav.agent.buildComponent/bin/start.bat index e2cc24dc..30c943d4 100644 --- a/com.creditease.uav.agent.buildComponent/bin/start.bat +++ b/com.creditease.uav.agent.buildComponent/bin/start.bat @@ -19,4 +19,4 @@ if not exist C:\Windows\System32\drivers\npf.sys (move lib\npf.sys C:\Windows\Sy set CLASSPATH=bin/com.creditease.uav.base-1.0-boot.jar set javaAgent="-javaagent:../uavmof/com.creditease.uav.agent/com.creditease.uav.monitorframework.agent-1.0-agent.jar" set javaOpts=-server -Xms64m -Xmx256m -XX:+UseConcMarkSweepGC -XX:+CMSIncrementalMode -XX:+CMSIncrementalPacing -XX:CMSIncrementalDutyCycleMin=0 -XX:CMSIncrementalDutyCycle=10 -XX:+UseParNewGC -java %javaAgent% %javaOpts% -Djava.library.path=./lib -DNetCardIndex=0 -DJAppID=%appID% -DJAppGroup=UAV -classpath "%CLASSPATH%" com.creditease.mscp.boot.MSCPBoot -p %profile% +%executeJava% %javaAgent% %javaOpts% -Djava.library.path=./lib -DNetCardIndex=0 -DJAppID=%appID% -DJAppGroup=UAV -classpath "%CLASSPATH%" com.creditease.mscp.boot.MSCPBoot -p %profile% diff --git a/com.creditease.uav.base/src/main/java/com/creditease/agent/profile/api/StandardProfileModeler.java b/com.creditease.uav.base/src/main/java/com/creditease/agent/profile/api/StandardProfileModeler.java index 24c5e1e9..6c58fc4f 100644 --- a/com.creditease.uav.base/src/main/java/com/creditease/agent/profile/api/StandardProfileModeler.java +++ b/com.creditease.uav.base/src/main/java/com/creditease/agent/profile/api/StandardProfileModeler.java @@ -45,6 +45,8 @@ public class StandardProfileModeler extends AbstractBaseAction { protected IStandardProfileModelListener listener; + protected static final String LAZY_INFO = "@LAZY"; + public StandardProfileModeler(String cName, String feature, IActionEngine engine) { this(cName, feature, engine, null); } @@ -286,8 +288,7 @@ private void createAppProfileData(ActionContext context, MonitorDataFrame mdf, M /** * lib */ - - pi.put("jars.lib", "@LAZY"); + pi.put("jars.lib", LAZY_INFO); /** * logs @@ -340,8 +341,7 @@ private void buildDubboServiceComponents(MonitorDataFrame mdf, Map 0) { - pi.put("cpt.mscp.http", JSONHelper.toString(mscpHttp)); + pi.put("cpt.mscp.http", LAZY_INFO); for (String mscpCompName : mscpHttp.keySet()) { Map info = (Map) mscpHttp.get(mscpCompName); @@ -461,10 +461,10 @@ private void buildMSCPServiceComponents(MonitorDataFrame mdf, Map mscpTimeWork = mdf.getElemInstValues(appid, "cpt", "com.creditease.agent.spi.AbstractTimerWork"); - if (mscpTimeWork != null && mscpTimeWork.size() > 0) { - pi.put("cpt.mscp.timework", JSONHelper.toString(mscpTimeWork)); + pi.put("cpt.mscp.timework", LAZY_INFO); } + } /** @@ -479,26 +479,23 @@ private void buildMSCPServiceComponents(MonitorDataFrame mdf, Map pi, String appid, String appurl, Map> compServices) { - Map filters = mdf.getElemInstValues(appid, "cpt", "javax.servlet.annotation.WebFilter"); - - Map listeners = mdf.getElemInstValues(appid, "cpt", "javax.servlet.annotation.WebListener"); - - pi.put("cpt.filters", JSONHelper.toString(filters)); - - pi.put("cpt.listeners", JSONHelper.toString(listeners)); - Map servlets = mdf.getElemInstValues(appid, "cpt", "javax.servlet.annotation.WebServlet"); // all servlet based tech if (servlets == null || servlets.size() == 0) { return; } + pi.put("cpt.servlets", LAZY_INFO); // get servlets URLs Map serviceServlets = getServletsURLs(appurl, compServices, servlets); Map jaxws = mdf.getElemInstValues(appid, "cpt", "javax.jws.WebService"); + if (jaxws != null && jaxws.size() > 0) { + pi.put("cpt.jaxws", LAZY_INFO); + } + String jaxwsBaseURL = serviceServlets.get("jaxws"); // get jaxws URLs @@ -506,11 +503,21 @@ private void buildJEEServiceComponents(MonitorDataFrame mdf, Map Map jaxwsProviders = mdf.getElemInstValues(appid, "cpt", "javax.xml.ws.WebServiceProvider"); + if (jaxwsProviders != null && jaxwsProviders.size() > 0) { + pi.put("cpt.jaxwsP", LAZY_INFO); + + } + // get jaxws provider urls getJAXWSProviderURLs(jaxwsBaseURL, compServices, jaxwsProviders); Map jaxrs = mdf.getElemInstValues(appid, "cpt", "javax.ws.rs.Path"); + if (jaxrs != null && jaxrs.size() > 0) { + pi.put("cpt.jaxrs", LAZY_INFO); + + } + // get jaxrs urls String jaxrsBaseURL = serviceServlets.get("jaxrs"); @@ -518,9 +525,17 @@ private void buildJEEServiceComponents(MonitorDataFrame mdf, Map Map springMVC = mdf.getElemInstValues(appid, "cpt", "org.springframework.stereotype.Controller"); + if (springMVC != null && springMVC.size() > 0) { + pi.put("cpt.springmvc", LAZY_INFO); + + } Map springMVCRest = mdf.getElemInstValues(appid, "cpt", "org.springframework.web.bind.annotation.RestController"); + if (springMVCRest != null && springMVCRest.size() > 0) { + pi.put("cpt.springmvcRest", LAZY_INFO); + + } // get spring mvc urls String springmvcBaseURL = serviceServlets.get("springmvc"); @@ -531,15 +546,25 @@ private void buildJEEServiceComponents(MonitorDataFrame mdf, Map // get struts2 urls Map strutsAction = mdf.getElemInstValues(appid, "cpt", "com.opensymphony.xwork2.Action"); + if (strutsAction != null && strutsAction.size() > 0) { + pi.put("cpt.struts2", LAZY_INFO); + + } getStruts2URLs(appurl, compServices, strutsAction); - pi.put("cpt.servlets", JSONHelper.toString(servlets)); - pi.put("cpt.jaxws", JSONHelper.toString(jaxws)); - pi.put("cpt.jaxwsP", JSONHelper.toString(jaxwsProviders)); - pi.put("cpt.jaxrs", JSONHelper.toString(jaxrs)); - pi.put("cpt.springmvc", JSONHelper.toString(springMVC)); - pi.put("cpt.springmvcRest", JSONHelper.toString(springMVCRest)); - pi.put("cpt.struts2", JSONHelper.toString(strutsAction)); + // get filters and listeners + Map filters = mdf.getElemInstValues(appid, "cpt", "javax.servlet.annotation.WebFilter"); + if (filters != null && filters.size() > 0) { + pi.put("cpt.filters", LAZY_INFO); + + } + + Map listeners = mdf.getElemInstValues(appid, "cpt", "javax.servlet.annotation.WebListener"); + if (listeners != null && listeners.size() > 0) { + pi.put("cpt.listeners", LAZY_INFO); + + } + } @SuppressWarnings({ "unchecked", "rawtypes" }) diff --git a/com.creditease.uav.console.buildComponent/config/web_pro.xml b/com.creditease.uav.console.buildComponent/config/web_pro.xml index 587f9287..0ac9f88c 100644 --- a/com.creditease.uav.console.buildComponent/config/web_pro.xml +++ b/com.creditease.uav.console.buildComponent/config/web_pro.xml @@ -33,7 +33,7 @@ es.info {"forwar.url":"http://127.0.0.1:9200,http://127.0.0.1:9200"} - 3 + 2 true @@ -45,7 +45,7 @@ opentsdb-agent-servlet com.creditease.uav.opentsdb.OpenTSDBRestAgentServlet - 2 + 3 true @@ -89,7 +89,6 @@ log.app.enable true - 2 true diff --git a/com.creditease.uav.console.buildComponent/config/web_test.xml b/com.creditease.uav.console.buildComponent/config/web_test.xml index 47d0f394..1635f791 100644 --- a/com.creditease.uav.console.buildComponent/config/web_test.xml +++ b/com.creditease.uav.console.buildComponent/config/web_test.xml @@ -33,7 +33,7 @@ es.info {"forwar.url":"http://127.0.0.1:9200,http://127.0.0.1:9200"} - 3 + 2 true @@ -45,7 +45,7 @@ opentsdb-agent-servlet com.creditease.uav.opentsdb.OpenTSDBRestAgentServlet - 2 + 3 true @@ -89,7 +89,6 @@ log.app.enable true - 2 true diff --git a/com.creditease.uav.console/src/main/webapp/WEB-INF/web.xml b/com.creditease.uav.console/src/main/webapp/WEB-INF/web.xml index c67037d9..97d26832 100644 --- a/com.creditease.uav.console/src/main/webapp/WEB-INF/web.xml +++ b/com.creditease.uav.console/src/main/webapp/WEB-INF/web.xml @@ -32,7 +32,7 @@ es.info {"forwar.url":"http://localhost:9200"} - 3 + 2 true @@ -44,7 +44,7 @@ opentsdb-agent-servlet com.creditease.uav.opentsdb.OpenTSDBRestAgentServlet - 2 + 3 true @@ -88,7 +88,6 @@ log.app.enable true - 2 true diff --git a/com.creditease.uav.console/src/main/webapp/appvendors/bootstrap/css/bootstrap-datetimepicker2.min.css b/com.creditease.uav.console/src/main/webapp/appvendors/bootstrap/css/bootstrap-datetimepicker2.min.css new file mode 100644 index 00000000..36394e27 --- /dev/null +++ b/com.creditease.uav.console/src/main/webapp/appvendors/bootstrap/css/bootstrap-datetimepicker2.min.css @@ -0,0 +1,8 @@ +/*! + * Datepicker for Bootstrap + * + * Copyright 2012 Stefan Petre + * Licensed under the Apache License v2.0 + * http://www.apache.org/licenses/LICENSE-2.0 + * + */.clearfix{*zoom:1}.clearfix:before,.clearfix:after{display:table;content:"";line-height:0}.clearfix:after{clear:both}.hide-text{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.input-block-level{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.bootstrap-datetimepicker-widget{top:0;left:0;width:250px;padding:4px;margin-top:1px;z-index:3000;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.bootstrap-datetimepicker-widget:before{content:'';display:inline-block;border-left:7px solid transparent;border-right:7px solid transparent;border-bottom:7px solid #ccc;border-bottom-color:rgba(0,0,0,0.2);position:absolute;top:-7px;left:6px}.bootstrap-datetimepicker-widget:after{content:'';display:inline-block;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:6px solid #fff;position:absolute;top:-6px;left:7px}.bootstrap-datetimepicker-widget.pull-right:before{left:auto;right:6px}.bootstrap-datetimepicker-widget.pull-right:after{left:auto;right:7px}.bootstrap-datetimepicker-widget>ul{list-style-type:none;margin:0}.bootstrap-datetimepicker-widget .timepicker-hour,.bootstrap-datetimepicker-widget .timepicker-minute,.bootstrap-datetimepicker-widget .timepicker-second{width:100%;font-weight:bold;font-size:1.2em}.bootstrap-datetimepicker-widget table[data-hour-format="12"] .separator{width:4px;padding:0;margin:0}.bootstrap-datetimepicker-widget .datepicker>div{display:none}.bootstrap-datetimepicker-widget .picker-switch{text-align:center}.bootstrap-datetimepicker-widget table{width:100%;margin:0}.bootstrap-datetimepicker-widget td,.bootstrap-datetimepicker-widget th{text-align:center;width:20px;height:20px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.bootstrap-datetimepicker-widget td.day:hover,.bootstrap-datetimepicker-widget td.hour:hover,.bootstrap-datetimepicker-widget td.minute:hover,.bootstrap-datetimepicker-widget td.second:hover{background:#eee;cursor:pointer}.bootstrap-datetimepicker-widget td.old,.bootstrap-datetimepicker-widget td.new{color:#999}.bootstrap-datetimepicker-widget td.active,.bootstrap-datetimepicker-widget td.active:hover{color:#fff;background-color:#006dcc;background-image:-moz-linear-gradient(top,#08c,#04c);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#04c));background-image:-webkit-linear-gradient(top,#08c,#04c);background-image:-o-linear-gradient(top,#08c,#04c);background-image:linear-gradient(to bottom,#08c,#04c);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0044cc',GradientType=0);border-color:#04c #04c #002a80;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);*background-color:#04c;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false);color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25)}.bootstrap-datetimepicker-widget td.active:hover,.bootstrap-datetimepicker-widget td.active:hover:hover,.bootstrap-datetimepicker-widget td.active:active,.bootstrap-datetimepicker-widget td.active:hover:active,.bootstrap-datetimepicker-widget td.active.active,.bootstrap-datetimepicker-widget td.active:hover.active,.bootstrap-datetimepicker-widget td.active.disabled,.bootstrap-datetimepicker-widget td.active:hover.disabled,.bootstrap-datetimepicker-widget td.active[disabled],.bootstrap-datetimepicker-widget td.active:hover[disabled]{color:#fff;background-color:#04c;*background-color:#003bb3}.bootstrap-datetimepicker-widget td.active:active,.bootstrap-datetimepicker-widget td.active:hover:active,.bootstrap-datetimepicker-widget td.active.active,.bootstrap-datetimepicker-widget td.active:hover.active{background-color:#039 \9}.bootstrap-datetimepicker-widget td.disabled,.bootstrap-datetimepicker-widget td.disabled:hover{background:0;color:#999;cursor:not-allowed}.bootstrap-datetimepicker-widget td span{display:block;width:47px;height:54px;line-height:54px;float:left;margin:2px;cursor:pointer;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.bootstrap-datetimepicker-widget td span:hover{background:#eee}.bootstrap-datetimepicker-widget td span.active{color:#fff;background-color:#006dcc;background-image:-moz-linear-gradient(top,#08c,#04c);background-image:-webkit-gradient(linear,0 0,0 100%,from(#08c),to(#04c));background-image:-webkit-linear-gradient(top,#08c,#04c);background-image:-o-linear-gradient(top,#08c,#04c);background-image:linear-gradient(to bottom,#08c,#04c);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0044cc',GradientType=0);border-color:#04c #04c #002a80;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) rgba(0,0,0,0.25);*background-color:#04c;filter:progid:DXImageTransform.Microsoft.gradient(enabled = false);color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25)}.bootstrap-datetimepicker-widget td span.active:hover,.bootstrap-datetimepicker-widget td span.active:active,.bootstrap-datetimepicker-widget td span.active.active,.bootstrap-datetimepicker-widget td span.active.disabled,.bootstrap-datetimepicker-widget td span.active[disabled]{color:#fff;background-color:#04c;*background-color:#003bb3}.bootstrap-datetimepicker-widget td span.active:active,.bootstrap-datetimepicker-widget td span.active.active{background-color:#039 \9}.bootstrap-datetimepicker-widget td span.old{color:#999}.bootstrap-datetimepicker-widget td span.disabled,.bootstrap-datetimepicker-widget td span.disabled:hover{background:0;color:#999;cursor:not-allowed}.bootstrap-datetimepicker-widget th.switch{width:145px}.bootstrap-datetimepicker-widget th.next,.bootstrap-datetimepicker-widget th.prev{font-size:21px}.bootstrap-datetimepicker-widget th.disabled,.bootstrap-datetimepicker-widget th.disabled:hover{background:0;color:#999;cursor:not-allowed}.bootstrap-datetimepicker-widget thead tr:first-child th{cursor:pointer}.bootstrap-datetimepicker-widget thead tr:first-child th:hover{background:#eee}.input-append.date .add-on i,.input-prepend.date .add-on i{display:block;cursor:pointer;width:16px;height:16px}.bootstrap-datetimepicker-widget.left-oriented:before{left:auto;right:6px}.bootstrap-datetimepicker-widget.left-oriented:after{left:auto;right:7px} \ No newline at end of file diff --git a/com.creditease.uav.console/src/main/webapp/appvendors/bootstrap/js/bootstrap-datetimepicker2.min.js b/com.creditease.uav.console/src/main/webapp/appvendors/bootstrap/js/bootstrap-datetimepicker2.min.js new file mode 100644 index 00000000..a30f7764 --- /dev/null +++ b/com.creditease.uav.console/src/main/webapp/appvendors/bootstrap/js/bootstrap-datetimepicker2.min.js @@ -0,0 +1,26 @@ +/** + * @license + * ========================================================= + * bootstrap-datetimepicker.js + * http://www.eyecon.ro/bootstrap-datepicker + * ========================================================= + * Copyright 2012 Stefan Petre + * + * Contributions: + * - Andrew Rowls + * - Thiago de Arruda + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ========================================================= + */ +(function($){var smartPhone=window.orientation!=undefined;var DateTimePicker=function(element,options){this.id=dpgId++;this.init(element,options)};var dateToDate=function(dt){if(typeof dt==="string"){return new Date(dt)}return dt};DateTimePicker.prototype={constructor:DateTimePicker,init:function(element,options){var icon;if(!(options.pickTime||options.pickDate))throw new Error("Must choose at least one picker");this.options=options;this.$element=$(element);this.language=options.language in dates?options.language:"en";this.pickDate=options.pickDate;this.pickTime=options.pickTime;this.isInput=this.$element.is("input");this.component=false;if(this.$element.find(".input-append")||this.$element.find(".input-prepend"))this.component=this.$element.find(".add-on");this.format=options.format;if(!this.format){if(this.isInput)this.format=this.$element.data("format");else this.format=this.$element.find("input").data("format");if(!this.format)this.format="MM/dd/yyyy"}this._compileFormat();if(this.component){icon=this.component.find("i")}if(this.pickTime){if(icon&&icon.length)this.timeIcon=icon.data("time-icon");if(!this.timeIcon)this.timeIcon="icon-time";icon.addClass(this.timeIcon)}if(this.pickDate){if(icon&&icon.length)this.dateIcon=icon.data("date-icon");if(!this.dateIcon)this.dateIcon="icon-calendar";icon.removeClass(this.timeIcon);icon.addClass(this.dateIcon)}this.widget=$(getTemplate(this.timeIcon,options.pickDate,options.pickTime,options.pick12HourFormat,options.pickSeconds,options.collapse)).appendTo("body");this.minViewMode=options.minViewMode||this.$element.data("date-minviewmode")||0;if(typeof this.minViewMode==="string"){switch(this.minViewMode){case"months":this.minViewMode=1;break;case"years":this.minViewMode=2;break;default:this.minViewMode=0;break}}this.viewMode=options.viewMode||this.$element.data("date-viewmode")||0;if(typeof this.viewMode==="string"){switch(this.viewMode){case"months":this.viewMode=1;break;case"years":this.viewMode=2;break;default:this.viewMode=0;break}}this.startViewMode=this.viewMode;this.weekStart=options.weekStart||this.$element.data("date-weekstart")||0;this.weekEnd=this.weekStart===0?6:this.weekStart-1;this.setStartDate(options.startDate||this.$element.data("date-startdate"));this.setEndDate(options.endDate||this.$element.data("date-enddate"));this.fillDow();this.fillMonths();this.fillHours();this.fillMinutes();this.fillSeconds();this.update();this.showMode();this._attachDatePickerEvents()},show:function(e){this.widget.show();this.height=this.component?this.component.outerHeight():this.$element.outerHeight();this.place();this.$element.trigger({type:"show",date:this._date});this._attachDatePickerGlobalEvents();if(e){e.stopPropagation();e.preventDefault()}},disable:function(){this.$element.find("input").prop("disabled",true);this._detachDatePickerEvents()},enable:function(){this.$element.find("input").prop("disabled",false);this._attachDatePickerEvents()},hide:function(){var collapse=this.widget.find(".collapse");for(var i=0;i");while(dowCnt'+dates[this.language].daysMin[dowCnt++%7]+"")}this.widget.find(".datepicker-days thead").append(html)},fillMonths:function(){var html="";var i=0;while(i<12){html+=''+dates[this.language].monthsShort[i++]+""}this.widget.find(".datepicker-months td").append(html)},fillDate:function(){var year=this.viewDate.getUTCFullYear();var month=this.viewDate.getUTCMonth();var currentDate=UTCDate(this._date.getUTCFullYear(),this._date.getUTCMonth(),this._date.getUTCDate(),0,0,0,0);var startYear=typeof this.startDate==="object"?this.startDate.getUTCFullYear():-Infinity;var startMonth=typeof this.startDate==="object"?this.startDate.getUTCMonth():-1;var endYear=typeof this.endDate==="object"?this.endDate.getUTCFullYear():Infinity;var endMonth=typeof this.endDate==="object"?this.endDate.getUTCMonth():12;this.widget.find(".datepicker-days").find(".disabled").removeClass("disabled");this.widget.find(".datepicker-months").find(".disabled").removeClass("disabled");this.widget.find(".datepicker-years").find(".disabled").removeClass("disabled");this.widget.find(".datepicker-days th:eq(1)").text(dates[this.language].months[month]+" "+year);var prevMonth=UTCDate(year,month-1,28,0,0,0,0);var day=DPGlobal.getDaysInMonth(prevMonth.getUTCFullYear(),prevMonth.getUTCMonth());prevMonth.setUTCDate(day);prevMonth.setUTCDate(day-(prevMonth.getUTCDay()-this.weekStart+7)%7);if(year==startYear&&month<=startMonth||year=endMonth||year>endYear){this.widget.find(".datepicker-days th:eq(2)").addClass("disabled")}var nextMonth=new Date(prevMonth.valueOf());nextMonth.setUTCDate(nextMonth.getUTCDate()+42);nextMonth=nextMonth.valueOf();var html=[];var row;var clsName;while(prevMonth.valueOf()");html.push(row)}clsName="";if(prevMonth.getUTCFullYear()year||prevMonth.getUTCFullYear()==year&&prevMonth.getUTCMonth()>month){clsName+=" new"}if(prevMonth.valueOf()===currentDate.valueOf()){clsName+=" active"}if(prevMonth.valueOf()+864e5<=this.startDate){clsName+=" disabled"}if(prevMonth.valueOf()>this.endDate){clsName+=" disabled"}row.append(''+prevMonth.getUTCDate()+"");prevMonth.setUTCDate(prevMonth.getUTCDate()+1)}this.widget.find(".datepicker-days tbody").empty().append(html);var currentYear=this._date.getUTCFullYear();var months=this.widget.find(".datepicker-months").find("th:eq(1)").text(year).end().find("span").removeClass("active");if(currentYear===year){months.eq(this._date.getUTCMonth()).addClass("active")}if(currentYear-1endYear){this.widget.find(".datepicker-months th:eq(2)").addClass("disabled")}for(var i=0;i<12;i++){if(year==startYear&&startMonth>i||yearendYear){$(months[i]).addClass("disabled")}}html="";year=parseInt(year/10,10)*10;var yearCont=this.widget.find(".datepicker-years").find("th:eq(1)").text(year+"-"+(year+9)).end().find("td");this.widget.find(".datepicker-years").find("th").removeClass("disabled");if(startYear>year){this.widget.find(".datepicker-years").find("th:eq(0)").addClass("disabled")}if(endYearendYear?" disabled":"")+'">'+year+"";year+=1}yearCont.html(html)},fillHours:function(){var table=this.widget.find(".timepicker .timepicker-hours table");table.parent().hide();var html="";if(this.options.pick12HourFormat){var current=1;for(var i=0;i<3;i+=1){html+="";for(var j=0;j<4;j+=1){var c=current.toString();html+=''+padLeft(c,2,"0")+"";current++}html+=""}}else{var current=0;for(var i=0;i<6;i+=1){html+="";for(var j=0;j<4;j+=1){var c=current.toString();html+=''+padLeft(c,2,"0")+"";current++}html+=""}}table.html(html)},fillMinutes:function(){var table=this.widget.find(".timepicker .timepicker-minutes table");table.parent().hide();var html="";var current=0;for(var i=0;i<5;i++){html+="";for(var j=0;j<4;j+=1){var c=current.toString();html+=''+padLeft(c,2,"0")+"";current+=3}html+=""}table.html(html)},fillSeconds:function(){var table=this.widget.find(".timepicker .timepicker-seconds table");table.parent().hide();var html="";var current=0;for(var i=0;i<5;i++){html+="";for(var j=0;j<4;j+=1){var c=current.toString();html+=''+padLeft(c,2,"0")+"";current+=3}html+=""}table.html(html)},fillTime:function(){if(!this._date)return;var timeComponents=this.widget.find(".timepicker span[data-time-component]");var table=timeComponents.closest("table");var is12HourFormat=this.options.pick12HourFormat;var hour=this._date.getUTCHours();var period="AM";if(is12HourFormat){if(hour>=12)period="PM";if(hour===0)hour=12;else if(hour!=12)hour=hour%12;this.widget.find(".timepicker [data-action=togglePeriod]").text(period)}hour=padLeft(hour.toString(),2,"0");var minute=padLeft(this._date.getUTCMinutes().toString(),2,"0");var second=padLeft(this._date.getUTCSeconds().toString(),2,"0");timeComponents.filter("[data-time-component=hours]").text(hour);timeComponents.filter("[data-time-component=minutes]").text(minute);timeComponents.filter("[data-time-component=seconds]").text(second)},click:function(e){e.stopPropagation();e.preventDefault();this._unset=false;var target=$(e.target).closest("span, td, th");if(target.length===1){if(!target.is(".disabled")){switch(target[0].nodeName.toLowerCase()){case"th":switch(target[0].className){case"switch":this.showMode(1);break;case"prev":case"next":var vd=this.viewDate;var navFnc=DPGlobal.modes[this.viewMode].navFnc;var step=DPGlobal.modes[this.viewMode].navStep;if(target[0].className==="prev")step=step*-1;vd["set"+navFnc](vd["get"+navFnc]()+step);this.fillDate();this.set();break}break;case"span":if(target.is(".month")){var month=target.parent().find("span").index(target);this.viewDate.setUTCMonth(month)}else{var year=parseInt(target.text(),10)||0;this.viewDate.setUTCFullYear(year)}if(this.viewMode!==0){this._date=UTCDate(this.viewDate.getUTCFullYear(),this.viewDate.getUTCMonth(),this.viewDate.getUTCDate(),this._date.getUTCHours(),this._date.getUTCMinutes(),this._date.getUTCSeconds(),this._date.getUTCMilliseconds());this.notifyChange()}this.showMode(-1);this.fillDate();this.set();break;case"td":if(target.is(".day")){var day=parseInt(target.text(),10)||1;var month=this.viewDate.getUTCMonth();var year=this.viewDate.getUTCFullYear();if(target.is(".old")){if(month===0){month=11;year-=1}else{month-=1}}else if(target.is(".new")){if(month==11){month=0;year+=1}else{month+=1}}this._date=UTCDate(year,month,day,this._date.getUTCHours(),this._date.getUTCMinutes(),this._date.getUTCSeconds(),this._date.getUTCMilliseconds());this.viewDate=UTCDate(year,month,Math.min(28,day),0,0,0,0);this.fillDate();this.set();this.notifyChange()}break}}}},actions:{incrementHours:function(e){this._date.setUTCHours(this._date.getUTCHours()+1)},incrementMinutes:function(e){this._date.setUTCMinutes(this._date.getUTCMinutes()+1)},incrementSeconds:function(e){this._date.setUTCSeconds(this._date.getUTCSeconds()+1)},decrementHours:function(e){this._date.setUTCHours(this._date.getUTCHours()-1)},decrementMinutes:function(e){this._date.setUTCMinutes(this._date.getUTCMinutes()-1)},decrementSeconds:function(e){this._date.setUTCSeconds(this._date.getUTCSeconds()-1)},togglePeriod:function(e){var hour=this._date.getUTCHours();if(hour>=12)hour-=12;else hour+=12;this._date.setUTCHours(hour)},showPicker:function(){this.widget.find(".timepicker > div:not(.timepicker-picker)").hide();this.widget.find(".timepicker .timepicker-picker").show()},showHours:function(){this.widget.find(".timepicker .timepicker-picker").hide();this.widget.find(".timepicker .timepicker-hours").show()},showMinutes:function(){this.widget.find(".timepicker .timepicker-picker").hide();this.widget.find(".timepicker .timepicker-minutes").show()},showSeconds:function(){this.widget.find(".timepicker .timepicker-picker").hide();this.widget.find(".timepicker .timepicker-seconds").show()},selectHour:function(e){var tgt=$(e.target);var value=parseInt(tgt.text(),10);if(this.options.pick12HourFormat){var current=this._date.getUTCHours();if(current>=12){if(value!=12)value=(value+12)%24}else{if(value===12)value=0;else value=value%12}}this._date.setUTCHours(value);this.actions.showPicker.call(this)},selectMinute:function(e){var tgt=$(e.target);var value=parseInt(tgt.text(),10);this._date.setUTCMinutes(value);this.actions.showPicker.call(this)},selectSecond:function(e){var tgt=$(e.target);var value=parseInt(tgt.text(),10);this._date.setUTCSeconds(value);this.actions.showPicker.call(this)}},doAction:function(e){e.stopPropagation();e.preventDefault();if(!this._date)this._date=UTCDate(1970,0,0,0,0,0,0);var action=$(e.currentTarget).data("action");var rv=this.actions[action].apply(this,arguments);this.set();this.fillTime();this.notifyChange();return rv},stopEvent:function(e){e.stopPropagation();e.preventDefault()},keydown:function(e){var self=this,k=e.which,input=$(e.target);if(k==8||k==46){setTimeout(function(){self._resetMaskPos(input)})}},keypress:function(e){var k=e.which;if(k==8||k==46){return}var input=$(e.target);var c=String.fromCharCode(k);var val=input.val()||"";val+=c;var mask=this._mask[this._maskPos];if(!mask){return false}if(mask.end!=val.length){return}if(!mask.pattern.test(val.slice(mask.start))){val=val.slice(0,val.length-1);while((mask=this._mask[this._maskPos])&&mask.character){val+=mask.character;this._maskPos++}val+=c;if(mask.end!=val.length){input.val(val);return false}else{if(!mask.pattern.test(val.slice(mask.start))){input.val(val.slice(0,mask.start));return false}else{input.val(val);this._maskPos++;return false}}}else{this._maskPos++}},change:function(e){var input=$(e.target);var val=input.val();if(this._formatPattern.test(val)){this.update();this.setValue(this._date.getTime());this.notifyChange();this.set()}else if(val&&val.trim()){this.setValue(this._date.getTime());if(this._date)this.set();else input.val("")}else{if(this._date){this.setValue(null);this.notifyChange();this._unset=true}}this._resetMaskPos(input)},showMode:function(dir){if(dir){this.viewMode=Math.max(this.minViewMode,Math.min(2,this.viewMode+dir))}this.widget.find(".datepicker > div").hide().filter(".datepicker-"+DPGlobal.modes[this.viewMode].clsName).show()},destroy:function(){this._detachDatePickerEvents();this._detachDatePickerGlobalEvents();this.widget.remove();this.$element.removeData("datetimepicker");this.component.removeData("datetimepicker")},formatDate:function(d){return this.format.replace(formatReplacer,function(match){var methodName,property,rv,len=match.length;if(match==="ms")len=1;property=dateFormatComponents[match].property;if(property==="Hours12"){rv=d.getUTCHours();if(rv===0)rv=12;else if(rv!==12)rv=rv%12}else if(property==="Period12"){if(d.getUTCHours()>=12)return"PM";else return"AM"}else{methodName="get"+property;rv=d[methodName]()}if(methodName==="getUTCMonth")rv=rv+1;if(methodName==="getUTCYear")rv=rv+1900-2e3;return padLeft(rv.toString(),len,"0")})},parseDate:function(str){var match,i,property,methodName,value,parsed={};if(!(match=this._formatPattern.exec(str)))return null;for(i=1;ival.length){this._maskPos=i;break}else if(this._mask[i].end===val.length){this._maskPos=i+1;break}}},_finishParsingDate:function(parsed){var year,month,date,hours,minutes,seconds,milliseconds;year=parsed.UTCFullYear;if(parsed.UTCYear)year=2e3+parsed.UTCYear;if(!year)year=1970;if(parsed.UTCMonth)month=parsed.UTCMonth-1;else month=0;date=parsed.UTCDate||1;hours=parsed.UTCHours||0;minutes=parsed.UTCMinutes||0;seconds=parsed.UTCSeconds||0;milliseconds=parsed.UTCMilliseconds||0;if(parsed.Hours12){hours=parsed.Hours12}if(parsed.Period12){if(/pm/i.test(parsed.Period12)){if(hours!=12)hours=(hours+12)%24}else{hours=hours%12}}return UTCDate(year,month,date,hours,minutes,seconds,milliseconds)},_compileFormat:function(){var match,component,components=[],mask=[],str=this.format,propertiesByIndex={},i=0,pos=0;while(match=formatComponent.exec(str)){component=match[0];if(component in dateFormatComponents){i++;propertiesByIndex[i]=dateFormatComponents[component].property;components.push("\\s*"+dateFormatComponents[component].getPattern(this)+"\\s*");mask.push({pattern:new RegExp(dateFormatComponents[component].getPattern(this)),property:dateFormatComponents[component].property,start:pos,end:pos+=component.length})}else{components.push(escapeRegExp(component));mask.push({pattern:new RegExp(escapeRegExp(component)),character:component,start:pos,end:++pos})}str=str.slice(component.length)}this._mask=mask;this._maskPos=0;this._formatPattern=new RegExp("^\\s*"+components.join("")+"\\s*$");this._propertiesByIndex=propertiesByIndex},_attachDatePickerEvents:function(){var self=this;this.widget.on("click",".datepicker *",$.proxy(this.click,this));this.widget.on("click","[data-action]",$.proxy(this.doAction,this));this.widget.on("mousedown",$.proxy(this.stopEvent,this));if(this.pickDate&&this.pickTime){this.widget.on("click.togglePicker",".accordion-toggle",function(e){e.stopPropagation();var $this=$(this);var $parent=$this.closest("ul");var expanded=$parent.find(".collapse.in");var closed=$parent.find(".collapse:not(.in)");if(expanded&&expanded.length){var collapseData=expanded.data("collapse");if(collapseData&&collapseData.transitioning)return;expanded.collapse("hide");closed.collapse("show");$this.find("i").toggleClass(self.timeIcon+" "+self.dateIcon);self.$element.find(".add-on i").toggleClass(self.timeIcon+" "+self.dateIcon)}})}if(this.isInput){this.$element.on({focus:$.proxy(this.show,this),change:$.proxy(this.change,this)});if(this.options.maskInput){this.$element.on({keydown:$.proxy(this.keydown,this),keypress:$.proxy(this.keypress,this)})}}else{this.$element.on({change:$.proxy(this.change,this)},"input");if(this.options.maskInput){this.$element.on({keydown:$.proxy(this.keydown,this),keypress:$.proxy(this.keypress,this)},"input")}if(this.component){this.component.on("click",$.proxy(this.show,this))}else{this.$element.on("click",$.proxy(this.show,this))}}},_attachDatePickerGlobalEvents:function(){$(window).on("resize.datetimepicker"+this.id,$.proxy(this.place,this));if(!this.isInput){$(document).on("mousedown.datetimepicker"+this.id,$.proxy(this.hide,this))}},_detachDatePickerEvents:function(){this.widget.off("click",".datepicker *",this.click);this.widget.off("click","[data-action]");this.widget.off("mousedown",this.stopEvent);if(this.pickDate&&this.pickTime){this.widget.off("click.togglePicker")}if(this.isInput){this.$element.off({focus:this.show,change:this.change});if(this.options.maskInput){this.$element.off({keydown:this.keydown,keypress:this.keypress})}}else{this.$element.off({change:this.change},"input");if(this.options.maskInput){this.$element.off({keydown:this.keydown,keypress:this.keypress},"input")}if(this.component){this.component.off("click",this.show)}else{this.$element.off("click",this.show)}}},_detachDatePickerGlobalEvents:function(){$(window).off("resize.datetimepicker"+this.id);if(!this.isInput){$(document).off("mousedown.datetimepicker"+this.id)}},_isInFixed:function(){if(this.$element){var parents=this.$element.parents();var inFixed=false;for(var i=0;i'+"
    "+""+'
    '+DPGlobal.template+"
    "+""+'
  • '+""+'
    '+TPGlobal.getTemplate(is12Hours,showSeconds)+"
    "+""+"
"+""}else if(pickTime){return'"}else{return'"}}function UTCDate(){return new Date(Date.UTC.apply(Date,arguments))}var DPGlobal={modes:[{clsName:"days",navFnc:"UTCMonth",navStep:1},{clsName:"months",navFnc:"UTCFullYear",navStep:1},{clsName:"years",navFnc:"UTCFullYear",navStep:10}],isLeapYear:function(year){return year%4===0&&year%100!==0||year%400===0},getDaysInMonth:function(year,month){return[31,DPGlobal.isLeapYear(year)?29:28,31,30,31,30,31,31,30,31,30,31][month]},headTemplate:""+""+'‹'+''+'›'+""+"",contTemplate:''};DPGlobal.template='
'+''+DPGlobal.headTemplate+""+"
"+"
"+'
'+''+DPGlobal.headTemplate+DPGlobal.contTemplate+"
"+"
"+'
'+''+DPGlobal.headTemplate+DPGlobal.contTemplate+"
"+"
";var TPGlobal={hourTemplate:'',minuteTemplate:'',secondTemplate:''};TPGlobal.getTemplate=function(is12Hours,showSeconds){return'
'+'"+""+''+''+''+(showSeconds?''+'':"")+(is12Hours?'':"")+""+""+" "+''+" "+(showSeconds?''+"":"")+(is12Hours?''+"":"")+""+""+''+''+''+(showSeconds?''+'':"")+(is12Hours?'':"")+""+"
"+TPGlobal.hourTemplate+":"+TPGlobal.minuteTemplate+":"+TPGlobal.secondTemplate+""+''+"
"+"
"+'
'+''+"
"+"
"+'
'+''+"
"+"
"+(showSeconds?'
'+''+"
"+"
":"")}})(window.jQuery); \ No newline at end of file diff --git a/com.creditease.uav.console/src/main/webapp/uavapp_godeye/appmonitor/js/uav.appmonitor.js b/com.creditease.uav.console/src/main/webapp/uavapp_godeye/appmonitor/js/uav.appmonitor.js index c171f273..2501bf40 100644 --- a/com.creditease.uav.console/src/main/webapp/uavapp_godeye/appmonitor/js/uav.appmonitor.js +++ b/com.creditease.uav.console/src/main/webapp/uavapp_godeye/appmonitor/js/uav.appmonitor.js @@ -1656,8 +1656,11 @@ var mvcObj={ /** * if there is no servlets profiling (may be something wrong), we need use appurl as the main service port */ - if (hasPort==false&&obj["appurl"]!=undefined&&obj["appurl"].indexOf("http")>-1) { + if (hasPort==false&&obj["appurl"]!=undefined&&obj["appurl"].indexOf("http")==0) { var urlInfo=obj["appurl"].split(":"); + if (urlInfo.length<3) { + return undefined; + } var pIndex=urlInfo[2].indexOf("/"); var port=urlInfo[2].substring(0,pIndex); var sport=urlInfo[0]+":"+urlInfo[1]+":"+port; @@ -4589,69 +4592,45 @@ var mvcObj={ sb.append("
服务组件"); //----------------------MSCP Application----------------- - if (jsonObj["cpt.mscp.http"]!=undefined&&jsonObj["cpt.mscp.http"]!="{}") { - sb.append("组件[MSCP.Http]"); - } + + this.buildComponentProfile(sb,jsonObj,"cpt.mscp.http","profile.info.mscphttp","组件[MSCP.Http]",cptservices,"_detail_cpt_mscphttp","cpt_service"); + //----------------------Dubbo Application----------------- - if (jsonObj["cpt.dubbo.provider"]!=undefined&&jsonObj["cpt.dubbo.provider"]!="{}") { - sb.append("组件[Dubbo.Provider]"); - } + this.buildComponentProfile(sb,jsonObj,"cpt.dubbo.provider","profile.info.dubboprovider","组件[Dubbo.Provider]",cptservices,"_detail_cpt_dubboprovider","cpt_service"); + //----------------------JEE Application--------------------- - if (jsonObj["cpt.servlets"]!=undefined&&jsonObj["cpt.servlets"]!="{}") { - sb.append("组件[Servlets]"); - } - - if (jsonObj["cpt.jaxws"]!=undefined&&jsonObj["cpt.jaxws"]!="{}") { - sb.append("组件[JAXWS]"); - } - - if (jsonObj["cpt.jaxwsP"]!=undefined&&jsonObj["cpt.jaxwsP"]!="{}") { - sb.append("组件[JAXWSProvider]"); - } - - if (jsonObj["cpt.jaxrs"]!=undefined&&jsonObj["cpt.jaxrs"]!="{}") { - sb.append("组件[JAXRS]" ); - } - - if (jsonObj["cpt.springmvc"]!=undefined&&jsonObj["cpt.springmvc"]!="{}") { - sb.append("组件[SpringMVC]" ); - } - - if (jsonObj["cpt.springmvcRest"]!=undefined&&jsonObj["cpt.springmvcRest"]!="{}") { - sb.append("组件[SpringMVCRest]" ); - } - - if (jsonObj["cpt.struts2"]!=undefined&&jsonObj["cpt.struts2"]!="{}") { - sb.append("组件[Struts2]" ); - } + this.buildComponentProfile(sb,jsonObj,"cpt.servlets","profile.info.servlet","组件[Servlets]",cptservices,"_detail_cpt_servlets","cpt_service"); + + this.buildComponentProfile(sb,jsonObj,"cpt.jaxws","profile.info.jaxws","组件[JAXWS]",cptservices,"_detail_cpt_jaxws","cpt_service"); + + this.buildComponentProfile(sb,jsonObj,"cpt.jaxwsP","profile.info.jaxwsp","组件[JAXWSProvider]",cptservices,"_detail_cpt_jaxwsp","cpt_service"); + + this.buildComponentProfile(sb,jsonObj,"cpt.jaxrs","profile.info.jaxrs","组件[JAXRS]",cptservices,"_detail_cpt_jaxrs","cpt_service"); + + this.buildComponentProfile(sb,jsonObj,"cpt.springmvc","profile.info.springmvc","组件[SpringMVC]",cptservices,"_detail_cpt_springmvc","cpt_service"); + + this.buildComponentProfile(sb,jsonObj,"cpt.springmvcRest","profile.info.springmvcrest","组件[SpringMVCRest]",cptservices,"_detail_cpt_springmvcRest","cpt_service"); + + this.buildComponentProfile(sb,jsonObj,"cpt.struts2","profile.info.struts2","组件[Struts2]",cptservices,"_detail_cpt_struts2","cpt_service"); + sb.append("
"); sb.append("
其他组件"); if (jsonObj["logs.log4j"]!=undefined&&jsonObj["logs.log4j"]!="{}") { - sb.append("日志配置"); - } - - if (jsonObj["jars.lib"]!=undefined&&jsonObj["jars.lib"]=="@LAZY") { - var obj={appgroup:jsonObj["appgroup"],appurl:jsonObj["o_appurl"],id:jsonObj["id"]}; - var objstr=JSON.stringify(obj); - sb.append("类库"); + sb.append("日志配置"); } + this.buildComponentProfile(sb,jsonObj,"jars.lib","","类库","","_detail_lib","lib") + //---------------------MSCP Application--------------- - if (jsonObj["cpt.mscp.timework"]!=undefined&&jsonObj["cpt.mscp.timework"]!="{}") { - sb.append("组件[MSCP.TimeWork]"); - } - + this.buildComponentProfile(sb,jsonObj,"cpt.mscp.timework","profile.info.mscptimeworker","组件[MSCP.TimeWork]","","_detail_cpt_mscptimework","cpt") + //---------------------JEE Application-------------------- - if (jsonObj["cpt.filters"]!=undefined&&jsonObj["cpt.filters"]!="{}") { - sb.append("组件[Filters]"); - } - - if (jsonObj["cpt.listeners"]!=undefined&&jsonObj["cpt.listeners"]!="{}") { - sb.append("组件[Listeners]"); - } - + this.buildComponentProfile(sb,jsonObj,"cpt.filters","profile.info.filter","组件[Filters]","","_detail_cpt_filters","cpt") + + this.buildComponentProfile(sb,jsonObj,"cpt.listeners","profile.info.listener","组件[Listeners]","","_detail_cpt_listeners","cpt") + sb.append("
"); @@ -4659,6 +4638,16 @@ var mvcObj={ sb.append(""); return sb.toString(); }, + //build component element + buildComponentProfile:function(sb,jsonObj,key,targetStr,titleStr,cptservices,detailStr,methodName){ + if (jsonObj[key]!=undefined&&jsonObj[key]=="@LAZY") { + + var obj={appgroup:jsonObj["appgroup"],appurl:jsonObj["o_appurl"],id:jsonObj["id"],target:targetStr,title:titleStr,cpt:cptservices,detail:detailStr}; + var objstr=JSON.stringify(obj); + sb.append(""+titleStr+""); + + } + }, getAppProfileDetail:{ //----------------------fields-------------------- //映射字段,便于人类读取 @@ -4764,7 +4753,7 @@ var mvcObj={ return "
"+val+"
"; } }, - //-----------------------public----------------------- + //-----------------------public----------------------- //show log config log:function(d) { var logs=eval("("+d+")"); @@ -4798,29 +4787,78 @@ var mvcObj={ } }, //服务组件显示 - cpt_service:function(appinstId,type,d,cptservices) { - var cpt=eval("("+d[type]+")"); - var sb=new StringBuffer(); + cpt_service:function(objstr) { - for (var key in cpt) { - sb.append("
"+key+"
"); - sb.append("
"); - sb.append("
服务URL
"); - sb.append(""); - sb.append("
"); - sb.append("
"); - sb.append("
服务画像
"); - var vals=cpt[key]; - sb.append(""); - sb.append("
"); - } + var isDisplay=app.controller.openClose(objstr.id+objstr.detail); + + var detailCtn=HtmlHelper.id(objstr.id+objstr.detail); - return sb.toString(); + if (isDisplay==true&&detailCtn.innerHTML=="") { + var libkey=objstr["appgroup"]+"@"+objstr["appurl"]; + var target=objstr.target; + this.callAppDetail(target, libkey, function(result) { + + try { + var detail=eval("("+result+")"); + + var libs=eval("("+detail[libkey]+")"); + + var sb=new StringBuffer(); + for(var key in libs) { + sb.append("
"+key+"
"); + sb.append("
"); + sb.append("
服务URL
"); + sb.append(""); + sb.append("
"); + sb.append("
"); + sb.append("
服务画像
"); + var vals=libs[key]; + sb.append(""); + sb.append("
"); + } + detailCtn.innerHTML=sb.toString(); + }catch(e) { + detailCtn.innerHTML="加载"+objstr.title+"失败:"+e; + } + }); + } }, + //其他组件显示 - cpt:function(appinstId,d) { + cpt:function(objstr) { + + var isDisplay=app.controller.openClose(objstr.id+objstr.detail); + detailCtn=HtmlHelper.id(objstr.id+objstr.detail); + + if (isDisplay==true&&detailCtn.innerHTML=="") { + var libkey=objstr["appgroup"]+"@"+objstr["appurl"]; + var target=objstr.target; + this.callAppDetail(target, libkey, function(result) { + + try { + var detail=eval("("+result+")"); + + var libs=eval("("+detail[libkey]+")"); + + var sb=new StringBuffer(); + for(var key in libs) { + sb.append("
"+key+"
"); + sb.append("
"); + sb.append("
组件画像
"); + var vals=libs[key]; + sb.append(""); + sb.append("
"); + } + detailCtn.innerHTML=sb.toString(); + }catch(e) { + detailCtn.innerHTML="加载"+objstr.title+"失败:"+e; + } + }); + } + }, + cpt_log:function(appinstId,d) { var cpt=eval("("+d+")"); var sb=new StringBuffer(); diff --git a/com.creditease.uav.console/src/main/webapp/uavapp_godeye/notifystgy/js/notifystgy.win.js b/com.creditease.uav.console/src/main/webapp/uavapp_godeye/notifystgy/js/notifystgy.win.js index 194d1e31..f276c892 100644 --- a/com.creditease.uav.console/src/main/webapp/uavapp_godeye/notifystgy/js/notifystgy.win.js +++ b/com.creditease.uav.console/src/main/webapp/uavapp_godeye/notifystgy/js/notifystgy.win.js @@ -533,8 +533,14 @@ function showCon(thisObj,type){ } $("#condType").val(type); typeChangeShow(type); - $("#time_from").val(jsonValue.time_from); - $("#time_to").val(jsonValue.time_to); + + var hour=jsonValue.time_from.split(':')[0]; + var min=jsonValue.time_from.split(':')[1]; + $('#time_start').data('datetimepicker').setLocalDate(new Date(2000, 1, 1, hour, min)); + hour=jsonValue.time_to.split(':')[0]; + min=jsonValue.time_to.split(':')[1]; + $('#time_end').data('datetimepicker').setLocalDate(new Date(2000, 1, 1, hour, min)); + $("#conMetric").val(jsonValue.metric); $("#conUpperLimit").val(jsonValue.upperLimit); $("#conLowerLimit").val(jsonValue.lowerLimit); @@ -617,22 +623,19 @@ function showCondDiv(thisObj,type) { * 同环比预警条件编辑 */ sb.append( '