From b4bb05a836b3fe7bbc0fe6d280ed4de61511ed92 Mon Sep 17 00:00:00 2001 From: denz Date: Wed, 23 Mar 2016 17:41:22 +0900 Subject: [PATCH] add guide message when has wrong application name. --- .../main/webapp/common/help/help-content-en.js | 11 +++++++++-- .../main/webapp/common/help/help-content-ko.js | 10 +++++++++- .../webapp/common/services/tooltip.service.js | 2 +- .../features/agentInfo/agent-info.directive.js | 17 +++++++++++++++-- .../features/agentInfo/agentInfoMain.html | 3 ++- web/src/main/webapp/lib/js/pinpoint.min.js | 14 +++++++------- web/src/main/webapp/lib/js/pinpoint.min.js.map | 2 +- 7 files changed, 44 insertions(+), 15 deletions(-) diff --git a/web/src/main/webapp/common/help/help-content-en.js b/web/src/main/webapp/common/help/help-content-en.js index da8e573ab758..d429a07e34a9 100644 --- a/web/src/main/webapp/common/help/help-content-en.js +++ b/web/src/main/webapp/common/help/help-content-en.js @@ -571,8 +571,15 @@ desc: "All transactions" }] }] - } - }, + }, + wrongApp: [ + "
The agent is currently registered under {{application2}} due to the following:
", + "1. The agent has moved from {{application1}} to {{application2}}
", + "2. A different agent with the same agent id has been registered to {{application2}}
", + "For the former case, you should delete the mapping between {{application1}} and {{agentId}}.
", + "For the latter case, the agent id of the duplicate agent must be changed.
" + ].join("") + }, callTree: { column: { mainStyle: "", diff --git a/web/src/main/webapp/common/help/help-content-ko.js b/web/src/main/webapp/common/help/help-content-ko.js index 82a4eaefd52b..d0b7e2ca7e1e 100644 --- a/web/src/main/webapp/common/help/help-content-ko.js +++ b/web/src/main/webapp/common/help/help-content-ko.js @@ -590,7 +590,15 @@ desc: "모든 트랜잭션" }] }] - } + }, + wrongApp: [ + "
해당 agent는 {{application1}}이 아닌 {{application2}}에 포함되어 있습니다.
", + "원인은 다음 중 하나입니다.
", + "1. 해당 agent가 {{application1}}에서 {{application2}}으로 이동한 경우
", + "2.{{agentId}}의 agent가 {{application2}}에도 등록 된 경우
", + "1의 경우 {{application1}}과 {{agentId}}간의 매핑 저보를 삭제해야 합니다
", + "2의 경우 중복 등록 된 agent의 id를 변경해야 합니다.
" + ].join("") }, callTree: { column: { diff --git a/web/src/main/webapp/common/services/tooltip.service.js b/web/src/main/webapp/common/services/tooltip.service.js index a26d8dcc1830..d511700c09d6 100644 --- a/web/src/main/webapp/common/services/tooltip.service.js +++ b/web/src/main/webapp/common/services/tooltip.service.js @@ -65,7 +65,7 @@ pinpointApp.service('TooltipService', [ 'TooltipServiceConfig', 'helpContentTemplate', 'helpContentService', function ( $config, helpContentTemplate, helpContentService ) { - this.init = function(type) { + this.init = function( type ) { $("." + type + "Tooltip").tooltipster({ content: getTooltipStr( type ), position: $config[type].position, diff --git a/web/src/main/webapp/features/agentInfo/agent-info.directive.js b/web/src/main/webapp/features/agentInfo/agent-info.directive.js index 89322086fb27..ca9a7ca856cc 100644 --- a/web/src/main/webapp/features/agentInfo/agent-info.directive.js +++ b/web/src/main/webapp/features/agentInfo/agent-info.directive.js @@ -11,8 +11,8 @@ agentStatUrl: '/getAgentStat.pinpoint' }); - pinpointApp.directive('agentInfoDirective', [ 'agentInfoConfig', '$timeout', 'AlertsService', 'ProgressBarService', 'AgentDaoService', 'AgentAjaxService', 'TooltipService', "AnalyticsService", - function ( cfg, $timeout, AlertsService, ProgressBarService, AgentDaoService, agentAjaxService, tooltipService, analyticsService ) { + pinpointApp.directive('agentInfoDirective', [ 'agentInfoConfig', '$timeout', 'AlertsService', 'ProgressBarService', 'AgentDaoService', 'AgentAjaxService', 'TooltipService', "AnalyticsService", 'helpContentService', + function ( cfg, $timeout, AlertsService, ProgressBarService, AgentDaoService, agentAjaxService, tooltipService, analyticsService, helpContentService ) { return { restrict: 'EA', replace: true, @@ -228,6 +228,19 @@ scope.$broadcast('tpsChartDirective.showCursorAt.forTps', event.index); } }; + scope.toggleHelp = function() { + $("._wrongApp").popover({ + "title": "" + oNavbarVoService.getApplicationName() + " " + scope.agent.applicationName + "", + "content": helpContentService.inspector.wrongApp + .replace(/\{\{application1\}\}/g, oNavbarVoService.getApplicationName() ) + .replace(/\{\{application2\}\}/g, scope.agent.applicationName ) + .replace(/\{\{agentId\}\}/g, scope.agent.agentId ), + "html": true + }).popover("toggle"); + }; + scope.isSameApplication = function() { + return scope.agent.applicationName === oNavbarVoService.getApplicationName(); + }; scope.formatDate = function( time ) { return moment(time).format('YYYY.MM.DD HH:mm:ss'); diff --git a/web/src/main/webapp/features/agentInfo/agentInfoMain.html b/web/src/main/webapp/features/agentInfo/agentInfoMain.html index 48a27e672188..a46b7625c851 100644 --- a/web/src/main/webapp/features/agentInfo/agentInfoMain.html +++ b/web/src/main/webapp/features/agentInfo/agentInfoMain.html @@ -52,7 +52,8 @@

Information Application Name - {{agent.applicationName}} + {{agent.applicationName}} + {{agent.applicationName}} Agent Version {{agent.agentVersion}} diff --git a/web/src/main/webapp/lib/js/pinpoint.min.js b/web/src/main/webapp/lib/js/pinpoint.min.js index e852b7f9cb70..d902d00aa822 100644 --- a/web/src/main/webapp/lib/js/pinpoint.min.js +++ b/web/src/main/webapp/lib/js/pinpoint.min.js @@ -1,10 +1,10 @@ /*! pinpoint - v1.5.2 - 2016-03-23*/ !function(){"use strict";angular.module("pinpointApp").filter("iconUrl",function(){return function(a){var b="/images/icons/";if(angular.isString(a)){switch(a){case"UNKNOWN_GROUP":b+="UNKNOWN.png";break;default:b+=a+".png"}return b}return""}})}(),function(){"use strict";angular.module("pinpointApp").filter("applicationNameToClassName",function(){return function(a){return a.replace(/[\.\^:]/gi,"_")}})}(),function(){"use strict";pinpointApp.factory("TimeSliderVoService",function(){return function(){this._nFrom=!1,this._nTo=!1,this._nInnerFrom=!1,this._nInnerTo=!1,this._nCount=!1,this._nTotal=!1,this.setFrom=function(a){if(a=parseInt(a,10),!angular.isNumber(a))throw new Error("timeSliderVoService:setFrom, It should be number. "+a);if(angular.isNumber(this._nTo)&&a>=this._nTo)throw"timeSliderVoService:setFrom, It should be smaller than To value.";return this._nFrom=a,this}.bind(this),this.getFrom=function(){return this._nFrom}.bind(this),this.setTo=function(a){if(a=parseInt(a,10),!angular.isNumber(a))throw new Error("timeSliderVoService:setTo It should be number. "+a);if(angular.isNumber(a)&&this._nFrom>=a)throw"timeSliderVoService:setTo, It should be bigger than From value.";return this._nTo=a,this}.bind(this),this.getTo=function(){return this._nTo}.bind(this),this.setInnerFrom=function(a){if(a=parseInt(a,10),!angular.isNumber(a))throw new Error("timeSliderVo:setInnerFrom It should be number. "+a);if(angular.isNumber(this._nInnerTo)&&a>=this._nInnerTo)throw"timeSliderVo:setInnerFrom, It should be smaller than InnerTo value.";return this._nInnerFrom=a,this}.bind(this),this.getInnerFrom=function(){return this._nInnerFrom}.bind(this),this.setInnerTo=function(a){if(a=parseInt(a,10),!angular.isNumber(a))throw new Error("timeSliderVoService:setInnerTo It should be number. "+a);if(angular.isNumber(this._nInnerFrom)&&this._nInnerFrom>=a)throw"timeSliderVoService:setInnerTo, It should be bigger than InnerFrom value.";return this._nInnerTo=a,this}.bind(this),this.getInnerTo=function(){return this._nInnerTo}.bind(this),this.setCount=function(a){if(a=parseInt(a,10),!angular.isNumber(a))throw new Error("timeSliderVoService:setCount It should be number. "+a);if(angular.isNumber(this._nTotal)&&a>this._nTotal)throw"timeSliderVoService:setCount, It should be smaller than Total value.";return this._nCount=a,this}.bind(this),this.addCount=function(a){if(a=parseInt(a,10),!angular.isNumber(a))throw new Error("timeSliderVoService:setCount It should be number. "+a);if(angular.isNumber(this._nTotal)&&a+this._nCount>this._nTotal)throw"timeSliderVoService:setCount, It should be smaller than Total value.";return this._nCount+=a,this}.bind(this),this.getCount=function(){return this._nCount}.bind(this),this.setTotal=function(a){if(a=parseInt(a,10),!angular.isNumber(a))throw new Error("timeSliderVoService:setTotal It should be number. "+a);if(angular.isNumber(this._nCount)&&this._nCount>a)throw"timeSliderVoService:setTotal, It should be bigger than Count value.";return this._nTotal=a,this}.bind(this),this.getTotal=function(){return this._nTotal}.bind(this),this.getReady=function(){return this._nFrom&&this._nTo&&this._nInnerFrom&&this._nInnerTo}.bind(this)}})}(),function(){"use strict";pinpointApp.factory("AlertsService",["$timeout",function(a){return function(b){this.$parent=b||null,this.setParent=function(a){return this.$parent=a,this}.bind(this),this.getParent=function(){return this.$parent}.bind(this),this.showError=function(b){a(function(){this.getElement(".error").show(),"string"==typeof b?this.getElement(".error .msg").text(b):(this.getElement(".error .msg").text(b.message),this.getElement(".error .method").text(b.request.method),this.getElement(".error .header").html(this._transTableFormat(b.request.heads)),this.getElement(".error .parameters").html(this._transTableFormat(b.request.parameters)),this.getElement(".error .url").text(b.request.url),this.getElement(".error .stacktrace").text(b.stacktrace))}.bind(this),300)}.bind(this),this.hideError=function(){a(function(){this.getElement(".error").hide()}.bind(this))}.bind(this),this.showWarning=function(b){a(function(){this.getElement(".warning").show(),this.getElement(".warning .msg").text(b)}.bind(this),300)}.bind(this),this.hideWarning=function(){a(function(){this.getElement(".warning").hide()}.bind(this))}.bind(this),this.showInfo=function(b){a(function(){this.getElement(".info").show(),this.getElement(".info .msg").html(b)}.bind(this),300)}.bind(this),this.hideInfo=function(){a(function(){this.getElement(".info").hide()}.bind(this))}.bind(this),this.getElement=function(a){return this.$parent?$(a,this.$parent):$(a)}.bind(this),this._transTableFormat=function(a){var b=[""];for(var c in a)b.push(""),b.push(""),b.push("");return b.push("
"+c+""+a[c]+"
"),b.join("")}}}])}(),function(){"use strict";pinpointApp.factory("ProgressBarService",["$timeout","$window","$location","UserLocalesService",function(a,b,c,d){var e=["ko","en"],f=5,g="__HIDE_LOADING_TIP";return function(h){this.$parent=h||null,this.nPercentage=0,this.bAutoIncrease=!0,this.nTimePromise=null,this.setParent=function(a){return this.$parent=a,this}.bind(this),this.getParent=function(){return this.$parent}.bind(this),this.startLoading=function(d){var e=!0;if(b.localStorage){var f=b.localStorage.getItem(g)||"-";e="-"===f?!0:!((new Date).valueOf()a?"0"+a:a+""}.bind(this),this._getLocale=function(){return-1==e.indexOf(d.userLocale)?d.defaultLocale:d.userLocale}.bind(this),this.hideBackground=function(){this.$parent&&$(".progress-back",this.$parent).hide()}.bind(this),this.hideTip=function(){this.$parent&&$(".progress-tip",this.$parent).hide()}.bind(this)}}])}(),function(){"use strict";pinpointApp.factory("NavbarVoService",["PreferenceService",function(a){return function(){var b=this;this._sApplication=!1,this._periodType="",this._nPeriod=!1,this._nQueryEndTime=!1,this._sFilter=!1,this._sAgentId=!1,this._nQueryPeriod=!1,this._nQueryStartTime=!1,this._sReadablePeriod=!1,this._sQueryEndDateTime=!1,this._nCalleeRange=a.getCallee(),this._nCallerRange=a.getCaller(),this._sHint=!1,this._sDateTimeFormat="YYYY-MM-DD-HH-mm-ss",this.setApplication=function(a){return angular.isString(a)&&a.indexOf("@")>0&&(b._sApplication=a),b},this.getApplication=function(){return b._sApplication},this.setPeriod=function(a){return angular.isNumber(a)&&a>0&&(b._nPeriod=a),b},this.getPeriod=function(){return b._nPeriod},this.setQueryEndTime=function(a){return angular.isNumber(a)&&a>0&&(b._nQueryEndTime=a),b},this.getQueryEndTime=function(){return b._nQueryEndTime},this.getQueryPeriod=function(){return b._nQueryPeriod},this.getApplicationName=function(){return b._sApplication.split("@")[0]},this.getServiceTypeName=function(){return b._sApplication.split("@")[1]},this.getCalleeRange=function(){return b._nCalleeRange},this.getCallerRange=function(){return b._nCallerRange},this.setCalleeRange=function(a){b._nCalleeRange=a},this.setCallerRange=function(a){b._nCallerRange=a},this.setQueryStartTime=function(a){return angular.isNumber(a)&&a>0&&(b._nQueryStartTime=a),b},this.getQueryStartTime=function(){return b._nQueryStartTime},this.getReady=function(){return b._sApplication&&b._nPeriod&&b._nQueryEndTime},this.setFilter=function(a){return angular.isString(a)&&(b._sFilter=a),b},this.getFilter=function(){return b._sFilter},this.getFilterAsJson=function(){return JSON.parse(b._sFilter)},this.setHint=function(a){return angular.isString(a)&&(b._sHint=a),b},this.getHint=function(){return b._sHint},this.setAgentId=function(a){return angular.isString(a)&&(b._sAgentId=a),b},this.getAgentId=function(){return b._sAgentId},this.setReadablePeriod=function(a){var c=/^(\d)+(s|m|h|d|w|M|y)$/,d=c.exec(a);if(d){b._sReadablePeriod=a;var e=parseInt(a,10);switch(d[2]){case"m":b.setPeriod(60*e);break;case"h":b.setPeriod(60*e*60);break;case"d":b.setPeriod(60*e*60*24);break;case"w":b.setPeriod(60*e*60*24*7);break;case"M":b.setPeriod(60*e*60*24*30);break;case"y":b.setPeriod(60*e*60*24*30*12);break;default:b.setPeriod(e)}}else"realtime"===a&&(b.setPeriodType("realtime"),b._sReadablePeriod="1m",b.setPeriod(300));return b},this.isRealtime=function(){return"realtime"===this._periodType},this.getReadablePeriod=function(){return b._sReadablePeriod},this.setQueryEndDateTime=function(a){var c=/^(19[7-9][0-9]|20\d{2})-(0[0-9]|1[0-2])-(0[1-9]|[1-2][0-9]|3[0-1])-(0[0-9]|1[0-9]|2[0-3])-([0-5][0-9])-([0-5][0-9])$/;return c.test(a)&&(b._sQueryEndDateTime=a,b.setQueryEndTime(b._parseQueryEndDateTimeToTimestamp(a))),b},this.getQueryEndDateTime=function(){return b._sQueryEndDateTime},this._parseQueryEndDateTimeToTimestamp=function(a){return moment(a,b._sDateTimeFormat).valueOf()},this.autoCalculateByQueryEndTimeAndPeriod=function(){return b._nQueryPeriod=1e3*b._nPeriod*60,b._nQueryStartTime=b._nQueryEndTime-b._nQueryPeriod,b},this.autoCalcultateByQueryStartTimeAndQueryEndTime=function(){return b._nQueryPeriod=b._nQueryEndTime-b._nQueryStartTime,b._nPeriod=b._nQueryPeriod/1e3/60,b._sReadablePeriod=b._nQueryPeriod/1e3/60+"m",b._sQueryEndDateTime=moment(b._nQueryEndTime).format(b._sDateTimeFormat),b},this.autoCalculateByQueryEndDateTimeAndReadablePeriod=function(){return b._nQueryPeriod=1e3*b._nPeriod,b._nQueryStartTime=b._nQueryEndTime-b._nQueryPeriod,b},this.getPartialURL=function(a,c){return(a?b.getApplication()+"/":"")+b.getReadablePeriod()+"/"+b.getQueryEndDateTime()+(c&&b.getFilter()?"/"+b.getFilter():"")},this.setPeriodType=function(a){this._periodType=a},this.getPeriodType=function(){return this._periodType}}}])}(),function(){"use strict";pinpointApp.constant("TransactionDaoServiceConfig",{transactionInfoUrl:"/transactionInfo.pinpoint"}),pinpointApp.service("TransactionDaoService",["TransactionDaoServiceConfig","$timeout","$window",function(a,b,c){b(function(){c.transactionData={}}),this.addData=function(a,b,d){c.transactionData[a]=b},this.getDataByName=function(a,b){angular.isFunction(b)&&b(opener.transactionData[a]||{})},this.getTransactionDetail=function(b,c,d){jQuery.ajax({type:"GET",url:a.transactionInfoUrl,cache:!1,dataType:"json",data:{traceId:b,focusTimestamp:c},success:function(a){angular.isFunction(d)&&d(null,a)},error:function(a,b,c){angular.isFunction(d)&&d("ERROR",{})}})}}])}(),function(){"use strict";pinpointApp.factory("locationService",["$location","$route","$rootScope",function(a,b,c){return a.skipReload=function(){var d=b.current,e=c.$on("$locationChangeSuccess",function(){b.current=d,e()});return a},a}])}(),function(){"use strict";pinpointApp.constant("serverMapDaoServiceConfig",{serverMapDataUrl:"/getServerMapData.pinpoint",filteredServerMapDataUrl:"/getFilteredServerMapDataMadeOfDotGroup.pinpoint",filtermapUrl:"/filtermap.pinpoint",lastTransactionListUrl:"/lastTransactionList.pinpoint",transactionListUrl:"/transactionList.pinpoint",FILTER_DELIMETER:"^",FILTER_ENTRY_DELIMETER:"|",FILTER_FETCH_LIMIT:5e3}),pinpointApp.service("ServerMapDaoService",["serverMapDaoServiceConfig","PreferenceService",function(a,b){var c=this;this.getServerMapData=function(b,c){var d={applicationName:b.applicationName,from:b.from,to:b.to,callerRange:b.callerRange,calleeRange:b.calleeRange};isNaN(parseInt(b.serviceTypeName))?d.serviceTypeName=b.serviceTypeName:d.serviceTypeCode=b.serviceTypeName,jQuery.ajax({type:"GET",url:a.serverMapDataUrl,cache:!1,dataType:"json",data:d,success:function(a){angular.isFunction(c)&&c(null,b,a)},error:function(a,d,e){angular.isFunction(c)&&c(e,b,{})}})},this.getFilteredServerMapData=function(b,c){var d={applicationName:b.applicationName,from:b.from,to:b.to,originTo:b.originTo,filter:b.filter,limit:a.FILTER_FETCH_LIMIT,callerRange:b.callerRange,calleeRange:b.calleeRange,v:3,xGroupUnit:987,yGroupUnit:57};isNaN(parseInt(b.serviceTypeName))?d.serviceTypeName=b.serviceTypeName:d.serviceTypeCode=b.serviceTypeName,b.hint&&(d.hint=b.hint),jQuery.ajax({type:"GET",url:a.filteredServerMapDataUrl,cache:!1,dataType:"json",data:d,success:function(a){angular.isFunction(c)&&c(null,b,a)},error:function(a,d,e){angular.isFunction(c)&&c(e,b,{})}})},this.mergeFilteredMapData=function(a,b){return 0===a.linkDataArray.length&&0===a.nodeDataArray.length?(a.linkDataArray=b.linkDataArray,a.nodeDataArray=b.nodeDataArray):(angular.forEach(b.nodeDataArray,function(b,c){var d=this.findExistingNodeKeyFromLastMapData(a,b);d>=0?a=this.mergeNodeData(a,d,b):a.nodeDataArray.push(b)},this),angular.forEach(b.linkDataArray,function(b,c){var d=this.findExistingLinkFromLastMapData(a,b);d>=0?a=this.mergeLinkData(a,d,b):a.linkDataArray.push(b)},this)),a},this.findExistingNodeKeyFromLastMapData=function(a,b){for(var c in a.nodeDataArray)if(a.nodeDataArray[c].applicationName===b.applicationName&&a.nodeDataArray[c].serviceTypeCode===b.serviceTypeCode)return c;return-1},this.findExistingLinkFromLastMapData=function(a,b){for(var c in a.linkDataArray)if(a.linkDataArray[c].from===b.from&&a.linkDataArray[c].to===b.to)return c;return-1},this.addFilterProperty=function(a,b){var c=this.parseFilterText(a,b);return angular.forEach(b.nodeDataArray,function(a){angular.isDefined(_.findWhere(c,{nodeKey:a.key}))?a.isFiltered=!0:a.isFiltered=!1}),angular.forEach(b.linkDataArray,function(a,b){angular.isDefined(_.findWhere(c,{fromKey:a.from,toKey:a.to}))?a.isFiltered=!0:a.isFiltered=!1},this),b},this.parseFilterText=function(a,b){var c=[];return angular.forEach(a,function(a){c.push({fromServiceType:a.fst,fromApplication:a.fa,fromKey:this.findNodeKeyByApplicationName(a.fa,b),toServiceType:a.tst,toApplication:a.ta,toKey:this.findNodeKeyByApplicationName(a.ta,b),nodeKey:""})},this),c},this.findNodeKeyByApplicationName=function(a,b){var c=_.findWhere(b.nodeDataArray,{applicationName:a});return angular.isDefined(c)?c.key:!1},this.mergeNodeData=function(a,b,c){if(angular.isUndefined(a.nodeDataArray[b]))return a.nodeDataArray[b]=c,a;var d,e,f=a.nodeDataArray[b];if(f.errorCount+=c.errorCount,f.slowCount+=c.slowCount,f.totalCount+=c.totalCount,c.hasAlert&&(f.hasAlert=c.hasAlert),angular.isDefined(c.histogram))if(angular.isDefined(f.histogram))for(d in c.histogram)angular.isDefined(f.histogram[d])?f.histogram[d]+=c.histogram[d]:f.histogram[d]=c.histogram[d];else f.histogram=c.histogram;if(angular.isDefined(c.agentHistogram))for(d in c.agentHistogram)if(angular.isDefined(f.agentHistogram[d]))for(e in c.agentHistogram[d])angular.isDefined(f.agentHistogram[d][e])?f.agentHistogram[d][e]+=c.agentHistogram[d][e]:f.agentHistogram[d][e]=c.agentHistogram[d][e];else f.agentHistogram[d]=c.agentHistogram[d];if(angular.isDefined(c.timeSeriesHistogram))for(d in c.timeSeriesHistogram)if(angular.isDefined(f.timeSeriesHistogram)){var g=[];a:for(e in c.timeSeriesHistogram[d].values){for(var h in f.timeSeriesHistogram[d].values)if(f.timeSeriesHistogram[d].values[h][0]===c.timeSeriesHistogram[d].values[e][0]){f.timeSeriesHistogram[d].values[h][1]+=c.timeSeriesHistogram[d].values[e][1];continue a}g.push(c.timeSeriesHistogram[d].values[e])}f.timeSeriesHistogram[d].values=g.concat(f.timeSeriesHistogram[d].values)}else f.timeSeriesHistogram=c.timeSeriesHistogram;if(angular.isDefined(c.agentTimeSeriesHistogram))for(d in c.agentTimeSeriesHistogram)if(angular.isDefined(f.agentTimeSeriesHistogram))if(angular.isDefined(f.agentTimeSeriesHistogram[d]))for(e in c.agentTimeSeriesHistogram[d])angular.isDefined(f.agentTimeSeriesHistogram[d][e])?f.agentTimeSeriesHistogram[d][e].values=c.agentTimeSeriesHistogram[d][e].values.concat(f.agentTimeSeriesHistogram[d][e].values):f.agentTimeSeriesHistogram[d][e]=c.agentTimeSeriesHistogram[d][e];else f.agentTimeSeriesHistogram[d]=c.agentTimeSeriesHistogram[d];else f.agentTimeSeriesHistogram=c.agentTimeSeriesHistogram;if(angular.isDefined(c.serverList))for(d in c.serverList)if(f.serverList[d])for(e in c.serverList[d].instanceList)if(f.serverList[d].instanceList[e])for(var i in c.serverList[d].instanceList[e].histogram)f.serverList[d].instanceList[e].histogram[i]?f.serverList[d].instanceList[e].histogram[i]+=c.serverList[d].instanceList[e].histogram[i]:f.serverList[d].instanceList[e].histogram[i]=c.serverList[d].instanceList[e].histogram[i];else f.serverList[d].instanceList[e]=c.serverList[d].instanceList[e];else f.serverList[d]=c.serverList[d];return a},this.mergeLinkData=function(a,b,c){if(angular.isUndefined(a.linkDataArray[b]))return a.linkDataArray[b]=c,a;var d,e,f=a.linkDataArray[b];if(f.errorCount+=c.errorCount,f.slowCount+=c.slowCount,f.totalCount+=c.totalCount,c.hasAlert&&(f.hasAlert=c.hasAlert),angular.isDefined(c.histogram))for(d in c.histogram)f.histogram[d]?f.histogram[d]+=c.histogram[d]:f.histogram[d]=c.histogram[d];if(angular.isDefined(c.timeSeriesHistogram))for(d in c.timeSeriesHistogram)if(angular.isDefined(f.timeSeriesHistogram)){var g=[];a:for(e in c.timeSeriesHistogram[d].values){for(var h in f.timeSeriesHistogram[d].values)if(f.timeSeriesHistogram[d].values[h][0]===c.timeSeriesHistogram[d].values[e][0]){f.timeSeriesHistogram[d].values[h][1]+=c.timeSeriesHistogram[d].values[e][1];continue a}g.push(c.timeSeriesHistogram[d].values[e])}f.timeSeriesHistogram[d].values=g.concat(f.timeSeriesHistogram[d].values)}else f.timeSeriesHistogram=c.timeSeriesHistogram;if(angular.isDefined(c.sourceHistogram))for(d in c.sourceHistogram)if(angular.isDefined(f.sourceHistogram[d]))for(e in c.sourceHistogram[d])f.sourceHistogram[d][e]?f.sourceHistogram[d][e]+=c.sourceHistogram[d][e]:f.sourceHistogram[d][e]=c.sourceHistogram[d][e];else f.sourceHistogram[d]=c.sourceHistogram[d];if(angular.isDefined(c.targetHistogram))for(d in c.targetHistogram)if(angular.isDefined(f.targetHistogram[d]))for(e in c.targetHistogram[d])f.targetHistogram[d][e]?f.targetHistogram[d][e]+=c.targetHistogram[d][e]:f.targetHistogram[d][e]=c.targetHistogram[d][e];else f.targetHistogram[d]=c.targetHistogram[d];return a},this.mergeTimeSeriesResponses=function(a,b){return angular.forEach(b.values,function(b,c){angular.isUndefined(a.timeSeriesResponses.values[c])?a.timeSeriesResponses.values[c]=b:a.timeSeriesResponses.values[c]=_.union(b,a.timeSeriesResponses.values[c])},this),a.timeSeriesResponses.time=_.union(b.time,a.timeSeriesResponses.time),a},this.mergeGroup=function(a,b){var c=this,d=a.nodeDataArray,e=a.linkDataArray,f=c._getInboundCountMap(d,e);return b.forEach(function(a){var b=a+"_GROUP",g=[],h=[],i={},j={};d.forEach(function(k,l){var m,n,o=b+"_"+k.key,p=0;e.forEach(function(b,c){b.from==k.key&&b.targetInfo.serviceType==a&&f[b.to]&&1==f[b.to].toCount&&p++}),2>p||(e.forEach(function(e,g){e.targetInfo.serviceType==a&&(f[e.to]&&f[e.to].toCount>1||e.from==k.key&&(m||(m=c._createNewNode(o,b)),n||(n=c._createNewLink(k.key,o)),c._addToSubNode(m,c._getNodeByApplicationName(d,e.targetInfo.applicationName,a),function(){}),c._mergeLinkData(n,e),n.unknownLinkGroup.push(e),i[e.to]=null,j[e.key]=null))}),m&&(m.unknownNodeGroup.sort(function(a,b){return b.totalCount-a.totalCount}),g.push(m)),n&&(n.unknownLinkGroup.sort(function(a,b){return b.totalCount-a.totalCount}),h.push(n)))}),c._addToOriginal(d,g),c._addToOriginal(e,h),c._removeByKey(d,i),c._removeByKey(e,j)}),a},this._addToOriginal=function(a,b){b.forEach(function(b){a.push(b)})},this._getInboundCountMap=function(a,b){var c={};return a.forEach(function(a){var d={toCount:0,fromCount:0,totalCallCount:0};b.forEach(function(b){b.to===a.key&&(d.toCount++,d.totalCallCount+=b.totalCount),b.from===a.key&&d.fromCount++}),c[a.key]=d}),c},this._selectMergeTarget=function(a,b){var c=[];return a.forEach(function(a,d){b[a.key].fromCount>0||b[a.key].toCount<2||c.push(a)}),c},this._getFromNodes=function(a,b){var c=[];return a.forEach(function(a){a.to===b&&c.push(a.from)}),c},this.mergeMultiLinkGroup=function(a,b){var c=this,d=a.nodeDataArray,e=a.linkDataArray,f=this._getInboundCountMap(d,e),g=this._selectMergeTarget(d,f),h={},i=[],j=[],k={},l={};return g.forEach(function(a,d){if(h[a.key]!==!0||-1!=b.indexOf(a.serviceType)){h[a.key]=!0;var f=a.serviceType+"_GROUP",m=null,n=null,o=f+"_"+a.key,p=c._getFromNodes(e,a.key);g.forEach(function(d,g){if(h[d.key]!==!0&&a.serviceType===d.serviceType&&-1!=b.indexOf(d.serviceType)){var i=c._getFromNodes(e,d.key);if(p.length===i.length){var j=0;for(j=0;j=c?1:d},this.parseMemoryChartDataForAmcharts=function(a,b){var c=[],d=b.charts.JVM_GC_OLD_TIME.points,e=b.charts.JVM_GC_OLD_COUNT.points;if(d.length!==e.length)throw new Error("assertion error","time.length != count.length");for(var f,g,h,i,j=0;j0&&Math.abs(p)>0,r=0>o&&0>p;q&&(r?(m=g,n=f):(m=g-i,n=f-h),i=g,h=f)}else h=f,i=g;m>0&&n>0&&(k[a.line[l].key+"Count"]=m,k[a.line[l].key+"Time"]=n)}else{var s=b.charts[a.line[l].id].points[j].maxVal;s>=0&&(k[a.line[l].key]=s)}c.push(k)}return c},this.parseCpuLoadChartDataForAmcharts=function(a,b){var c=b.charts.CPU_LOAD_JVM,d=b.charts.CPU_LOAD_SYSTEM;if(c||d){a.isAvailable=!0;var e=[],f=c.points,g=d.points;if(f.length!==g.length)throw new Error("assertion error","jvmCpuLoad.length != systemCpuLoad.length");for(var h=0;h=0&&(i.jvmCpuLoad=j),k>=0&&(i.systemCpuLoad=k),e.push(i)}return e}},this.parseTpsChartDataForAmcharts=function(a,b){var c=b.charts.TPS_SAMPLED_CONTINUATION.points,d=b.charts.TPS_SAMPLED_NEW.points,e=b.charts.TPS_UNSAMPLED_CONTINUATION.points,f=b.charts.TPS_UNSAMPLED_NEW.points,g=b.charts.TPS_TOTAL.points,h=g.length;if(h>0){a.isAvailable=!0;for(var i=[],j=-1,k=0;h>k;k++){var l={time:moment(c[k].timestamp).toString("YYYY-MM-dd HH:mm:ss")},m="number"==typeof c[k].avgVal?c[k].avgVal.toFixed(2):0,n="number"==typeof d[k].avgVal?d[k].avgVal.toFixed(2):0,o="number"==typeof e[k].avgVal?e[k].avgVal.toFixed(2):0,p="number"==typeof f[k].avgVal?f[k].avgVal.toFixed(2):0,q="number"==typeof g[k].avgVal?g[k].avgVal.toFixed(2):0;m!=j&&(l.sampledContinuationTps=m),n!=j&&(l.sampledNewTps=n),o!=j&&(l.unsampledContinuationTps=o),p!=j&&(l.unsampledNewTps=p),q!=j&&(l.totalTps=q),i.push(l)}return i}}}])}(),function(){"use strict";pinpointApp.factory("SidebarTitleVoService",[function(){return function(){var a=this;this._sImage=!1,this._sImageType=!1,this._sTitle=!1,this._sImage2=!1,this._sImageType2=!1,this._sTitle2=!1,this.setImageType=function(b){if(!angular.isString(b))throw"ImageType should be string in SidebarTitleVo";return a._sImageType=b,a._sImage=a._parseImageTypeToImageUrl(b),a},this._parseImageTypeToImageUrl=function(a){if(angular.isString(a)){var b="/images/icons/";switch(a){case"UNKNOWN_GROUP":b+="UNKNOWN.png";break;default:b+=a+".png"}return b}throw"ImageType should be string in SidebarTitleVo"},this.getImageType=function(){return a._sImageType},this.getImage=function(){return a._sImage},this.setTitle=function(b){if(!angular.isString(b))throw"Title should be string in SidebarTitleVo";return a._sTitle=b,a},this.getTitle=function(){return a._sTitle},this.setImageType2=function(b){if(!angular.isString(b))throw"ImageType2 should be string in SidebarTitleVo";return a._sImageType2=b,a._sImage2=a._parseImageTypeToImageUrl(b),a},this.getImageType2=function(){return a._sImageType2},this.getImage2=function(){return a._sImage2},this.setTitle2=function(b){if(!angular.isString(b))throw"Title2 should be string in SidebarTitleVo";return a._sTitle2=b,a},this.getTitle2=function(){return a._sTitle2}}}])}(),function(){"use strict";pinpointApp.factory("filteredMapUtilService",["filterConfig","ServerMapFilterVoService","$window",function(a,b,c){return{mergeFilters:function(a,b){var c=[];if(a.getFilter()){var d=JSON.parse(a.getFilter());if(angular.isArray(d)){c=d;var e=this.findFilterInNavbarVo(b.getFromApplication(),b.getFromServiceType(),b.getToApplication(),b.getToServiceType(),a);if(e)return c[e.index]=b.toJson(),c}}return c.push(b.toJson()),c},mergeHints:function(a,b){var c={},d=this.parseShortHintToLongHint(JSON.parse(a.getHint())),e=b.getHint();if(d)if(e){var f=_.keys(e)[0],g=e[f];c=angular.copy(d),angular.isDefined(c[f])?(c[f]=_.union(c[f],g),c[f]=this.uniqueHintValue(c[f])):c[f]=g}else c=d;else c=b.getHint();return c},uniqueHintValue:function(a){for(var b=0;b0&&(d=parseInt(b[c-1].label,10)),d},getFilteredMapUrlWithFilterVo:function(a,b,d){var e=this.mergeFilters(a,b),f=b.getMainApplication()+"@"+b.getMainServiceTypeName(),g="#/filteredMap/"+f+"/"+a.getReadablePeriod()+"/"+a.getQueryEndDateTime()+"/"+c.encodeURIComponent(JSON.stringify(e));if(a.getHint()||d.getHint()){var h=this.mergeHints(a,d),i=this.parseLongHintToShortHint(h);g+="/"+c.encodeURIComponent(JSON.stringify(i))}return g},findFilterInNavbarVo:function(a,b,c,d,e){var f=JSON.parse(e.getFilter()),g=!1;return"USER"===b&&(a="USER"),angular.isArray(f)&&angular.forEach(f,function(e,f){var h=new ServerMapFilterVo(e);a===h.getFromApplication()&&c===h.getToApplication()&&b===h.getFromServiceType()&&d===h.getToServiceType()&&(g={oServerMapFilterVoService:h,index:f})}),g},doFiltersHaveUnknownNode:function(a){for(var b in a)if("UNKNOWN"===a[b].tst)return!0;return!1}}}])}(),function(){"use strict";pinpointApp.constant("filterConfig",{FILTER_DELIMETER:"^",FILTER_ENTRY_DELIMETER:"|"})}(),function(){"use strict";pinpointApp.factory("ServerMapFilterVoService",[function(){return function(a){var b=this;this._sMainApplication=null,this._nMainServiceTypeCode=null,this._sMainServiceTypeName=null,this._sFromApplication=null,this._sFromServiceType=null,this._sFromAgentName=null,this._sToApplication=null,this._sToServiceType=null,this._sToAgentName=null,this._sResponseFrom=0,this._sResponseTo="max",this._bIncludeException=null,this._sRequestUrlPattern="", -this.setMainApplication=function(a){if(!angular.isString(a))throw new Error("mainApplication should be string in ServerMapFilterVo. : ",a);return b._sMainApplication=a,b},this.getMainApplication=function(){return b._sMainApplication},this.setMainServiceTypeCode=function(a){if(!angular.isNumber(a))throw new Error("mainServiceTypeCode should be number in ServerMapFilterVo. : ",a);return b._nMainServiceTypeCode=a,b},this.setMainServiceTypeName=function(a){if(!angular.isString(a))throw new Error("mainServiceTypeName should be string in ServerMapFilterVo. : ",a);return b._sMainServiceTypeName=a,b},this.getMainServiceTypeCode=function(){return b._nMainServiceTypeCode},this.getMainServiceTypeName=function(){return b._sMainServiceTypeName},this.setFromApplication=function(a){if(!angular.isString(a))throw new Error("fromApplication should be string in ServerMapFilterVo. : ",a);return b._sFromApplication=a,b},this.getFromApplication=function(){return b._sFromApplication},this.setFromServiceType=function(a){if(!angular.isString(a))throw new Error("fromServiceType should be string in ServerMapFilterVo. : ",a);return b._sFromServiceType=a,b},this.getFromServiceType=function(){return b._sFromServiceType},this.setFromAgentName=function(a){if(!angular.isString(a))throw new Error("fromAgentName should be string in ServerMapFilterVo. : ",a);return b._sFromAgentName=a,b},this.getFromAgentName=function(){return b._sFromAgentName},this.setToApplication=function(a){if(!angular.isString(a))throw new Error("toApplication should be string in ServerMapFilterVo. : ",a);return b._sToApplication=a,b},this.getToApplication=function(){return b._sToApplication},this.setToServiceType=function(a){if(!angular.isString(a))throw new Error("toServiceType should be string in ServerMapFilterVo. : ",a);return b._sToServiceType=a,b},this.getToServiceType=function(){return b._sToServiceType},this.setToAgentName=function(a){if(!angular.isString(a))throw new Error("toAgentName should be string in ServerMapFilterVo. : ",a);return b._sToAgentName=a,b},this.getToAgentName=function(){return b._sToAgentName},this.setResponseFrom=function(a){if(angular.isString(a))b._sResponseFrom=parseInt(a,10);else{if(!angular.isNumber(a))throw new Error("responseFrom should be string in ServerMapFilterVo. : ",a);b._sResponseFrom=a}return b},this.getResponseFrom=function(){return b._sResponseFrom},this.setResponseTo=function(a){if("max"===a)b._sResponseTo="max";else{if(!angular.isNumber(a)&&!angular.isString(a))throw new Error("responseTo should be string in ServerMapFilterVo.");a=parseInt(a,10),a>=3e4?b._sResponseTo="max":b._sResponseTo=a}return b},this.getResponseTo=function(){return b._sResponseTo},this.setIncludeException=function(a){if(!angular.isDefined(a))throw new Error("includeException should be defined in ServerMapFilterVo.");return b._bIncludeException=a,b},this.getIncludeException=function(){return b._bIncludeException},this.setRequestUrlPattern=function(a){return angular.isString(a)&&(b._sRequestUrlPattern=a),b},this.getRequestUrlPattern=function(){return b._sRequestUrlPattern},this.toJson=function(){var a={fa:b._sFromApplication,fst:b._sFromServiceType,ta:b._sToApplication,tst:b._sToServiceType,ie:b._bIncludeException};return 0===b._sResponseFrom&&"max"===b._sResponseTo||(a.rf=b._sResponseFrom,a.rt=b._sResponseTo),b._sRequestUrlPattern&&(a.url=b._sRequestUrlPattern),b._sFromAgentName&&(a.fan=b._sFromAgentName),b._sToAgentName&&(a.tan=b._sToAgentName),a},a&&angular.isObject(a)&&(this.setFromApplication(a.fa).setFromServiceType(a.fst).setToApplication(a.ta).setToServiceType(a.tst).setIncludeException(a.ie),angular.isNumber(a.rf)&&a.rt&&this.setResponseFrom(a.rf).setResponseTo(a.rt),a.url&&this.setRequestUrlPattern(a.url),a.fan&&this.setFromAgentName(a.fan),a.tan&&this.setToAgentName(a.tan))}}])}(),function(a){"use strict";pinpointApp.constant("AlarmAjaxServiceConfig",{group:"/userGroup.pinpoint",groupMember:"/userGroup/member.pinpoint",pinpointUser:"/user.pinpoint",alarmRule:"/alarmRule.pinpoint",alarmRuleSet:"/alarmRule/checker.pinpoint"}),pinpointApp.service("AlarmAjaxService",["AlarmAjaxServiceConfig","$http",function(b,c){function d(a,b,d){c.post(a,b).then(function(a){d(a.data)},function(a){d(a)})}function e(a,b,d){c.put(a,b).then(function(a){d(a.data)},function(a){d(a)})}function f(b,c,d){a.ajax(b,{type:"DELETE",data:JSON.stringify(c),contentType:"application/json"}).done(function(a){d(a)}).fail(function(a){d(a)})}function g(a,b,d){var e="?";for(var f in b)e+=("?"==e?"":"&")+f+"="+b[f];c.get(a+e).then(function(a){d(a.data)},function(a){d(a)})}this.getUserGroupList=function(a,c){g(b.group,a,c)},this.createUserGroup=function(a,c){d(b.group,a,c)},this.updateUserGroup=function(a,c){e(b.group,a,c)},this.removeUserGroup=function(a,c){f(b.group,a,c)},this.addMemberInGroup=function(a,c){d(b.groupMember,a,c)},this.getGroupMemberListInGroup=function(a,c){g(b.groupMember,a,c)},this.removeMemberInGroup=function(a,c){f(b.groupMember,a,c)},this.getPinpointUserList=function(a,c){g(b.pinpointUser,a,c)},this.createPinpointUser=function(a,c){d(b.pinpointUser,a,c)},this.updatePinpointUser=function(a,c){e(b.pinpointUser,a,c)},this.removePinpointUser=function(a,c){f(b.pinpointUser,a,c)},this.getRuleList=function(a,c){g(b.alarmRule,a,c)},this.createRule=function(a,c){d(b.alarmRule,a,c)},this.updateRule=function(a,c){e(b.alarmRule,a,c)},this.removeRule=function(a,c){f(b.alarmRule,a,c)},this.getRuleSet=function(a,c){g(b.alarmRuleSet,a,c)}}])}(jQuery),function(a){"use strict";pinpointApp.constant("AlarmUtilServiceConfig",{hideClass:"hide-me",hasNotEditClass:"has-not-edit"}),pinpointApp.service("AlarmUtilService",["AlarmUtilServiceConfig","AlarmAjaxService",function(a,b){var c=this;this.show=function(b){b.removeClass(a.hideClass)},this.hide=function(){for(var b=0;b0&&(e-=1,i+m>l.offsetWidth+l.scrollLeft||i+j-ml.offsetHeight+l.scrollTop||f+k-m=2?c.substring(0,2):b,{userLocale:c,defaultLocale:b}}])}(),function(){"use strict";var a={configuration:{general:{warning:"(User configuration is stored in browser cache. Server-side storage will be supported in a future release.)",empty:"Favorite list empty"},alarmRules:{mainStyle:"",title:"Alarm Rule Type",desc:"The following types of alarm rules are supported by Pinpoint.",category:[{title:"[Type]",items:[{name:"SLOW COUNT",desc:"Sends an alarm when the number of slow requests sent by the application exceeds the configured threshold."},{name:"SLOW RATE",desc:"Sends an alarm when the percentage(%) of slow requests sent by the application exceeds the configured threshold."},{name:"ERROR COUNT",desc:"Sends an alarm when the number of failed requests sent by the application exceeds the configured threshold."},{name:"ERROR RATE",desc:"Sends an alarm when the percentage(%) of failed requests sent by the application exceeds the configured threshold."},{name:"TOTAL COUNT",desc:"Sends an alarm when the number of all requests sent by the application exceeds the configured threshold."},{name:"SLOW COUNT TO CALLEE",desc:"Sends an alarm when the number of slow responses returned by the application exceeds the configured threshold."},{name:"SLOW RATE TO CALLEE",desc:"Sends an alarm when the percentage(%) of slow responses returned by the application exceeds the configured threshold."},{name:"ERROR COUNT TO CALLEE",desc:"Sends an alarm when the number of failed responses returned by the application exceeds the configured threshold."},{name:"ERROR RATE TO CALLEE",desc:"Sends an alarm when the percentage(%) of failed responses returned by the application exceeds the configured threshold."},{name:"TOTAL COUNT TO CALLEE",desc:"Sends an alarm when the number of all remote calls sent to the application exceeds the configured threshold."},{name:"HEAP USAGE RATE",desc:"Sends an alarm when the application's heap usage(%) exceeds the configured threshold."},{name:"JVM CPU USAGE RATE",desc:"Sends an alarm when the application's CPU usage(%) exceeds the configured threshold."}]}]}},navbar:{searchPeriod:{guide:"Search duration may not be greater than {{day}} days."},applicationSelector:{mainStyle:"",title:"Application List",desc:"Shows the list of applications with Pinpoint installed.",category:[{title:"[Legend]",items:[{name:"Icon",desc:"Application Type"},{name:"Text",desc:"Application Name. The value set using -Dpinpoint.applicationName when launching Pinpoint agent."}]}]},depth:{mainStyle:"",title:' Inbound 와 Outbound',desc:"Search-depth of server map.",category:[{title:"[범례]",items:[{name:"Inbound",desc:"Number of depth to render for requests coming in to the selected node."},{name:"Outbound",desc:"Number of depth to render for requests going out from the selected node"}]}]},periodSelector:{mainStyle:"",title:"Period Selector",desc:"Selects the time period for querying data.",category:[{title:"[Usage]",items:[{name:"",desc:"Query for data traced during the most recent selected time-period.
Auto-refresh is supported for 5m, 10m, 3h time-period."},{name:"",desc:"Query for data traced between the two selected times for a maximum of 48 hours."}]}]}},servermap:{"default":{mainStyle:"width:560px;",title:"Server Map",desc:"Displays a topological view of the distributed server map.",category:[{title:"[Node]",list:["Each node is a logical unit of application.","The value on the top-right corner represents the number of server instances assigned to that application. (Not shown when there is only one such instance)","An alarm icon is displayed on the top-left corner if an error/exception is detected in one of the server instances.","Clicking a node shows information on all incoming transactions on the right-hand side of the screen."]},{title:"[Arrow]",list:["Each arrow represents a transaction flow.","The number shows the transaction count and is displayed in red for transactions with error."," is shown when a filter is applied.","Clicking an arrow shows information on all transactions passing through the selected section on the right-hand side of the screen."]},{title:"[Applying Filter]",list:["Right-clicking on an arrow displays a filter menu.","'Filter' filters the server map to only show transactions that has passed through the selected section.","'Filter Wizard' allows additional filter configurations."]},{title:"[Chart Configuration]",list:["Right-clicking on an empty area displays a chart configuration menu.","Node Setting / Merge Unknown : Groups all agent-less applications into a single node.","Double-clicking on an empty resets the zoom level of the server map."]}]}},realtime:{"default":{mainStyle:"",title:"Realtime Active Thread Chart",desc:"Shows the Active Thread count of each agent in realtime.",category:[{title:"[Error Messages]",items:[{name:"UNSUPPORTED VERSION",desc:"Agent version too old. (Please upgrade the agent to 1.5.0+)",nameStyle:"width:120px;border-bottom:1px solid gray",descStyle:"border-bottom:1px solid gray"},{name:"CLUSTER OPTION NOTSET",desc:"Option disabled by agent. (Please set profiler.pinpoint.activethread to true in profiler.config)",nameStyle:"width:120px;border-bottom:1px solid gray",descStyle:"border-bottom:1px solid gray"},{name:"TIMEOUT",desc:"Agent connection timed out receiving active thread count. Please contact the administrator if problem persists.",nameStyle:"width:120px;border-bottom:1px solid gray",descStyle:"border-bottom:1px solid gray"},{name:"NOT FOUND",desc:"Agent not found. (If you get this message while the agent is running, please set profiler.tcpdatasender.command.accept.enable to true in profiler.config)",nameStyle:"width:120px;border-bottom:1px solid gray",descStyle:"border-bottom:1px solid gray"},{name:"CLUSTER CHANNEL CLOSED",desc:"Agent session expired.",nameStyle:"width:120px;border-bottom:1px solid gray",descStyle:"border-bottom:1px solid gray"},{name:"PINPOINT INTERNAL ERROR",desc:"Pinpoint internal error. Please contact the administrator.",nameStyle:"width:120px;border-bottom:1px solid gray",descStyle:"border-bottom:1px solid gray"},{name:"No Active Thread",desc:"The agent has no threads that are currently active.",nameStyle:"width:120px;border-bottom:1px solid gray",descStyle:"border-bottom:1px solid gray"},{name:"No Response",desc:"No response from Pinpoint Web. Please contact the administrator.",nameStyle:"width:120px;border-bottom:1px solid gray",descStyle:"border-bottom:1px solid gray"}]}]}},scatter:{"default":{mainStyle:"",title:"Response Time Scatter Chart",desc:"",category:[{title:"[Legend]",items:[{name:"",desc:"Successful Transaction"},{name:"",desc:"Failed Transaction"},{name:"X-axis",desc:"Transaction Timestamp (hh:mm)"},{name:"Y-axis",desc:"Response Time (ms)"}]},{title:"[Usage]",image:"",items:[{name:"",desc:"Drag on the scatter chart to show detailed information on selected transactions."},{name:"",desc:"Set the min/max value of the Y-axis (Response Time)."},{name:"",desc:"Download the chart as an image file."},{name:"",desc:"Open the chart in a new window."}]}]}},nodeInfoDetails:{responseSummary:{mainStyle:"",title:"Response Summary Chart",desc:"",category:[{title:"[Legend]",items:[{name:"X-Axis",desc:"Response Time"},{name:"Y-Axis",desc:"Transaction Count"},{name:"1s
",desc:"No. of Successful transactions (less than 1 second)"},{name:"3s",desc:"No. of Successful transactions (1 ~ 3 seconds)"},{name:"5s",desc:"No. of Successful transactions (3 ~ 5 seconds)"},{name:"Slow",desc:"No. of Successful transactions (greater than 5 seconds)"},{name:"Error",desc:"No. of Failed transactions regardless of response time"}]}]},load:{mainStyle:"",title:"Load Chart",desc:"",category:[{title:"[Legend]",items:[{name:"X-Axis",desc:"Transaction Timestamp (in minutes)"},{name:"Y-Axis",desc:"Transaction Count"},{name:"1s",desc:"No. of Successful transactions (less than 1 second)"},{name:"3s",desc:"No. of Successful transactions (1 ~ 3 seconds)"},{name:"5s",desc:"No. of Successful transactions (3 ~ 5 seconds)"},{name:"Slow",desc:"No. of Successful transactions (greater than 5 seconds)"},{name:"Error",desc:"No. of Failed transactions regardless of response time"}]},{title:"[Usage]",list:["Clicking on a legend item shows/hides all transactions within the selected group.","Dragging on the chart zooms in to the dragged area."]}]},nodeServers:{mainStyle:"width:400px;",title:"Server Information",desc:"List of physical servers and their server instances.",category:[{title:"[Legend]",items:[{name:"",desc:"Hostname of the physical server"},{name:"",desc:"AgentId of the Pinpoint agent installed on the server instance running on the physical server"}]},{title:"[Usage]",items:[{name:"",desc:"Open a new window with detailed information on the WAS with Pinpoint installed."},{name:"",desc:"Display statistics on transactions carried out by the server instance."},{name:"",desc:"Display statistics on transactions (with error) carried out by the server instance."}]}]},unknownList:{mainStyle:"",title:"UnknownList",desc:"From the chart's top-right icon",category:[{title:"[Usage]",items:[{name:"1st",desc:"Toggle between Response Summary Chart / Load Chart"},{name:"2nd",desc:"Show Node Details"}]}]},searchAndOrder:{mainStyle:"",title:"Search and Fliter",desc:"Filter by server name or total count.Clicking Name or Count sorts the list in ascending/descending order."}},linkInfoDetails:{responseSummary:{mainStyle:"",title:"Response Summary Chart",desc:"",category:[{title:"[Legend]",items:[{name:"X-Axis",desc:"Response Time"},{name:"Y-Axis",desc:"Transaction Count"},{name:"1s",desc:"No. of Successful transactions (less than 1 second)"},{name:"3s",desc:"No. of Successful transactions (1 ~ 3 seconds)"},{name:"5s",desc:"No. of Successful transactions (3 ~ 5 seconds)"},{name:"Slow",desc:"No. of Successful transactions (greater than 5 seconds)"},{name:"Error",desc:"No. of Failed transactions regardless of response time"}]},{title:"[Usage]",list:["Click on the bar to query for transactions within the selected response time."]}]},load:{mainStyle:"",title:"Load Chart",desc:"",category:[{title:"[Legend]",items:[{name:"X-Axis",desc:"Transaction Timestamp (in minutes)"},{name:"Y-Axis",desc:"Transaction Count"},{name:"1s",desc:"No. of Successful transactions (less than 1 second)"},{name:"3s",desc:"No. of Successful transactions (1 ~ 3 seconds)"},{name:"5s",desc:"No. of Successful transactions (3 ~ 5 seconds)"},{name:"Slow",desc:"No. of Successful transactions (greater than 5 seconds)"},{name:"Error",desc:"No. of Failed transactions regardless of response time"}]},{title:"[Usage]",list:["Clicking on a legend item shows/hides all transactions within the selected group.","Dragging on the chart zooms in to the dragged area."]}]},linkServers:{mainStyle:"width:350px;",title:"Server Information",desc:"List of physical servers and their server instances.",category:[{title:"[Legend]",items:[{name:"",desc:"Hostname of the physical server"},{name:"",desc:"AgentId of the Pinpoint agent installed on the server instance running on the physical server"}]},{title:"[Usage]",items:[{name:"",desc:"Open a new window with detailed information on the WAS with Pinpoint installed."},{name:"",desc:"Display statistics on transactions carried out by the server instance."},{name:"",desc:"Display statistics on transactions (with error) carried out by the server instance."}]}]},unknownList:{mainStyle:"",title:"UnknownList",desc:"From the chart's top-right icon,",category:[{title:"[Usage]",items:[{name:"1st",desc:"Toggle between Response Summary Chart"},{name:"2dn",desc:"Show Node Details"}]}]},searchAndOrder:{mainStyle:"",title:"Search and Filter",desc:"Filter by server name or total count.
Clicking Name or Count sorts the list in ascending/descending order."}},inspector:{list:{mainStyle:"",title:"Agent list",desc:"List of agents registered under the current Application Name",category:[{title:"[Legend]",items:[{name:"",desc:"Hostname of the agent's machine"},{name:"",desc:"Agent-id of the installed agent"},{name:"",desc:"Agent was running at the time of query"},{name:"",desc:"Agent was shutdown at the time of query"},{name:"",desc:"Agent was disconnected at the time of query"},{name:"",desc:"Agent status was unknown at the time of query"}]}]},heap:{mainStyle:"",title:"Heap",desc:"JVM's heap information and full garbage collection times(if any)",category:[{title:"[Legend]",items:[{name:"Max",desc:"Maximum heap size"},{name:"Used",desc:"Heap currently in use"},{name:"FCG",desc:"Full garbage collection duration (number of FGCs in parenthesis if it occurred more than once)"}]}]},permGen:{mainStyle:"",title:"PermGen",desc:"JVM's PermGen information and full garbage collection times(if any)",category:[{title:"[Legend]",items:[{name:"Max",desc:"Maximum heap size"},{name:"Used",desc:"Heap currently in use"},{name:"FCG",desc:"Full garbage collection duration (number of FGCs in parenthesis if it occurred more than once)"}]}]},cpuUsage:{mainStyle:"",title:"Cpu Usage",desc:"JVM/System's CPU Usage - For multi-core CPUs, displays the average CPU usage of all the cores",category:[{title:"[Legend]",items:[{name:"Java 1.6",desc:"Only the JVM's CPU usage is collected"},{name:"Java 1.7+",desc:"Both the JVM's and the system's CPU usage are collected"}]}]},tps:{mainStyle:"",title:"TPS",desc:"Transactions per second received by the server",category:[{title:"[Legend]",items:[{name:"Sampled New (S.N)",desc:"Profiled transactions that started from the current agent"},{name:"Sampled Continuation (S.C)",desc:"Profiled transactions that started from another agent"},{name:"Unsampled New (U.N)",desc:"Unprofiled transactions that started from the current agent"},{name:"Unsampled Continuation (U.C)",desc:"Unprofiled transactions that started from another agent"},{name:"Total",desc:"All transactions"}]}]}},callTree:{column:{mainStyle:"",title:"Call Tree",desc:"",category:[{title:"[Column]",items:[{name:"Gap",desc:"Time elapsed between the start of the previous method and entry of this method"},{name:"Exec",desc:"The overall duration of the method call from method entry until method exit"},{name:"Exec(%)",desc:""},{name:"",desc:"Light blue The execution time of the method call as a percentage of the total execution time of the transaction"},{name:"",desc:"Dark blue A percentage of the self execution time"},{name:"Self",desc:"The time that was used for execution of this method only, excluding time consumed in nested methods call"}]}]}},transactionTable:{log:{}},transactionList:{openError:{noParent:"Scatter data of parent window had been changed.\r\nso can't scan the data any more.",noData:"There is no {{application}} scatter data in parent window."}}};pinpointApp.constant("helpContent-en",a)}(),function(){"use strict";var a={configuration:{general:{warning:"(설정 정보는 브라우저 캐쉬에 저장합니다. 서버 측 저장은 추후 지원 할 예정입니다.)",empty:"등록된 목록이 없습니다."},alarmRules:{mainStyle:"",title:"알람 룰의 종류",desc:"Pinpoint에서 지원하는 Alarm rule의 종류는 아래와 같습니다.",category:[{title:"[항목]",items:[{name:"SLOW COUNT",desc:"application 내에서 외부서버를 호출한 요청 중 slow 호출의 개수가 임계치를 초과한 경우 알람이 전송된다."},{name:"SLOW RATE",desc:"application 내에서 외부서버를 호출한 요청 중 slow 호출의 비율(%)이 임계치를 초과한 경우 알람이 전송된다."},{name:"ERROR COUNT",desc:"application 내에서 외부서버를 호출한 요청 중 error 가 발생한 호출의 개수가 임계치를 초과한 경우 알람이 전송된다."},{name:"ERROR RATE",desc:"application 내에서 외부서버를 호출한 요청 중 error 가 발생한 호출의 비율이 임계치를 초과한 경우 알람이 전송된다."},{name:"TOTAL COUNT",desc:"application 내에서 외부서버를 호출한 요청의 개수가 임계치를 초과한 경우 알람이 전송된다."},{name:"SLOW COUNT TO CALLEE",desc:"외부에서 application을 호출한 요청 중에 외부서버로 응답을 늦게 준 요청의 개수가 임계치를 초과한 경우 알람이 전송된다."},{name:"SLOW RATE TO CALLEE",desc:"외부에서 application을 호출한 요청 중에 외부서버로 응답을 늦게 준 요청의 비율(%)이 임계치를 초과한 경우 알람이 전송된다."},{name:"ERROR COUNT TO CALLEE",desc:"외부에서 application을 호출한 요청 중에 에러가 발생한 요청의 개수가 임계치를 초과한 경우 알람이 전송된다."},{name:"ERROR RATE TO CALLEE",desc:"외부에서 application을 호출한 요청 중에 에러가 발생한 요청의 비율(%)이 임계치를 초과한 경우 알람이 전송된다."},{name:"TOTAL COUNT TO CALLEE",desc:"외부에서 application을 호출한 요청 개수가 임계치를 초과한 경우 알람이 전송된다."},{name:"HEAP USAGE RATE",desc:"heap의 사용률이 임계치를 초과한 경우 알람이 전송된다."},{name:"JVM CPU USAGE RATE",desc:"applicaiton의 CPU 사용률이 임계치를 초과한 경우 알람이 전송된다."}]}]}},navbar:{searchPeriod:{guide:"한번에 검색 할 수 있는 최대 기간은 {{day}}일 입니다."},applicationSelector:{mainStyle:"",title:"응용프로그램 목록",desc:"핀포인트가 설치된 응용프로그램 목록입니다.",category:[{title:"[범례]",items:[{name:"아이콘",desc:"응용프로그램의 종류"},{name:"텍스트",desc:"응용프로그램의 이름입니다. Pinpoint agent 설정에서 applicationName에 지정한 값입니다."}]}]},depth:{mainStyle:"",title:' Inbound 와 Outbound',desc:"서버맵의 탐색 깊이를 설정합니다.",category:[{title:"[범례]",items:[{name:"Inbound",desc:"선택된 노드를 기준으로 들어오는 탐색깊이"},{name:"Outbound",desc:"선택된 노드를 기준으로 나가는 탐색 깊이"}]}]},periodSelector:{mainStyle:"",title:"조회 시간 설정",desc:"데이터 조회 시간을 선택합니다.",category:[{title:"[범례]",items:[{name:"",desc:"현재 시간을 기준으로 선택한 시간 이전부터 현재시간 사이에 수집된 데이터를 조회합니다.
최근 5m, 10m, 3h조회는 자동 새로고침 기능을 지원합니다."},{name:"",desc:"지정된 시간 사이에 수집된 데이터를 조회합니다. 조회 시간은 분단위로 최대 48시간을 지정할 수 있습니다."}]}]}},servermap:{"default":{mainStyle:"width:560px;",title:"서버맵",desc:"분산된 서버를 도식화 한 지도 입니다.",category:[{title:"[박스]",list:["박스는 응용프로그램 그룹을 나타냅니다.","우측의 숫자는 응용프로그램 그룹에 속한 서버 인스턴스의 개수입니다.(한 개일 때에는 숫자를 보여주지 않습니다.)","좌측 빨간 알람은 임계값을 초과한 모니터링 항목이 있을 때 나타납니다."]},{title:"[화살표]",list:["화살표는 트랜잭션의 흐름을 나타냅니다.","화살표의 숫자는 호출 수 입니다. 임계치 이상의 에러를 포함하면 빨간색으로 보여집니다."," : 필터가 적용되면 아이콘이 표시됩니다."]},{title:"[박스의 기능]",list:["박스를 선택하면 어플리케이션으로 유입된 트랜잭션 정보를 화면 우측에 보여줍니다."]},{title:"[화살표의 기능]",list:["화살표를 선택하여 선택된 구간을 통과하는 트랜잭션의 정보를 화면 우측에 보여줍니다.","Context menu의 Filter는 선택된 구간을 통과하는 트랜잭션만 모아서 보여줍니다.","Filter wizard는 보다 상세한 필터 설정을 할 수 있습니다.","필터가 적용되면 화살표에 아이콘이 표시됩니다."]},{title:"[차트 설정]",list:["비어있는 부분을 마우스 오른쪽 클릭하여 context menu를 열면 차트 설정메뉴가 보입니다.","Node Setting / Merge Unknown : agent가 설치되어있지 않은 응용프로그램을 하나의 박스로 보여줍니다.","비어있는 부분 더블클릭 : 줌을 초기화 합니다."]}]}},realtime:{"default":{mainStyle:"",title:"Realtime Active Thread Chart",desc:"각 Agent의 Active Thread 갯수를 실시간으로 보여줍니다.",category:[{title:"[에러 메시지 설명]",items:[{name:"UNSUPPORTED VERSION",desc:"해당 에이전트의 버전에서는 지원하지 않는 기능입니다. (1.5.0 이상 버전으로 업그레이드하세요.)",nameStyle:"width:120px;border-bottom:1px solid gray",descStyle:"border-bottom:1px solid gray"},{name:"CLUSTER OPTION NOTSET",desc:"해당 에이전트의 설정에서 기능이 비활성화되어 있습니다. (pinpoint 설정 파일에서 profiler.pinpoint.activethread 항목을 true로 변경하세요.)",nameStyle:"width:120px;border-bottom:1px solid gray",descStyle:"border-bottom:1px solid gray"},{name:"TIMEOUT",desc:"해당 에이전트에서 일시적으로 활성화 된 스레드 개수를 받지 못하였습니다.(오래 지속될 경우 담당자에게 문의하세요.)",nameStyle:"width:120px;border-bottom:1px solid gray",descStyle:"border-bottom:1px solid gray"},{name:"NOT FOUND",desc:"해당 에이전트를 찾을 수 없습니다.(에이전트가 활성화 되어 있는 경우에 해당 메시지가 발생한다면 pinpoint 설정 파일에서 profiler.tcpdatasender.command.accept.enable 항목을 true로 변경하세요.)",nameStyle:"width:120px;border-bottom:1px solid gray",descStyle:"border-bottom:1px solid gray"},{name:"CLUSTER CHANNEL CLOSED",desc:"해당 에이전트와의 세션이 종료되었습니다.",nameStyle:"width:120px;border-bottom:1px solid gray",descStyle:"border-bottom:1px solid gray"},{name:"PINPOINT INTERNAL ERROR",desc:"핀포인트 내부 에러가 발생하였습니다.(담당자에게 문의하세요.)",nameStyle:"width:120px;border-bottom:1px solid gray",descStyle:"border-bottom:1px solid gray"},{name:"No Active Thread",desc:"현재 해당 에이전트는 활성화된 스레드가 존재하지 않습니다.",nameStyle:"width:120px;border-bottom:1px solid gray",descStyle:"border-bottom:1px solid gray"},{name:"No Response",desc:"핀포인트 웹 서버로부터의 응답을 받지 못하였습니다.(담당자에게 문의하세요.)",nameStyle:"width:120px;border-bottom:1px solid gray",descStyle:"border-bottom:1px solid gray"}]}]}},scatter:{"default":{mainStyle:"",title:"Response Time Scatter Chart",desc:"수집된 트랜잭션의 응답시간 분포도입니다.",category:[{title:"[범례]",items:[{ -name:"",desc:"에러가 없는 트랜잭션 (Success)"},{name:"",desc:"에러를 포함한 트랜잭션 (Failed)"},{name:"X축",desc:"트랜잭션이 실행된 시간 (시:분)"},{name:"Y축",desc:"트랜잭션의 응답 속도 (ms)"}]},{title:"[기능]",image:"",items:[{name:"",desc:"마우스로 영역을 드래그하여 드래그 된 영역에 속한 트랜잭션의 상세정보를 조회할 수 있습니다."},{name:"",desc:"에러를 포함한 트랜잭션 (Failed)"},{name:"X축",desc:"응답시간(Y축)의 최대 또는 최소값을 변경할 수 있습니다."},{name:"",desc:"차트를 새창으로 크게 보여줍니다."}]}]}},nodeInfoDetails:{responseSummary:{mainStyle:"",title:"Response Summary Chart",desc:"응답결과 요약 입니다.",category:[{title:"[범례]",items:[{name:"X축",desc:"트랜잭션 응답시간 요약 단위"},{name:"Y축",desc:"트랜잭션의 개수"},{name:"1s",desc:"0초 <= 응답시간 < 1초 에 해당하는 성공한 트랜잭션의 수"},{name:"3s",desc:"1초 <= 응답시간 < 3초 에 해당하는 성공한 트랜잭션의 수"},{name:"5s",desc:"3초 <= 응답시간 < 5초 에 해당하는 성공한 트랜잭션의 수"},{name:"Slow",desc:"5초 <= 응답시간 에 해당하는 성공한 트랜잭션의 수"},{name:"Error",desc:"응답시간과 무관하게 실패한 트랜잭션의 수"}]}]},load:{mainStyle:"",title:"Load Chart",desc:"시간별 트랜잭션의 응답 결과입니다.",category:[{title:"[범례]",items:[{name:"X축",desc:"트랜잭션이 실행된 시간 (분단위)"},{name:"Y축",desc:"트랜잭션의 개수"},{name:"1s",desc:"0초 <= 응답시간 < 1초 에 해당하는 성공한 트랜잭션의 수"},{name:"3s",desc:"1초 <= 응답시간 < 3초 에 해당하는 성공한 트랜잭션의 수"},{name:"5s",desc:"3초 <= 응답시간 < 5초 에 해당하는 성공한 트랜잭션의 수"},{name:"Slow",desc:"5초 <= 응답시간 에 해당하는 성공한 트랜잭션의 수"},{name:"Error",desc:"응답시간과 무관하게 실패한 트랜잭션의 수"}]},{title:"[기능]",list:["범례를 클릭하여 해당 응답시간에 속한 트랜잭션을 차트에서 제외하거나 포함 할 수 있습니다.","마우스로 드래그하여 드래그 한 범위를 확대할 수 있습니다."]}]},nodeServers:{mainStyle:"width:400px;",title:"Server Information",desc:"물리서버와 해당 서버에서 동작중인 서버 인스턴스의 정보를 보여줍니다.",category:[{title:"[범례]",items:[{name:"",desc:"물리서버의 호스트이름입니다."},{name:"",desc:"물리서버에 설치된 서버 인스턴스에서 동작중인 Pinpoint의 agentId입니다."}]},{title:"[기능]",items:[{name:"",desc:"Pinpoint가 설치된 WAS의 상세한 정보를 보여줍니다."},{name:"",desc:"해당 인스턴스에서 처리된 트랜잭션 통계를 조회할 수 있습니다."},{name:"",desc:"에러를 발생시킨 트랜잭션이 포함되어있다는 의미입니다."}]}]},unknownList:{mainStyle:"",title:"UnknownList",desc:"차트 오른쪽 상단의 아이콘부터",category:[{title:"[기능]",items:[{name:"첫번째",desc:"Response Summary"},{name:"두번째",desc:"해당 노드 상세보기"}]}]},searchAndOrder:{mainStyle:"",title:"검색과 필터링",desc:"서버 이름과 Count로 검색이 가능합니다.",category:[{title:"[기능]",items:[{name:"Name",desc:"이름을 오름/내림차순 정렬 합니다."},{name:"Count",desc:"갯수를 오름/내림차순 정렬 합니다."}]}]}},linkInfoDetails:{responseSummary:{mainStyle:"",title:"Response Summary Chart",desc:"응답결과 요약 입니다.",category:[{title:"[범례]",items:[{name:"X축",desc:"트랜잭션 응답시간 요약 단위"},{name:"Y축",desc:"트랜잭션의 개수"},{name:"1s",desc:"0초 <= 응답시간 < 1초 에 해당하는 성공한 트랜잭션의 수"},{name:"3s",desc:"1초 <= 응답시간 < 3초 에 해당하는 성공한 트랜잭션의 수"},{name:"5s",desc:"3초 <= 응답시간 < 5초 에 해당하는 성공한 트랜잭션의 수"},{name:"Slow",desc:"5초 <= 응답시간 에 해당하는 성공한 트랜잭션의 수"},{name:"Error",desc:"응답시간과 무관하게 실패한 트랜잭션의 수"}]},{title:"[기능]",list:["바(bar)를 클릭하면 해당 응답시간에 속한 트랜잭션의 목록을 조회합니다."]}]},load:{mainStyle:"",title:"Load Chart",desc:"시간별 트랜잭션의 응답 결과입니다.",category:[{title:"[범례]",items:[{name:"X축",desc:"트랜잭션이 실행된 시간 (분단위)"},{name:"Y축",desc:"트랜잭션의 개수"},{name:"1s",desc:"0초 <= 응답시간 < 1초 에 해당하는 성공한 트랜잭션의 수"},{name:"3s",desc:"1초 <= 응답시간 < 3초 에 해당하는 성공한 트랜잭션의 수"},{name:"5s",desc:"3초 <= 응답시간 < 5초 에 해당하는 성공한 트랜잭션의 수"},{name:"Slow",desc:"5초 <= 응답시간 에 해당하는 성공한 트랜잭션의 수"},{name:"Error",desc:"응답시간과 무관하게 실패한 트랜잭션의 수"}]},{title:"[기능]",list:["범례를 클릭하여 해당 응답시간에 속한 트랜잭션을 차트에서 제외하거나 포함 할 수 있습니다.","마우스로 드래그하여 드래그 한 범위를 확대할 수 있습니다."]}]},linkServers:{mainStyle:"width:350px;",title:"Server Information",desc:"해당 구간을 통과하는 트랜잭션을 호출한 서버 인스턴스의 정보입니다. (호출자)",category:[{title:"[범례]",items:[{name:"",desc:"물리서버에 설치된 서버 인스턴스에서 동작중인 Pinpoint의 agentId입니다."}]},{title:"[기능]",items:[{name:"",desc:"Pinpoint가 설치된 WAS의 상세한 정보를 보여줍니다."},{name:"",desc:"해당 인스턴스에서 처리된 트랜잭션 통계를 조회할 수 있습니다."},{name:"",desc:"에러를 발생시킨 트랜잭션이 포함되어있다는 의미입니다."}]}]},unknownList:{mainStyle:"",title:"UnknownList",desc:"차트 오른쪽 상단의 아이콘부터",category:[{title:"[기능]",items:[{name:"첫번째",desc:"Response Summary"},{name:"두번째",desc:"해당 노드 상세보기"}]}]},searchAndOrder:{mainStyle:"",title:"검색과 필터링",desc:"서버 이름과 Count로 검색이 가능합니다.",category:[{title:"[기능]",items:[{name:"Name",desc:"이름을 오름/내림차순 정렬 합니다."},{name:"Count",desc:"갯수를 오름/내림차순 정렬 합니다."}]}]}},inspector:{list:{mainStyle:"",title:"Agent 리스트",desc:"현 Appliation Name에 등록된 agent 리스트입니다.",category:[{title:"[범례]",items:[{name:"",desc:"Agent가 설치된 장비의 호스트 이름"},{name:"",desc:"설치된 agent의 agent-id"},{name:"",desc:"정상적으로 실행중인 agent 상태 표시"},{name:"",desc:"Shutdown 된 agent 상태 표시"},{name:"",desc:"연결이 끊긴 agent 상태 표시"},{name:"",desc:"알수 없는 상태의 agent 상태 표시"}]}]},heap:{mainStyle:"",title:"Heap",desc:"JVM의 heap 정보와 full garbage collection 소요 시간",category:[{title:"[범례]",items:[{name:"Max",desc:"최대 heap 사이즈"},{name:"Used",desc:"현재 사용 중인 heap 사이즈"},{name:"FCG",desc:"Full garbage collection의 총 소요 시간(2번 이상 발생 시, 괄호 안에 발생 횟수 표시)"}]}]},permGen:{mainStyle:"",title:"PermGen",desc:"JVM의 PermGen 정보와 full garbage collection 소요 시간",category:[{title:"[범례]",items:[{name:"Max",desc:"최대 heap 사이즈"},{name:"Used",desc:"현재 사용 중인 heap 사이즈"},{name:"FCG",desc:"Full garbage collection의 총 소요 시간(2번 이상 발생 시, 괄호 안에 발생 횟수 표시)"}]}]},cpuUsage:{mainStyle:"",title:"Cpu Usage",desc:"JVM과 시스템의 CPU 사용량 - 멀티코어 CPU의 경우, 전체 코어 사용량의 평균입니다.",category:[{title:"[범례]",items:[{name:"Java 1.6",desc:"JVM의 CPU 사용량만 수집됩니다."},{name:"Java 1.7+",desc:"JVM과 전체 시스템의 CPU 사용량 모두 수집됩니다."}]}]},tps:{mainStyle:"",title:"TPS",desc:"서버로 인입된 초당 트랜잭션 수",category:[{title:"[범례]",items:[{name:"Sampled New (S.N)",desc:"선택된 agent에서 시작한 샘플링된 트랜잭션"},{name:"Sampled Continuation (S.C)",desc:"다른 agent에서 시작한 샘플링된 트랜잭션"},{name:"Unsampled New (U.N)",desc:"선택된 agent에서 시작한 샘플링되지 않은 트랜잭션"},{name:"Unsampled Continuation (U.C)",desc:"다른 agent에서 시작한 샘플링되지 않은 트랜잭션"},{name:"Total",desc:"모든 트랜잭션"}]}]}},callTree:{column:{mainStyle:"",title:"Call Tree",desc:"Call Tree의 컬럼명을 설명합니다.",category:[{title:"[컬럼]",items:[{name:"Gap",desc:"이전 메소드가 시작된 후 현재 메소드를 실행하기 까지의 지연 시간"},{name:"Exec",desc:"메소드 시작부터 종료까지의 시간"},{name:"Exec(%)",desc:""},{name:"",desc:"옅은 파란색
트랜잭션 전체 실행 시간 대 exec 시간의 비율"},{name:"",desc:"진한 파란색
self 시간 비율"},{name:"Self",desc:"메소드 자체의 시작부터 종료까지의 시간으로 하위의 메소드가 실행된 시간을 제외한 값"}]}]}},transactionTable:{log:{}},transactionList:{openError:{noParent:"부모 윈도우의 scatter chart 정보가 변경되어 더 이상 transaction 정보를 표시할 수 없습니다.",noData:"부모 윈도우에 {{application}} scatter chart 정보가 없습니다."}}};pinpointApp.constant("helpContent-ko",a)}(),function(){"use strict";var a=['
',"
","
{{{title}}}
","
{{{desc}}}
","
","{{#if category}}
{{/if}}","{{#each category}}","

{{title}}

",'{{#if image}}

{{{image}}}

{{/if}}',"{{#if items}}","","{{#each items}}","",'','',"","{{/each}}","
{{{name}}}{{{desc}}}
","{{/if}}","{{#if list}}","
    ","{{#each list}}","
  • {{{this}}}
  • ","{{/each}}","
","{{/if}}","{{/each}}","
"].join(""),b=Handlebars.compile(a);pinpointApp.constant("helpContentTemplate",b)}(),function(){"use strict";pinpointApp.factory("helpContentService",["$window","$injector","UserLocalesService",function(a,b,c){var d="helpContent-"+c.userLocale,e="helpContent-"+c.defaultLocale;return b.has(d)?b.get(d):b.get(e)}])}(),function(a){"use strict";pinpointApp.service("AnalyticsService",["$rootScope","globalConfig",function(a,b){"undefined"!=typeof ga&&(this.send=function(a,c,d,e,f){b.sendAllowed!==!1&&(1==arguments.length?ga("send","pageview",arguments[0]):ga("send","event",a,c,d,e,f))}),this.CONST={},this.CONST.MAIN="Main",this.CONST.CONTEXT="Context",this.CONST.CALLSTACK="CallStack",this.CONST.MIXEDVIEW="MixedView",this.CONST.INSPECTOR="Inspector",this.CONST.CLK_APPLICATION="ClickApplication",this.CONST.CLK_TIME="ClickTime",this.CONST.CLK_SEARCH_NODE="ClickSearchNode",this.CONST.CLK_CLEAR_SEARCH="ClickClearSearch",this.CONST.CLK_NODE="ClickNode",this.CONST.CLK_LINK="ClickLink",this.CONST.CLK_UPDATE_TIME="ClickUpdateTime",this.CONST.CLK_HELP="ClickHelp",this.CONST.CLK_SCATTER_SETTING="ClickScatterSetting",this.CONST.CLK_DOWNLOAD_SCATTER="ClickDownloadScatter",this.CONST.CLK_RESPONSE_GRAPH="ClickResponseGraph",this.CONST.CLK_LOAD_GRAPH="ClickLoadGraph",this.CONST.CLK_SHOW_GRAPH="ClickShowGraph",this.CONST.CLK_SHOW_SERVER_LIST="ClickShowServerList",this.CONST.CLK_OPEN_INSPECTOR="ClickOpenInspector",this.CONST.CLK_FILTER_TRANSACTION="ClickFilterTransaction",this.CONST.CLK_FILTER_TRANSACTION_WIZARD="ClickFilterTransactionWizard",this.CONST.CLK_MORE="ClickMore",this.CONST.CLK_DISTRIBUTED_CALL_FLOW="ClickDistributedCallFlow",this.CONST.CLK_SERVER_MAP="ClickServerMap",this.CONST.CLK_RPC_TIMELINE="ClickRPCTimeline",this.CONST.CLK_CALL="ClickCall",this.CONST.CLK_TRANSACTION="ClickTransaction",this.CONST.CLK_HEAP="ClickHeap",this.CONST.CLK_PERM_GEN="ClickPermGen",this.CONST.CLK_CPU_LOAD="ClickCpuLoad",this.CONST.CLK_REFRESH="ClickRefresh",this.CONST.CLK_CALLEE_RANGE="ClickCalleeRange",this.CONST.CLK_CALLER_RANGE="ClickCallerRange",this.CONST.CLK_REALTIME_CHART_HIDE="ClickRealtimeChartHide",this.CONST.CLK_REALTIME_CHART_SHOW="ClickRealtimeChartShow",this.CONST.CLK_SHOW_SERVER_TYPE_DETAIL="ClickShowServerTypeDetail",this.CONST.CLK_CHANGE_AGENT="ClickChangeAgent",this.CONST.CLK_START_REALTIME="ClickStartRealtime",this.CONST.CLK_CONFIGURATION="ClickConfiguration",this.CONST.CLK_GENERAL="ClickConfigurationGeneral",this.CONST.CLK_ALARM="ClickConfigurationAlarm",this.CONST.CLK_HELP="ClickConfigurationHelp",this.CONST.CLK_GENERAL_SET_DEPTH="ClickGeneralSetDepth",this.CONST.CLK_GENERAL_SET_PERIOD="ClickGeneralSetPeriod",this.CONST.CLK_GENERAL_SET_FAVORITE="ClickGeneralSetFavorite",this.CONST.CLK_ALARM_CREATE_USER_GROUP="ClickAlarmCreateUserGroup",this.CONST.CLK_ALARM_REFRESH_USER_GROUP="ClickAlarmRefreshUserGroup",this.CONST.CLK_ALARM_FILTER_USER_GROUP="ClickAlarmFilterUserGroup",this.CONST.CLK_ALARM_ADD_USER="ClickAlarmAddUser",this.CONST.CLK_ALARM_REFRESH_USER="ClickAlarmRefreshUser",this.CONST.CLK_ALARM_FILTER_USER="ClickAlarmFilterUser",this.CONST.CLK_ALARM_CREATE_PINPOINT_USER="ClickAlarmCreatePinpointUser",this.CONST.CLK_ALARM_REFRESH_PINPOINT_USER="ClickAlarmRefreshPinpointUser",this.CONST.CLK_ALARM_FILTER_PINPOINT_USER="ClickAlarmFilterPinpointUser",this.CONST.CLK_ALARM_CREATE_RULE="ClickAlarmCreateUserGroup",this.CONST.CLK_ALARM_REFRESH_RULE="ClickAlarmRefreshUserGroup",this.CONST.CLK_ALARM_FILTER_RULE="ClickAlarmFilterUserGroup",this.CONST.TG_DATE="ToggleDate",this.CONST.TG_UPDATE_ON="ToggleUpdateOn",this.CONST.TG_NODE_VIEW="ToggleNodeView",this.CONST.TG_SCATTER_SUCCESS="ToggleScatterSuccess",this.CONST.TG_SCATTER_FAILED="ToggleScatterFailed",this.CONST.TG_MERGE_TYPE="ToggleMergeType",this.CONST.TG_CALL_COUNT="ToggleCallCount",this.CONST.TG_TPS="ToggleTPS",this.CONST.TG_ROUTING="ToggleRouting",this.CONST.TG_CURVE="ToggleCurve",this.CONST.TG_REALTIME_CHART_RESIZE="ToggleRealtimeChartResize",this.CONST.ST_="Sort",this.CONST.ASCENDING="ascending",this.CONST.DESCENDING="descending",this.CONST.ON="on",this.CONST.OFF="off",this.CONST.MAIN_PAGE="/main.page",this.CONST.FILTEREDMAP_PAGE="/filteredMap.page",this.CONST.INSPECTOR_PAGE="/inspector.page",this.CONST.SCATTER_FULL_SCREEN_PAGE="/scatterFullScreen.page",this.CONST.TRANSACTION_DETAIL_PAGE="/transactionDetail.page",this.CONST.TRANSACTION_LIST_PAGE="/transactionList.page",this.CONST.TRANSACTION_VIEW_PAGE="/transactionView.page"}])}(jQuery),function(){"use strict";pinpointApp.constant("RealtimeWebsocketServiceConfig",{wsUrl:"/agent/activeThread.pinpointws",wsTimeout:1e4,retryTimeout:3e3,maxRetryCount:1}),pinpointApp.service("RealtimeWebsocketService",["RealtimeWebsocketServiceConfig",function(a){function b(){i=new WebSocket("ws://"+location.host+a.wsUrl),i.onopen=function(a){g=h=Date.now(),c(),f.onopen(a)},i.onmessage=function(a){h=Date.now(),f.onmessage(JSON.parse(a.data))},i.onclose=function(a){console.log("onClose websocket",a),i=null,d(),f.onclose(a),e()}}function c(){j=setInterval(function(){null!==h&&(Date.now()-hs.datetimepicker("getDate")&&s.datetimepicker("setDate",r.datetimepicker("getDate")):s.val(a)}}),A(r,t.getQueryStartTime()||moment().subtract(20,"minute").valueOf()),s=o.find("#to-picker"),s.datetimepicker({altField:"#to-picker-alt",altFieldTimeOnly:!1,dateFormat:"yy-mm-dd",timeFormat:"HH:mm",controlType:"select",showButtonPanel:!1,onSelect:function(){var a=moment(L(r)),b=moment(L(s));if(a.isBefore(moment(L(s)).subtract(l.getMaxPeriod(),"days"))||a.isAfter(b)){var c=S();A(r,b.subtract(c[0],c[1]).format())}},onClose:function(a,b){""!==r.val()?r.datetimepicker("getDate")>s.datetimepicker("getDate")&&r.datetimepicker("setDate",s.datetimepicker("getDate")):r.val(a)}}),A(s,t.getQueryEndTime()),a("#from-picker-alt").on("click",function(){R()}),a("#to-picker-alt").on("click",function(){R()}),a(document).mousedown(function(b){u.is(":visible")!==!1&&0===a(b.target).parents("div#ui-datepicker-div").length&&u.hide()})},S=function(){var a=[],b=e.periodCalendar.substring(e.periodCalendar.length-1);return a[0]=parseInt(e.periodCalendar),a[1]="d"==b?"days":"h"==b?"hours":"minutes",a},R=function(){u.is(":visible")?u.hide():(u.css("left",a("#navbar_period").offset().left),u.show())},L=function(a){return a.datetimepicker("getDate")},J=function(){if(t.isRealtime())return b.periodType.REALTIME;var a=b.periodType.LAST;return a=h.name&&i.get(h.name+b.periodTypePrefix)?i.get(h.name+b.periodTypePrefix):t.getApplication()?b.periodType.RANGE:b.periodType.LAST,t.getReadablePeriod()&&_.indexOf(e.aReadablePeriodList,t.getReadablePeriod())<0&&(a=b.periodType.RANGE),a},K=function(){h.name=h.name||"window."+_.random(1e5,999999),i.add(h.name+b.periodTypePrefix,e.periodType)},A=function(a,b){a.datetimepicker("setDate",b?new Date(b):new Date)},C=function(){e.application&&(t.setApplication(e.application),e.callee=W(e.application),e.caller=X(e.application),t.setCalleeRange(e.callee),t.setCallerRange(e.caller),e.periodType===b.periodType.LAST&&e.readablePeriod?(t.setPeriodType(b.periodType.LAST),B(function(a){t.setReadablePeriod(e.readablePeriod),t.setQueryEndDateTime(moment(a).format("YYYY-MM-DD-HH-mm-ss")),t.autoCalculateByQueryEndDateTimeAndReadablePeriod(),H(),A(r,t.getQueryStartTime()),A(s,t.getQueryEndTime())})):e.periodType===b.periodType.REALTIME?(t.setPeriodType(b.periodType.REALTIME),B(function(a){t.setReadablePeriod(l.getRealtimeScatterXRangeStr()),t.setQueryEndDateTime(moment(a).format("YYYY-MM-DD-HH-mm-ss")),t.autoCalculateByQueryEndDateTimeAndReadablePeriod(),H(),A(r,t.getQueryStartTime()),A(s,t.getQueryEndTime())})):E()&&F()&&(t.setPeriodType(b.periodType.RANGE),t.setQueryStartTime(E()),t.setQueryEndTime(F()),t.autoCalcultateByQueryStartTimeAndQueryEndTime(),H()))},H=function(){K(),e.$emit("navbarDirective.changed",t),d.$broadcast("realtimeChartController.close")},B=function(a){n.getServerTime(function(b){a(b)})},D=function(){n.getApplicationList(function(a){angular.isArray(a)===!1||0===a.length?(e.applications[0].text="Application not found.",d.$broadcast("alarmRule.applications.set",e.applications),d.$broadcast("configuration.general.applications.set",e.applications)):(T=a,G(T,function(){e.disableApplication=!1,g(function(){t.getApplication()?(q.select2("val",t.getApplication()),e.application=t.getApplication()):q.select2("open")}),d.$broadcast("alarmRule.applications.set",e.applications),d.$broadcast("configuration.general.applications.set",e.applications)})),e.hideFakeApplication=!0},function(){e.applications[0].text="Application error.",e.hideFakeApplication=!0})},E=function(){return r.datetimepicker("getDate").getTime()},F=function(){return s.datetimepicker("getDate").getTime()},G=function(a,b){var c=l.getFavoriteList();e.favoriteCount=c.length,e.applications=[{text:"",value:""}];var d=[],f=[];angular.forEach(a,function(a,b){var e=a.applicationName+"@"+a.serviceType;-1===c.indexOf(e)?f.push({text:e,value:a.applicationName+"@"+a.code}):d.push({text:e,value:a.applicationName+"@"+a.code})}),e.applications=d.concat(f),angular.isFunction(b)&&b.apply(e)},z=function(){function a(a){if(!a.id)return a.text;var b=a.text.split("@");if(b.length>1){var c=f.get(0).createElement("img");return c.src="/images/icons/"+b[1]+".png",c.style.height="25px",c.style.paddingRight="3px",c.outerHTML+b[0]}return a.text}q.select2({placeholder:"Select an application",searchInputPlaceholder:"Input your application name",allowClear:!1,formatResult:a,formatSelection:a,escapeMarkup:function(a){return a}}).on("change",function(a){k.send(k.CONST.MAIN,k.CONST.CLK_APPLICATION),e.application=a.val,e.$digest(),C()})},O=function(a){var b=parseInt(a);switch(a.substring(a.length-1)){case"m":b*=6e4;break;case"h":b*=36e5;break;case"d":b*=864e5}return b},P=function(a){e.periodType===b.periodType.LAST?(t.setQueryEndDateTime(moment(t.getQueryEndTime()+a).format("YYYY-MM-DD-HH-mm-ss")),t.autoCalculateByQueryEndDateTimeAndReadablePeriod(),H(),A(r,t.getQueryStartTime()),A(s,t.getQueryEndTime())):(A(r,t.getQueryStartTime()+a),A(s,t.getQueryEndTime()+a),t.setQueryStartTime(E()),t.setQueryEndTime(F()),t.autoCalcultateByQueryStartTimeAndQueryEndTime(),H())},Q=function(a){k.send(k.CONST.MAIN,k.CONST.CLK_TIME,a),e.periodDelay=!0,e.readablePeriod=a,e.autoUpdate=!1,C(),g(function(){e.periodDelay=!1,e.$$phase||e.$digest()},1e3)},e.search=function(){C()},e.setPeriod=function(a){e.periodType=b.periodType.LAST,Q(a)},e.getPreviousClass=function(){return""},e.getNextClass=function(){return""},e.getPeriodClassInCalendar=function(a){return e.periodCalendar===a?"btn-success":""},e.getPeriodClass=function(a){var c="";return e.periodType!==b.periodType.LAST?c:(e.readablePeriod===a&&(c+="btn-info"),e.periodDelay&&(c+=" wait"),c)},e.showUpdate=function(){return!!(e.periodType===b.periodType.LAST&&_.indexOf(["5m","20m","1h","3h"],e.readablePeriod)>=0&&e.application)},M=function(){e.autoUpdate&&(e.timeLeft-=1,0===e.timeLeft?(e.update(),e.timeLeft=e.timeCountDown):g(M,1e3))},N=function(){e.timeLeft=e.timeCountDown},e.setPeriodForCalendar=function(a){e.periodCalendar=a},e.setAutoUpdateTime=function(a){k.send(k.CONST.MAIN,k.CONST.CLK_UPDATE_TIME,a+"s"),e.timeCountDown=a,e.timeLeft=a},e.setCallee=function(a){e.callee=a},e.setCaller=function(a){e.caller=a},e.setDepth=function(){U=!1,V=!0,a("#navbar_depth .dropdown-menu").trigger("click.bs.dropdown"),console.log("previous :",v,w,", current :",e.callee,e.caller),v===e.callee&&w===e.caller||(k.send(k.CONST.MAIN,k.CONST.CLK_CALLEE_RANGE,e.callee),k.send(k.CONST.MAIN,k.CONST.CLK_CALLER_RANGE,e.caller),v=e.callee,w=e.caller,Y(e.application+"+callee",e.callee),Y(e.application+"+caller",e.caller),c.reload())},e.cancelDepth=function(b){e.callee=v,e.caller=w,b&&(U=!1,V=!0,a("#navbar_depth .dropdown-menu").trigger("click.bs.dropdown"))},e.update=function(){var a=e.autoUpdate;e.autoUpdate=!1,e.periodDelay=!0,C(),g(function(){e.periodDelay=!1,N(),e.autoUpdate=a,e.$$phase||e.$digest()},1e3)},e.togglePeriod=function(a){k.send(k.CONST.MAIN,k.CONST.TG_DATE,a),e.periodType=a,e.autoUpdate=!1},e.setRealtime=function(){k.send(k.CONST.MAIN,k.CONST.CLK_START_REALTIME),e.periodType=b.periodType.REALTIME,e.autoUpdate=!1,C()},e.isRealtime=function(){return"undefined"==typeof t||null===t?!1:t.isRealtime()},e.showConfig=function(){d.$broadcast("configuration.show")},e.$watch("autoUpdate",function(a,b){a?(k.send(k.CONST.MAIN,k.CONST.TG_UPDATE_ON),g(M,1e3)):N()}),e.$on("navbarDirective.initialize",function(a,b){x(b)}),e.$on("navbarDirective.initialize.andReload",function(a,c){x(c),e.periodType=b.periodType.LAST,Q(l.getPeriod())}),e.$on("navbarDirective.initialize.realtime.andReload",function(a,c){x(c),e.periodType=b.periodType.REALTIME,Q(l.getPeriod())}),e.$on("navbarDirective.initializeWithStaticApplication",function(a,b){I(b)}),e.$on("navbarDirective.moveToPast",function(a){P(e.periodType===b.periodType.LAST?-O(e.readablePeriod):-(t.getQueryEndTime()-t.getQueryStartTime()))}),e.$on("navbarDirective.moveToFuture",function(a){P(e.periodType===b.periodType.LAST?O(e.readablePeriod):t.getQueryEndTime()-t.getQueryStartTime())}),e.$on("navbarDirective.changedFavorite",function(a){G(T,function(){e.disableApplication=!1,g(function(){t.getApplication()&&(q.select2("val",t.getApplication()),e.application=t.getApplication())})})})}}}])}(jQuery),function(){"use strict";pinpointApp.constant("serverMapDirectiveConfig",{ -options:{sContainerId:"servermap",sOverviewId:"servermapOverview",sBigFont:"11pt Lato,NanumGothic,ng,dotum,AppleGothic,sans-serif",sSmallFont:"11pt Lato,NanumGothic,ng,dotum,AppleGothic,sans-serif",sImageDir:"/images/servermap/",htLinkType:{sRouting:"Normal",sCurve:"JumpGap"},htLinkTheme:{"default":{backgroundColor:"#ffffff",borderColor:"#c5c5c5",fontFamily:"11pt Lato,NanumGothic,ng,dotum,AppleGothic,sans-serif",fontColor:"#000000",fontAlign:"center",margin:1,strokeWidth:1},bad:{backgroundColor:"#ffc9c9",borderColor:"#7d7d7d",fontFamily:"11pt Lato,NanumGothic,ng,dotum,AppleGothic,sans-serif",fontColor:"#FF1300",fontAlign:"center",margin:1,strokeWidth:1}}}}),pinpointApp.directive("serverMapDirective",["serverMapDirectiveConfig","$rootScope","ServerMapDaoService","AlertsService","ProgressBarService","SidebarTitleVoService","$filter","ServerMapFilterVoService","filteredMapUtilService","$base64","ServerMapHintVoService","$timeout","$location","$window","helpContentTemplate","helpContentService","AnalyticsService",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){return{restrict:"EA",replace:!0,templateUrl:"features/serverMap/serverMap.html?v="+G_BUILD_TIME,link:function(r,s,t){var u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W;z=new d(s),A=new e(s),E=!1,y=null,B={applicationMapData:{linkDataArray:[],nodeDataArray:[]},lastFetchedTimestamp:[],timeSeriesResponses:{values:{},time:[]}},w={},C={},D={},r.oNavbarVoService=null,r.totalRequestCount=!0,r.bShowServerMapStatus=!1,r.linkRouting=a.options.htLinkType.sRouting,r.linkCurve=a.options.htLinkType.sCurve,r.searchNodeQuery="",r.searchNodeIndex=0,r.searchNodeList=[],J=s.find(".serverMapTime"),F=s.find(".fromAgentName"),G=s.find(".toAgentName"),F.select2(),G.select2(),H=!1,r.mergeTypeList=[],r.mergeStatus={},r.showAntStyleHint=!1,W=function(a){a.nodeDataArray.forEach(function(a){a.isWas===!1&&"USER"!==a.serviceType&&angular.isUndefined(r.mergeStatus[a.serviceType])&&(r.mergeTypeList.push(a.serviceType),r.mergeStatus[a.serviceType]=!0)})},M=function(){r.nodeContextMenuStyle="",r.linkContextMenuStyle="",r.backgroundContextMenuStyle="",r.urlPattern="",r.responseTime={from:0,to:3e4},r.includeFailed=null,$("#filterWizard").modal("hide"),"$apply"!=r.$$phase&&"$digest"!=r.$$phase&&"$apply"!=r.$root.$$phase&&"$digest"!=r.$root.$$phase&&r.$digest()},K=function(a,b,d,e,f,g,h,j){A.startLoading(),z.hideError(),z.hideWarning(),z.hideInfo(),y&&y.clear(),A.setLoading(10),w={applicationName:a,serviceTypeName:b,from:d-e,to:d,originTo:r.oNavbarVoService.getQueryEndTime(),callerRange:r.oNavbarVoService.getCallerRange(),calleeRange:r.oNavbarVoService.getCalleeRange(),period:e,filter:n.encodeURIComponent(f),hint:g?n.encodeURIComponent(g):!1},f?c.getFilteredServerMapData(w,function(a,b,d){if(a)return A.stopLoading(),z.showError("There is some error."),!1;A.setLoading(50),b.from===d.lastFetchedTimestamp?r.$emit("serverMapDirective.allFetched",d):(B.lastFetchedTimestamp=d.lastFetchedTimestamp-1,r.$emit("serverMapDirective.fetched",B.lastFetchedTimestamp,d));var e=JSON.parse(f);B.applicationMapData=c.mergeFilteredMapData(B.applicationMapData,d.applicationMapData);var g=c.extractDataFromApplicationMapData(B.applicationMapData);if(g=c.addFilterProperty(e,g),W(g),i.doFiltersHaveUnknownNode(e))for(var k in r.mergeStatus)r.mergeStatus[k]=!1;N(B),Q(b,g,h,j)}):c.getServerMapData(w,function(a,b,d){if(a||d.exception)return A.stopLoading(),a?z.showError("There is some error."):z.showError(d.exception),r.$emit("serverMapDirective.hasNoData"),!1;A.setLoading(50),N(d),B=d;var e=c.extractDataFromApplicationMapData(d.applicationMapData);W(e),Q(b,e,h,j)})},N=function(a){0===a.applicationMapData.nodeDataArray.length?r.$emit("serverMapDirective.hasNoData"):r.$emit("serverMapDirective.hasData")},L=function(a,b,c,d){r.inspectApplicationName=c,r.inspectCategory=d,r.nodeContextMenuStyle={display:"block",top:a,left:b,"z-index":9999999},r.$digest()},O=function(a,b){r.linkContextMenuStyle={display:"block",top:a,left:b,"z-index":9999999},r.$digest()},P=function(a,b){r.backgroundContextMenuStyle={display:"block",top:a,left:b,"z-index":9999999},r.$digest()},V=function(){var a=[];for(var b in r.mergeStatus)r.mergeStatus[b]===!0&&a.push(b);return a},Q=function(d,e,f,h){var i=V();if(I=c.mergeMultiLinkGroup(c.mergeGroup(e,i),i),A.setLoading(80),0!==I.nodeDataArray.length){I.linkDataArray=R(I.linkDataArray,f,h),A.setLoading(90);var k=a.options;k.fOnNodeSubGroupClicked=function(a,b,d,e){var f=c.getLinkNodeDataByNodeKey(B.applicationMapData,d,e);f.fromNode=c.getNodeDataByKey(B.applicationMapData,f.from),f.toNode=c.getNodeDataByKey(B.applicationMapData,f.to),k.fOnLinkClicked(a,f)},k.fOnNodeClicked=function(a,d,e,f){var g;angular.isDefined(d.unknownNodeGroup)&&!e?d.unknownNodeGroup=c.getUnknownNodeDataByUnknownNodeGroup(B.applicationMapData,d.unknownNodeGroup):g=c.getNodeDataByKey(B.applicationMapData,e||d.key),g&&(d=g),E="node",D=d,r.$emit("serverMapDirective.nodeClicked",a,w,d,I,f),r.oNavbarVoService&&"realtime"===r.oNavbarVoService.getPeriodType()&&b.$broadcast("realtimeChartController.initialize",d.isWas,d.applicationName,r.oNavbarVoService.getApplication()+"/"+r.oNavbarVoService.getReadablePeriod()+"/"+r.oNavbarVoService.getQueryEndDateTime()+"/"+r.oNavbarVoService.getCallerRange()),M()},k.fOnNodeDoubleClicked=function(a,b,c){a.diagram.zoomToRect(b.actualBounds,1.2)},k.fOnNodeContextClicked=function(a,b){if("realtime"!==r.oNavbarVoService.getPeriodType()){M();var d=c.getNodeDataByKey(B.applicationMapData,b.key);d&&(b=d),D=b,u&&b.isWas===!0&&L(a.event.layerY,a.event.layerX,b.applicationName,b.category)}},k.fOnLinkClicked=function(a,b){if(!r.oNavbarVoService.isRealtime()){var d;angular.isDefined(b.unknownLinkGroup)?b.unknownLinkGroup=c.getUnknownLinkDataByUnknownLinkGroup(B.applicationMapData,b.unknownLinkGroup):d=c.getLinkDataByKey(B.applicationMapData,b.key),d&&(d.fromNode=b.fromNode,d.toNode=b.toNode,b=d),E="link",C=b,M(),r.$emit("serverMapDirective.linkClicked",a,w,b,I)}},k.fOnLinkContextClicked=function(a,b){var f=c.getLinkDataByKey(B.applicationMapData,b.key);f&&(f.fromNode=b.fromNode,f.toNode=b.toNode,b=f),M(),C=b,v&&!angular.isArray(b.targetInfo)&&(O(a.event.layerY,a.event.layerX),r.$emit("serverMapDirective.linkContextClicked",a,d,b,e))},k.fOnBackgroundClicked=function(a){r.$emit("serverMapDirective.backgroundClicked",a,d),M()},k.fOnBackgroundDoubleClicked=function(a){S()},k.fOnBackgroundContextClicked=function(a){r.$emit("serverMapDirective.backgroundContextClicked",a,d),M(),x&&P(a.diagram.lastInput.event.layerY,a.diagram.lastInput.event.layerX)};var l;try{l=_.find(I.nodeDataArray,function(a){return a.applicationName===d.applicationName&&angular.isUndefined(d.serviceType)?!0:a.applicationName===d.applicationName&&a.serviceTypeCode===d.serviceTypeCode}),l&&(k.sBoldKey=l.key)}catch(n){z.showError("There is some error while selecting a node."),console.log(n)}A.setLoading(100),null===y?y=new ServerMap(k,m,q):y.option(k),y.load(I),A.stopLoading(),T(l)}else if(A.stopLoading(),r.oNavbarVoService.getFilter()){var o=r.oNavbarVoService.getFilterAsJson(),p=[];p.push("

There is no data with the filter below.

"),angular.forEach(o,function(a,b){p.push("

Filter"),o.length>1&&p.push(" #"+(b+1)),p.push(" : "+a.fa+"("+a.fst+") ~ "+a.ta+"("+a.tst+")
"),p.push("

    "),a.url&&p.push("
  • Url Pattern : "+j.decode(a.url)+"
  • "),a.rf&&a.rt&&p.push("
  • Response Time : "+g("number")(a.rf)+" ms ~ "+g("number")(a.rt)+" ms
  • "),p.push("
  • Transaction Result : "+(a.ie?"Failed Only":"Success + Failed")+"
  • "),p.push("

")}),z.showInfo(p.join(""))}else z.showInfo("There is no data.")},R=function(a,b,c){var d=a;for(var e in d)d[e].from===d[e].to?d[e].routing="AvoidsNodes":d[e].routing=b,d[e].curve=c;return d},U=function(){M();var a=new f;"USER"===C.fromNode.serviceType?a.setImageType("USER").setTitle("USER"):a.setImageType(C.fromNode.serviceType).setTitle(C.fromNode.applicationName),a.setImageType2(C.toNode.serviceType).setTitle2(C.toNode.applicationName),r.fromAgent=C.fromAgent||[],r.toAgent=C.toAgent||[],r.sourceInfo=C.sourceInfo,r.targetInfo=C.targetInfo,r.fromApplicationName=C.fromNode.applicationName,r.toApplicationName=C.toNode.applicationName,F.select2("val",""),G.select2("val",""),r.fromAgentName="",r.toAgentName="",r.$broadcast("sidebarTitleDirective.initialize.forServerMap",a),$("#filterWizard").modal("show"),H||(H=!0,$("#filterWizard").on("shown.bs.modal",function(){if($("slider",this).addClass("auto"),setTimeout(function(){$("#filterWizard slider").removeClass("auto")},500),r.oNavbarVoService.getFilter()){var a=i.findFilterInNavbarVo(C.fromNode.applicationName,C.fromNode.serviceType,C.toNode.applicationName,C.toNode.serviceType,r.oNavbarVoService);if(a){r.urlPattern=a.oServerMapFilterVoService.getRequestUrlPattern(),r.responseTime.from=a.oServerMapFilterVoService.getResponseFrom();var b=a.oServerMapFilterVoService.getResponseTo();r.responseTime.to="max"===b?3e4:b,r.includeFailed=a.oServerMapFilterVoService.getIncludeException(),F.select2("val",a.oServerMapFilterVoService.getFromAgentName()),G.select2("val",a.oServerMapFilterVoService.getToAgentName())}else r.responseTime={from:0,to:3e4}}else r.responseTime={from:0,to:3e4};r.$$phase||r.$digest()}))},r.passingTransactionResponseToScatterChart=function(){r.$emit("serverMapDirective.passingTransactionResponseToScatterChart",D),M()},r.passingTransactionList=function(){q.send(q.CONST.CONTEXT,q.CONST.CLK_FILTER_TRANSACTION);var a=new h;a.setMainApplication(C.filterApplicationName).setMainServiceTypeName(C.filterApplicationServiceTypeName).setMainServiceTypeCode(C.filterApplicationServiceTypeCode).setFromApplication(C.fromNode.applicationName).setFromServiceType(C.fromNode.serviceType).setToApplication(C.toNode.applicationName).setToServiceType(C.toNode.serviceType);var b=new k;C.sourceInfo.isWas&&C.targetInfo.isWas&&b.setHint(C.toNode.applicationName,C.filterTargetRpcList),r.$broadcast("serverMapDirective.openFilteredMap",a,b),M()},r.openFilterWizard=function(){q.send(q.CONST.CONTEXT,q.CONST.CLK_FILTER_TRANSACTION_WIZARD),U()},S=function(){y&&y.zoomToFit()},T=function(a){l(function(){"node"===E&&D?y.highlightNodeByKey(D.key):"link"===E&&C?y.highlightLinkByFromTo(C.from,C.to):a&&y.highlightNodeByKey(a.key)})},r.responseTimeFormatting=function(a){return 3e4==a?"30,000+ ms":g("number")(a)+" ms"},r.passingTransactionMap=function(){var a=new h;a.setMainApplication(C.filterApplicationName).setMainServiceTypeCode(C.filterApplicationServiceTypeCode).setMainServiceTypeName(C.filterApplicationServiceTypeName).setFromApplication(C.fromNode.applicationName).setFromServiceType(C.fromNode.serviceType).setToApplication(C.toNode.applicationName).setToServiceType(C.toNode.serviceType).setResponseFrom(r.responseTime.from).setResponseTo(r.responseTime.to).setIncludeException(r.includeFailed).setRequestUrlPattern(j.encode(r.urlPattern)),r.fromAgentName&&a.setFromAgentName(r.fromAgentName),r.toAgentName&&a.setToAgentName(r.toAgentName);var b=new k;C.sourceInfo.isWas&&C.targetInfo.isWas&&b.setHint(C.toNode.applicationName,C.filterTargetRpcList),r.$broadcast("serverMapDirective.openFilteredMap",a,b),M()},r.toggleMergeGroup=function(a){q.send(q.CONST.CONTEXT,q.CONST.TG_MERGE_TYPE,a),r.mergeStatus[a]=!r.mergeStatus[a],Q(w,c.extractDataFromApplicationMapData(B.applicationMapData),r.linkRouting,r.linkCurve),M()},r.toggleLinkLableTextType=function(a){"tps"===a?(q.send(q.CONST.CONTEXT,q.CONST.TG_TPS),r.totalRequestCount=!1,r.tps=!0):(q.send(q.CONST.CONTEXT,q.CONST.TG_CALL_COUNT),r.totalRequestCount=!0,r.tps=!1),r.totalRequestCount="tps"!==a,r.tps="tps"===a,Q(w,I,r.linkRouting,r.linkCurve),M()},r.toggleLinkRouting=function(b){q.send(q.CONST.CONTEXT,q.CONST.TG_ROUTING,b),r.linkRouting=a.options.htLinkType.sRouting=b,Q(w,I,r.linkRouting,r.linkCurve),M()},r.toggleLinkCurve=function(b){q.send(q.CONST.CONTEXT,q.CONST.TG_CURVE,b),r.linkCurve=a.options.htLinkType.sCurve=b,Q(w,I,r.linkRouting,r.linkCurve),M()},r.refresh=function(){q.send(q.CONST.CONTEXT,q.CONST.CLK_REFRESH),y&&y.refresh(),M()},r.$on("serverMapDirective.initialize",function(a,b){r.oNavbarVoService&&w.applicationName!==b.getApplicationName()&&(E=!1),r.oNavbarVoService=b,r.oNavbarVoService.getQueryEndTime()===!1||r.oNavbarVoService.getQueryStartTime()===!1?r.bShowServerMapStatus=!1:r.bShowServerMapStatus=!0,v=x=!0,u=!1,K(b.getApplicationName(),b.getServiceTypeName(),b.getQueryEndTime(),b.getQueryPeriod(),b.getFilter(),b.getHint(),r.linkRouting,r.linkCurve)}),r.$on("serverMapDirective.fetch",function(a,b,c){K(r.oNavbarVoService.getApplicationName(),r.oNavbarVoService.getServiceTypeName(),c,b,r.oNavbarVoService.getFilter(),r.oNavbarVoService.getHint(),r.linkRouting,r.linkCurve)}),r.$on("serverMapDirective.initializeWithMapData",function(a,b,d,e){M(),r.bShowServerMapStatus=!1,x=!0,u=b,v=!1,w={applicationName:d.applicationId},B=d,r.oNavbarVoService=e,Q(w,c.extractDataFromApplicationMapData(B.applicationMapData),r.linkRouting,r.linkCurve)}),r.$on("serverMapDirective.zoomToFit",function(a){S()}),r.$on("serverMapDirective.openFilterWizard",function(a,b){C=b,U()}),r.searchNodeByEnter=function(a){13==a.keyCode&&r.searchNode()},r.searchNodeWithCategory=function(a){y&&(r.searchNodeIndex=a,y.searchNode(r.searchNodeList[a].applicationName,r.searchNodeList[a].serviceType))},r.searchNode=function(){y&&""!==r.searchNodeQuery&&(q.send(q.CONST.MAIN,q.CONST.CLK_SEARCH_NODE),r.searchNodeIndex=0,r.searchNodeList=y.searchNode(r.searchNodeQuery),jQuery(s).find(".search-result").show().find(".count").html("Result : "+r.searchNodeList.length))},r.clearSearchNode=function(){q.send(q.CONST.MAIN,q.CONST.CLK_CLEAR_SEARCH),y.clearQuery(),r.searchNodeIndex=0,r.searchNodeQuery="",r.searchNodeList=[],jQuery(s).find(".search-result").hide()},r.toggleShowAntStyleHint=function(){r.showAntStyleHint=!r.showAntStyleHint},r.moveToPast=function(){r.$emit("navbarDirective.moveToPast"),J.effect("highlight",{color:"#FFFF00"},1e3)},r.moveToFuture=function(){r.$emit("navbarDirective.moveToFuture"),J.effect("highlight",{color:"#FFFF00"},1e3)},r.toggleToolbar=function(){var a=jQuery(s).find(".servermap-toolbar"),b=jQuery(s).find(".servermap-toolbar-handle span");-1==parseInt(a.css("top"))?(a.find(".search-result").hide(),a.animate({top:-55},"fast",function(){b.addClass("glyphicon-chevron-down").removeClass("glyphicon-chevron-up")})):a.animate({top:-1},"fast",function(){r.searchNodeList.length>0&&a.find(".search-result").show(),b.addClass("glyphicon-chevron-up").removeClass("glyphicon-chevron-down")})},jQuery(".serverMapTooltip").tooltipster({content:function(){return o(p.servermap["default"])},position:"bottom-right",trigger:"click"})}}}])}(),function(){"use strict";pinpointApp.constant("realtimeChartDirectiveConfig",{params:{TIMEOUT_MAX_COUNT:"timeoutMaxCount",SHOW_EXTRA_INFO:"showExtraInfo",REQUEST_LABEL:"requestLabel",REQUEST_COLOR:"requestColor",CHART_COLOR:"chartColor",NAMESPACE:"namespace",XCOUNT:"xcount",HEIGHT:"height",WIDTH:"width"},responseCode:{ERROR_BLACK:111,TIMEOUT:211},consts:{maxDealyCount:5,verticalGridCount:5},message:{NO_ACTIVE_THREAD:"No Active Thread",NO_RESPONSE:"No Response"}}),pinpointApp.directive("realtimeChartDirective",["realtimeChartDirectiveConfig",function(a){return{restrict:"EA",replace:!0,template:'',link:function(b,c,d){function e(){L=d3.select(c.get(0)).attr("width",y.width).attr("height",y.height).append("g").attr("class","base").attr("transform","translate("+(y.showExtraInfo?z.margin.left:0)+","+z.margin.top+")"),L.append("defs").append("clipPath").attr("id","clip-"+y.namespace).append("rect").attr("x",1).attr("y",0).attr("width",A).attr("height",B)}function f(){G.length=0;for(var a=Date.now(),b=0;bA?-1e3:E,V.attr("transform","translate("+(E-z.tooltipWidth)+",0)"),p(o(D))})}function o(a){var b=[];if(-1===a)return b;for(var c=0;c1?(Y.attr("y","20%"),Z.text(b[0]),$.text(b[1])):(Y.attr("y","40%"),Z.text(b[0]),$.text(""))}function t(a){if(y.showExtraInfo!==!1){var b=0;T.data(a).text(function(a,c){return"undefined"!=typeof a.y?(b+=a.y,a.y):""}),U.text(b)}}function u(){I=0}function v(){aa=aa.each(function(){if(I++,0===F.length)return void(I>a.consts.maxDealyCount&&y.showExtraInfo===!1&&s(!1,[a.message.NO_RESPONSE]));u();var b=F.shift();t(b),h(),y.showExtraInfo===!1&&w();var c=0;for(c=0;c",images:{config:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNS4xIFdpbmRvd3MiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QTI2NzMzRDI2QTlGMTFFM0E1RENBRjZGODkwRDBCMEIiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QTI2NzMzRDM2QTlGMTFFM0E1RENBRjZGODkwRDBCMEIiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpBMjY3MzNEMDZBOUYxMUUzQTVEQ0FGNkY4OTBEMEIwQiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpBMjY3MzNEMTZBOUYxMUUzQTVEQ0FGNkY4OTBEMEIwQiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pn/ejkcAAAFwSURBVHjanFKxSsNQFE2CFEtaTNsMCbSQ4lA6GSghi2igo/o/GVz6AfmD/EFGJ7cKDiVLO0hFEByzpG1EA5LUxntC80jFKhi4LzfnnnPfzXmPz7KM+9ezT6iq6gnF+T4Nny88/110VK1WbwRB4OM4vgyC4PVXIQlW9JqRwGo2mzm2XC65zWYzplSnBo1CeFDu1Ov1XhaLhVWpVBimKAqXJInVarWmJGQ42xHjybIcQSSK4rNt29cgOI5jR1Gkk5gLw1DC2LkvWGBCu90eDwaDDOF53hXhhwjf908LHByYBo2ArqZpfnY6HbEYw3XdJ5riAzEajR4LHJxut6syhyhq5c6apt1hdER5EnCIKzFzqPM7fUwkSZrhf+r1+lmaphFqjUZuJIeaYRgT4q7ZqFvxmn7+GAQYBDcRyIGhBs6PN4dyjKLP5/OL4XA4RSAHhlpZs3OO1PF+W3ggwxQ6u7d+v3+7s9Nfd3VrQm3fXf0SYADyptv3yy4A0QAAAABJRU5ErkJggg==",download:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNS4xIFdpbmRvd3MiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6RUU3MjQyMUQ2QTlGMTFFM0IxRTY4MjI3MUU5MUUyMzMiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6RUU3MjQyMUU2QTlGMTFFM0IxRTY4MjI3MUU5MUUyMzMiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpFRTcyNDIxQjZBOUYxMUUzQjFFNjgyMjcxRTkxRTIzMyIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpFRTcyNDIxQzZBOUYxMUUzQjFFNjgyMjcxRTkxRTIzMyIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PlnySxAAAADPSURBVHjaxFLBDYMwDLQjMgEf4M8E4Y0YgzHaTTpGFuDfARAdoH3DiwmQSLmqRIZSpPLpSTH4krOjc9g5R0cQIDDzgozj2Ffrum6xOTcKtqolSUJCuNlR0UH8WTiZcpPGzEaB3xVWVXVO0/QhOeTgP1rKOU7/QdM0RZ7nd2OMwxc5eHkeixEm+71aKUVhGJLWmoZhoL7vaRxHX7xtW/ZzlHOTgDiKIirL8oTcWnuZ914dsyzbfXfoCuAmdV3z15ezBgRr8Nuc4ocRXhGeAgwAFHJVgfQ6KdUAAAAASUVORK5CYII=",fullscreen:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNS4xIFdpbmRvd3MiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QkMwOTc3QTg2QTlGMTFFMzk5MzhBOTM4OEFCMzg3MTciIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QkMwOTc3QTk2QTlGMTFFMzk5MzhBOTM4OEFCMzg3MTciPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpCQzA5NzdBNjZBOUYxMUUzOTkzOEE5Mzg4QUIzODcxNyIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpCQzA5NzdBNzZBOUYxMUUzOTkzOEE5Mzg4QUIzODcxNyIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PvZjiPIAAAE/SURBVHjanFKxaoRAEHXhbM4UopViGWzv0C5VUvsJqdP7A/6Dfb7DMmCVSuRCunClaKUYSKUQM2+zY1SsMjDuuDtv9u3ME9M0af+xAz6u687opmnENslxnFX1uq6FhhvDMKRluofvVeczuMr9vREmhMhRmRy/F3IukhOjM7Mh4B9VNkqQq67rR9u25VnbtsdxHPkZ6zcWRfFAN2qGYVzx3/e9X1XVC2LLsnzTNK8MQK5kCL4AwcqylPTiOH4m8C1igNI0fUIcBEGu3rwGRlFkK3qvRM9XtD+I9h3iLMvaXaDneRdF78T0cHPXdW+Iif6ZgavmALClB9q0nBRw3RyMAa0mWnJzGIbvJEneOeb9hRgEK0e2mjtG9kX+qeJH8hs163lkh2UlVWAruYIlp8ShzeNYqEQqaE9ym638R4ABADZiqF446UJLAAAAAElFTkSuQmCC",error:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABmJLR0QA/wD/AP+gvaeTAAADvUlEQVRoge2ZQW8bRRTHf2+2tMTrkCYFkQ9QqBBKC03aOOkldqtKUcUFqeUbkAN3pFSIGxQOFRx6IN8AJeIYtVIc1xdqHAdCE3EgKeeqNAlV8dIm8u7j0FasHW+8u7E3Rcrv9mbe7P7/mtHsmx044IA9Ie14iI4fP1LdPjYKZEEHBE4g9KOkAUVwUO4rrIIuI9bt9CvrJbl5b2uv796TASc7POgJEyJ6BeiJOPyRotNGrSm78NMvcTXEMuDkMqfVeNdQLsZ9cQO3MDqZnqv8GnVgJAM6MtLlpLyvQD8BrKgva0EN0Rt2zZ6UYvFp2EGhDTzODp0wRmZABuLpC81d18jlnrnyWpjkUAac82fOqMoswht70xaaTU/1g9cKlTutElsa+CebGVbj5RXS7dEWDoGqqHc+VVhcaJEXzLNlY34EjrVVXXjWXSOjuy0nE9ShY2OvGmO+Z//EA7xued4POjLSFZQQaMCxnnwNvNcRWZGQAafL/SKwt1mjk8ucVvEWaP9WGRcXo0PNvhNNZ0CNd42XRzyAhUrTWdgxA052eFCNLnZeU2RUxBu084tL/sYdM+AJE8lpioR4mI93NPoDHT9+xNnue0D0wiwZhL/sXqdfZn7bftFUNwPVrb5zvKziAZTe6kYq42+qX0IiY0nqiYWRXF1Y1yneqUTFxEE56Q8P+QNReSvsc+x8uV2SAHAuDIfKE3jbHzfuQm+2S1AHqdPYaCDRijMm3f4gsBb6v9BooLovKqKgPPaHjQYeJCglHsKf/rBuF1JYFXgnzHPC7hrtRlR+98cNM6B3kxQTD132Rw0GTDFBJbFwhYI/rjOQPrxxB3iUqKJobHb3OXVf0DoDcvPelqrMJKspPCpM+ytRaPIdMMh3yUmKhIroVGPjDgPPf7TeSkRSNGZDn4kR61Og1mlFEajh8VmzjqYG0vnSCqI3OqspAqLfpm8vNN3iA2shu2ZPAktB/QmybDuHPg/qDDQgxeJT18hHwHpHZIVBeVhT90MplZ4EpexajfbMldeMepdkH4o8gaqIXjpa+PmP3fJaltPP/g5rDuVh++S1ZFPgoj1fqbRKDHUesOcrFdeSc0AStdJSTd2zqfmFUpjk0Aeanrnymu2mMijf0JkttgZy3XZTo62WjZ9Yl3zV7NlTWHyJMh73GT4UmEWsq+l8aSXq4L1ds14Yet9TMyHCFZTeiMM3VZgW0ak4t5MvaM9F9+V3D1c3UhmM5FBOPv/10c9/B/C/Ue4LsuoZXVFlvrvPKTcWZgccsA/8C1bvKjPyfF8QAAAAAElFTkSuQmCC"},options:{containerId:"",containerClass:"bigscatterchart",width:400,height:250,minX:0,maxX:1e3,minY:0,maxY:1e4,minZ:0,maxZ:5,bubbleSize:3,labelX:"",labelY:"(ms)",realtime:!1,chartAnimationTime:300,gridAxisStyle:{lineWidth:1,lineDash:[1,0],globalAlpha:1,strokeStyle:"#e3e3e3"},padding:{top:40,left:50,right:40,bottom:30},typeInfo:{0:["Failed","#d62728",20],1:["Success","#2ca02c",10]},propertyIndex:{x:0,y:1,meta:2,transactionId:3,type:4,groupCount:5},checkBoxImage:{checked:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNS4xIFdpbmRvd3MiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6ODk0MjRENUI2Qjk2MTFFM0E3NkNCRkIyQTkxMjZFQjMiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6ODk0MjRENUM2Qjk2MTFFM0E3NkNCRkIyQTkxMjZFQjMiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo4OTQyNEQ1OTZCOTYxMUUzQTc2Q0JGQjJBOTEyNkVCMyIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo4OTQyNEQ1QTZCOTYxMUUzQTc2Q0JGQjJBOTEyNkVCMyIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PkJ02akAAAEfSURBVHjalJI/aoRQEMbnrU8RRVYsBAXJASxEtLGRXEDIJXKTpPcOHiDl1gsp1QvEIiD2AbGLmpm3f7Is68YMjOOb9/0Y/Rg2zzPEcTzDP6IsS7Y5QXTAsibFIH4BQVVVi1Mcx9liyTFN13W/+JpPI0iSpL1hGEHf9+E0TSBAxtifkGVZgSzLgBkMwwCbNZNOEIVpmo3v+78gigLMt+O/3IR0XW/yPH/uuu4AEqQoComeSIznhyUoDMP3cRwPoKZpLyjaqqoKJOacfy5B6Mc39QRYFMUrOtbQO4lt24Z70BlMkqSkSxJdmrMEiYiiSGwOrh6v6/oxTdMP6lGlM/Wv3RYMPY55hrMs292DKNn1kqOb4HketG0L5N5CsB8BBgCZjoUNsxfiYwAAAABJRU5ErkJggg==",unchecked:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNS4xIFdpbmRvd3MiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6OEQxQ0ZERUQ2Qjk2MTFFMzg5MjNGMjAzRjdCQ0FEMjkiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6OEQxQ0ZERUU2Qjk2MTFFMzg5MjNGMjAzRjdCQ0FEMjkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo4RDFDRkRFQjZCOTYxMUUzODkyM0YyMDNGN0JDQUQyOSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo4RDFDRkRFQzZCOTYxMUUzODkyM0YyMDNGN0JDQUQyOSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pq1+Js8AAABTSURBVHjaYvz//z+DiYnJfwYSwJkzZxgZjY2NYZoYidQHVs9Eoia4WhY0JxDUBfQWA7KNRGlCVsfEQCYY1UhLjf9hEUtEAgAnOUZyEjlIH0CAAQDn/BlKI9rDJAAAAABJRU5ErkJggg==" -}}}),pinpointApp.directive("scatterDirective",["scatterDirectiveConfig","$rootScope","$compile","$timeout","webStorage","$window","$http","CommonAjaxService","TooltipService","AnalyticsService","PreferenceService",function(a,b,c,d,e,f,g,h,i,j,k){return{template:a.template,restrict:"EA",replace:!0,link:function(c,g,l){function m(c,g,h,l,m){var n=v.getQueryStartTime(),o=v.getQueryEndTime(),p=v.getFilter(),q=g.split("^")[0],r={};angular.copy(a.options,r),r.sPrefix="BigScatterChart2-"+parseInt(1e5*Math.random()),r.containerId=c,r.width=h?h:400,r.height=l?l:250,r.minX=n,r.maxX=o,r.errorImage=a.images.error,r.realtime=u();var s=new BigScatterChart2(r,t(m),[new BigScatterChart2.SettingPlugin(a.images.config).addCallback(function(a,b){e.add("scatter-y-min",b.min),e.add("scatter-y-max",b.max),a.changeRangeOfY(b),a.redraw()}),new BigScatterChart2.DownloadPlugin(a.images.download,"PNG").addCallback(function(a){j.send(j.CONST.MAIN,j.CONST.CLK_DOWNLOAD_SCATTER)}),new BigScatterChart2.WideOpenPlugin(a.images.fullscreen).addCallback(function(){var a=v.isRealtime()?"realtime/"+v.getQueryEndDateTime():v.getPartialURL(!1,!0);f.open("#/scatterFullScreenMode/"+x.applicationName+"@"+x.serviceType+"/"+a+"/"+t().join(","),"width=900, height=700, resizable=yes")}),new BigScatterChart2.HelpPlugin(i)],{sendAnalytics:function(a,b){j.send(j.CONST.MAIN,j.CONST["Success"===a?"TG_SCATTER_SUCCESS":"TG_SCATTER_FAILED"],j.CONST[b?"ON":"OFF"])},loadFromStorage:function(a){return e.get(a)},onSelect:function(a,b){if(3===arguments.length)f.open("#/transactionList/"+v.getPartialURL(!0,!1),g+"|"+arguments[0]+"|"+arguments[1]+"|"+arguments[2]);else{var c=g+"|"+b.fromX+"|"+b.toX+"|"+b.fromY+"|"+b.toY;f.open("#/transactionList/"+v.getPartialURL(!0,!1),c)}},onError:function(){}},k.getAgentAllStr());return d(function(){angular.isUndefined(m)?s.drawWithDataSource(new BigScatterChart2.DataLoadManager(q,p,{url:a.scatterDataUrl,realtime:u(),realtimeInterval:2e3,realtimeDefaultTimeGap:5e3,realtimeResetTimeGap:2e4,fetchLimit:5e3,fetchingInterval:2e3,useIntervalForFetching:!1},function(a,c,d){v.setQueryEndDateTime(c),b.$broadcast("responseTimeChartDirective.loadRealtime",q,s.getCurrentAgent(),a.min,a.max)})):s.addBubbleAndMoveAndDraw(s.createDataBlock(m)),f.htoScatter[g]=s},100),s}function n(a,b,c){g.children().hide(),r(),angular.isDefined(w[a])?(w[a].target.show(),u()?h.getServerTime(function(b){w[a].scatter.resume(b-k.getRealtimeScatterXRange(),b),w[a].scatter.selectAgent(k.getAgentAllStr(),!0)}):(w[a].scatter.resume(),w[a].scatter.selectAgent(k.getAgentAllStr(),!0))):p(a,b,c)}function o(a,b,c,d){angular.isDefined(w[a])?w[a].scatter.addBubbleAndMoveAndDraw(w[a].scatter.createDataBlocK(d)):p(a,b,c,d).hide()}function p(b,c,d,e){var f=angular.element(a.template),h=m(f,b,c,d,e);return w[b]={target:f,scatter:h},g.append(f),f}function q(a){g.children().hide(),angular.isDefined(w[a])&&(w[a].target.show(),w[a].scatter.selectAgent(k.getAgentAllStr(),!0))}function r(){angular.forEach(w,function(a,b){a.scatter.pause()})}function s(){for(var a in w)w[a].scatter.abort();w={}}function t(a){var b,c=[];if("undefined"!=typeof a)return $.each(a.scatter.metadata,function(a,b){c.push(b[0])}),c;if(x.agentList)return x.agentList;if(x.serverList)for(b in x.serverList){var d=x.serverList[b].instanceList;for(var e in d)c.push(d[e].name)}return c}function u(){return"realtime"===v.getPeriodType()}var v=null,w={},x=null;c.$on("scatterDirective.initialize",function(a,b){v=b,s(),g.empty()}),c.$on("scatterDirective.initializeWithNode",function(a,b,d,e){c.currentAgent=k.getAgentAllStr(),x=b,n(b.key,d,e)}),c.$on("scatterDirective.initializeWithData",function(a,b,d){c.currentAgent=k.getAgentAllStr();var e=b.split("^");x={applicationName:e[0],serviceType:e[1],key:b},o(b,null,null,d)}),c.$on("scatterDirective.showByNode",function(a,b){x=b,q(b.key)}),c.$on("responseTimeChartDirective.showErrorTransacitonList",function(b,c){f.htoScatter[x.key].selectType("Failed").fireDragEvent({animate:function(){},css:function(b){return"left"===b?a.options.padding.left+"px":"top"===b?a.options.padding.top+"px":"0px"},width:function(){return a.options.width-a.options.padding.left-a.options.padding.right},height:function(){return a.options.height-a.options.padding.top-a.options.padding.bottom}})}),c.$on("changedCurrentAgent",function(a,b){w[x.key].scatter.selectAgent(b)})}}}])}(),function(){"use strict";pinpointApp.constant("nodeInfoDetailsDirectiveConfig",{maxTimeToShowLoadAsDefaultForUnknown:43200}),pinpointApp.directive("nodeInfoDetailsDirective",["nodeInfoDetailsDirectiveConfig","$filter","$timeout","isVisibleService","$window","AnalyticsService","PreferenceService","TooltipService","CommonAjaxService",function(a,b,c,d,e,f,g,h,i){return{restrict:"EA",replace:!0,templateUrl:"features/nodeInfoDetails/nodeInfoDetails.html?v="+G_BUILD_TIME,scope:{},link:function(j,k){function l(a){var b=g.getResponseTypeFormat();return $.each(a,function(a,c){$.each(c,function(a,c){b[a]+=c})}),b}function m(a){var b=[];return $.each(a,function(a,c){for(var d=0;d0&&j.errorServerCount++}/_GROUP$/.test(b.serviceType)===!1?(j.showNodeResponseSummary=!0,j.showNodeLoad=!0,B("forNode",b.applicationName,b.histogram,"100%","150px"),C("forNode",b.applicationName,b.timeSeriesHistogram,"100%","220px",!0)):/_GROUP$/.test(b.serviceType)&&(j.showNodeResponseSummaryForUnknown=!(j.oNavbarVoService.getPeriod()<=a.maxTimeToShowLoadAsDefaultForUnknown),y(b),j.htLastUnknownNode=b,c(function(){k.find('[data-toggle="tooltip"]').tooltip("destroy").tooltip()})),"$apply"!=j.$$phase&&"$digest"!=j.$$phase&&"$apply"!=j.$root.$$phase&&"$digest"!=j.$root.$$phase&&j.$digest()},y=function(a){c(function(){angular.forEach(a.unknownNodeGroup,function(a){var c=a.applicationName,e=b("applicationNameToClassName")(c);if(!angular.isDefined(p[c])&&!angular.isDefined(q[c])){var f=".nodeInfoDetails .summaryCharts_"+e,g=angular.element(f),h=d(g.get(0),1);h&&(j.showNodeResponseSummaryForUnknown?(p[c]=!0,B(null,c,a.histogram,"360px","180px")):(q[c]=!0,C(null,c,a.timeSeriesHistogram,"360px","200px",!0)))}})})},B=function(a,c,d,e,f){var g=b("applicationNameToClassName")(c);a=a||"forNode_"+g,j.$broadcast("responseTimeChartDirective.initAndRenderWithData."+a,d,e,f,!1,!0)},C=function(a,c,d,e,f,g){var h=b("applicationNameToClassName")(c);a=a||"forNode_"+h,j.$broadcast("loadChartDirective.initAndRenderWithData."+a,d,e,f,g)},v=function(a){for(var b=null,c=0;c-1||b.totalCount.toString().indexOf(a)>-1:!0},j.showServerList=function(){f.send(f.CONST.MAIN,f.CONST.CLK_SHOW_SERVER_LIST),j.$emit("serverListDirective.show",!0,o,j.oNavbarVoService)},j.$on("nodeInfoDetailsDirective.initialize",function(a,b,c,d,e,f,g,h){A(),w(),r=c,u=d.key,o=d,j.htLastUnknownNode=!1,j.oNavbarVoService=f,j.nodeSearch=h||"",n=e,x(d)}),j.$on("nodeInfoDetailsDirective.hide",function(a){z()}),j.$on("nodeInfoDetailsDirective.lazyRendering",function(a,b){y(o)}),j.$on("responseTimeChartDirective.itemClicked.forNode",function(a,b){}),j.$on("responseTimeChartDirective.loadRealtime",function(a,b,c,d,e){D===!1&&(D=!0,i.getResponseTimeHistogramData({applicationName:j.node.applicationName,serviceTypeName:j.node.category,from:d,to:e},function(a){c===g.getAgentAllStr()?(B("forNode",j.node.applicationName,l(a.summary),"100%","150px"),C("forNode",j.node.applicationName,m(a.timeSeries),"100%","220px",!0)):(B("forNode",j.node.applicationName,a.summary[c],"100%","150px"),C("forNode",j.node.applicationName,a.timeSeries[c],"100%","220px",!0)),D=!1},function(){D=!1}))}),j.$on("changedCurrentAgent",function(a,b){var c=null,d=null;b===g.getAgentAllStr()?(c=j.node.histogram,d=j.node.timeSeriesHistogram):(c=j.node.agentHistogram[b],d=j.node.agentTimeSeriesHistogram[b]),B("forNode",j.node.applicationName,c,"100%","150px"),C("forNode",j.node.applicationName,d,"100%","220px",!0)}),h.init("responseSummaryChart"),h.init("loadChart")}}}])}(),function(){"use strict";pinpointApp.constant("linkInfoDetailsDirectiveConfig",{maxTimeToShowLoadAsDefaultForUnknown:43200}),pinpointApp.directive("linkInfoDetailsDirective",["linkInfoDetailsDirectiveConfig","$filter","ServerMapFilterVoService","filteredMapUtilService","$timeout","isVisibleService","ServerMapHintVoService","AnalyticsService","$window",function(a,b,c,d,e,f,g,h,i){return{restrict:"EA",replace:!0,templateUrl:"features/linkInfoDetails/linkInfoDetails.html?v="+G_BUILD_TIME,scope:!0,link:function(j,k,l){var m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D;j.linkSearch="",s=!1,t=!1,q=!1,j.htLastUnknownLink=!1,angular.element(i).bind("resize",function(a){q&&n.targetRawData&&z(n)}),k.find(".unknown-list").bind("scroll",function(a){z(n)}),v=function(){m=!1,n=!1,o={},r={},p={},j.linkCategory=null,j.unknownLinkGroup=null,j.showLinkInfoDetails=!1,j.showLinkResponseSummary=!1,j.showLinkLoad=!1,j.showLinkServers=!1,j.linkSearch="",j.linkOrderBy="totalCount",j.linkOrderByNameClass="",j.linkOrderByCountClass="glyphicon-sort-by-order-alt",j.linkOrderByDesc=!0,j.sourceApplicationName="",j.sourceHistogram=!1,j.namespace=null,j.$$phase||j.$digest()},w=function(b){if(j.link=b,b.unknownLinkGroup)j.unknownLinkGroup=b.unknownLinkGroup,j.htLastUnknownLink=b,j.showLinkResponseSummaryForUnknown=!(j.oNavbarVoService.getPeriod()<=a.maxTimeToShowLoadAsDefaultForUnknown),z(b),e(function(){k.find('[data-toggle="tooltip"]').tooltip("destroy").tooltip()});else{j.showLinkResponseSummary=!0,j.showLinkLoad=!0,y("forLink",b.targetInfo.applicationName,b.histogram,"100%","150px"),x("forLink",b.targetInfo.applicationName,b.timeSeriesHistogram,"100%","220px",!0),j.showLinkServers=!_.isEmpty(b.sourceHistogram),j.sourceApplicationName=b.sourceInfo.applicationName,j.sourceHistogram=b.sourceHistogram,j.fromNode=b.fromNode,j.serverCount=0,j.errorServerCount=0;for(var c in j.sourceHistogram)j.serverCount++,j.sourceHistogram[c].Error>0&&j.errorServerCount++}j.showLinkInfoDetails=!0,j.$$phase||j.$digest()},z=function(a){e(function(){angular.forEach(a.unknownLinkGroup,function(a,c){var d=a.targetInfo.applicationName,e=b("applicationNameToClassName")(d);if(!angular.isDefined(o[d])&&!angular.isDefined(p[d])){var g=".linkInfoDetails .summaryCharts_"+e,h=angular.element(g),i=f(h.get(0),1);i&&(j.showLinkResponseSummaryForUnknown?(o[d]=!0,C(null,a,"360px","180px")):(p[d]=!0,x(null,d,a.timeSeriesHistogram,"360px","200px",!0)))}})})},y=function(a,e,f,h,i){var k=b("applicationNameToClassName")(e);a=a||"forLink_"+k,"forLink"===a&&s?j.$broadcast("responseTimeChartDirective.updateData."+a,f):("forLink"===a&&(s=!0),j.$broadcast("responseTimeChartDirective.initAndRenderWithData."+a,f,h,i,!0,!0),j.$on("responseTimeChartDirective.itemClicked."+a,function(a,b){var e=b.responseTime,f=b.count,h=new c;h.setMainApplication(n.filterApplicationName).setMainServiceTypeCode(n.filterApplicationServiceTypeCode),"USER"===n.sourceInfo.serviceType?h.setFromApplication("USER").setFromServiceType("USER"):h.setFromApplication(n.sourceInfo.applicationName).setFromServiceType(n.sourceInfo.serviceType),h.setToApplication(n.targetInfo.applicationName).setToServiceType(n.targetInfo.serviceType),"error"===e.toLowerCase()?h.setIncludeException(!0):"slow"===e.toLowerCase()?h.setResponseFrom(1e3*d.getStartValueForFilterByLabel(e,f)).setIncludeException(!1).setResponseTo("max"):h.setResponseFrom(1e3*d.getStartValueForFilterByLabel(e,f)).setIncludeException(!1).setResponseTo(1e3*parseInt(e,10));var i=new g;n.sourceInfo.isWas&&n.targetInfo.isWas&&i.setHint(n.targetInfo.applicationName,n.filterTargetRpcList),j.$emit("linkInfoDetailsDirective.ResponseSummary.barClicked",h,i)}))},C=function(a,e,f,h){var i=b("applicationNameToClassName")(e.targetInfo.applicationName);a=a||"forLink_"+i,"forLink"===a&&s?j.$broadcast("responseTimeChartDirective.updateData."+a,e.histogram):("forLink"===a&&(s=!0),j.$broadcast("responseTimeChartDirective.initAndRenderWithData."+a,e.histogram,f,h,!0,!0),j.$on("responseTimeChartDirective.itemClicked."+a,function(a,b){var f=b.responseTime,h=b.count,i=new c;i.setMainApplication(e.filterApplicationName).setMainServiceTypeCode(e.filterApplicationServiceTypeCode),"USER"===e.sourceInfo.serviceType?i.setFromApplication("USER").setFromServiceType("USER"):i.setFromApplication(e.sourceInfo.applicationName).setFromServiceType(e.sourceInfo.serviceType),i.setToApplication(e.targetInfo.applicationName).setToServiceType(e.targetInfo.serviceType),"error"===f.toLowerCase()?i.setIncludeException(!0):"slow"===f.toLowerCase()?i.setResponseFrom(1e3*d.getStartValueForFilterByLabel(f,h)).setIncludeException(!1).setResponseTo("max"):i.setResponseFrom(1e3*d.getStartValueForFilterByLabel(f,h)).setIncludeException(!1).setResponseTo(1e3*parseInt(f,10));var k=new g;e.sourceInfo.isWas&&e.targetInfo.isWas&&k.setHint(e.targetInfo.applicationName,e.filterTargetRpcList),j.$emit("linkInfoDetailsDirective.ResponseSummary.barClicked",i,k)}))},x=function(a,c,d,e,f,g){var h=b("applicationNameToClassName")(c);a=a||"forLink_"+h,"forLink"===a&&t?j.$broadcast("loadChartDirective.updateData."+a,d):("forLink"===a&&(t=!0),j.$broadcast("loadChartDirective.initAndRenderWithData."+a,d,e,f,g))},D=function(a){for(var b=null,c=0;c-1||b.totalCount.toString().indexOf(a)>-1:!0},j.passingTransactionMapFromLinkInfoDetails=function(a){var b=D(a),d=new c;d.setMainApplication(b.filterApplicationName).setMainServiceTypeCode(b.filterApplicationServiceTypeCode).setFromApplication(b.sourceInfo.applicationName).setFromServiceType(b.sourceInfo.serviceType).setToApplication(b.targetInfo.applicationName).setToServiceType(b.targetInfo.serviceType);var e=new g;b.sourceInfo.isWas&&b.targetInfo.isWas&&e.setHint(b.toNode.applicationName,b.filterTargetRpcList),j.$emit("linkInfoDetailsDirective.openFilteredMap",d,e)},j.openFilterWizard=function(a){var b=D(a);j.$emit("linkInfoDetailsDirective.openFilterWizard",b)},j.renderLinkAgentCharts=function(a){angular.isDefined(r[a])||(r[a]=!0,y(null,a,n.sourceHistogram[a],"100%","150px"),x(null,a,n.sourceTimeSeriesHistogram[a],"100%","200px",!0))},j.linkSearchChange=function(){z(n)},j.$on("linkInfoDetailsDirective.hide",function(a){A()}),j.$on("linkInfoDetailsDirective.initialize",function(a,b,c,d,e,f,g){B(),v(),m=c,u=d.key,n=d,j.htLastUnknownLink=!1,j.oNavbarVoService=f,w(d)}),j.$on("linkInfoDetailsDirective.lazyRendering",function(a,b){z(n)})}}}])}(),function(){"use strict";pinpointApp.constant("agentListConfig",{}),pinpointApp.directive("agentListDirective",["agentListConfig","$rootScope","AgentAjaxService","TooltipService","AnalyticsService",function(a,b,c,d,e){return{restrict:"EA",replace:!0,templateUrl:"features/agentList/agentList.html?v="+G_BUILD_TIME,link:function(a,b,f){d.init("agentList");var g={sign:{100:"ok-sign",200:"minus-sign",201:"minus-sign",300:"remove-sign","-1":"question-sign"},color:{100:"#40E340",200:"#F00",201:"#F00",300:"#AAA","-1":"#AAA"}},h=function(b,d,e,f,g){c.getAgentList({application:b,from:e,to:f},function(b){b.errorCode||b.status||(a.agentGroup=b,a.select(i(g)))})},i=function(b){for(var c in a.agentGroup)for(var d in a.agentGroup[c])if(a.agentGroup[c][d].agentId===b)return a.agentGroup[c][d];return!1};a.select=function(b){e.send(e.CONST.INSPECTOR,e.CONST.CLK_CHANGE_AGENT),a.currentAgent=b,a.$emit("agentListDirective.agentChanged",b)},a.getState=function(a){return g.sign[a+""]},a.getStateColor=function(a){return g.color[a+""]},a.$on("agentListDirective.initialize",function(a,b){h(b.getApplicationName(),b.getServiceTypeName(),b.getQueryStartTime(),b.getQueryEndTime(),b.getAgentId())})}}}])}(),function(a){"use strict";pinpointApp.constant("agentInfoConfig",{agentStatUrl:"/getAgentStat.pinpoint"}),pinpointApp.directive("agentInfoDirective",["agentInfoConfig","$timeout","AlertsService","ProgressBarService","AgentDaoService","AgentAjaxService","TooltipService","AnalyticsService",function(b,c,d,e,f,g,h,i){return{restrict:"EA",replace:!0,templateUrl:"features/agentInfo/agentInfo.html?v"+G_BUILD_TIME,link:function(b,j,k){b.agentInfoTemplate="features/agentInfo/agentInfoReady.html?v="+G_BUILD_TIME,b.showEventInfo=!1,b.showDetail=!1,b.selectTime=-1;var l,m=null,n=!1,o=new d,p=new e,q=null,r=function(c){null===q&&(q=a("#target-picker"),q.datetimepicker({dateFormat:"yy-mm-dd",timeFormat:"HH:mm:ss",controlType:"select",showButtonPanel:!0,onSelect:function(){},onClose:function(a){var c=moment(a,"YYYY-MM-DD HH:mm:ss").valueOf();b.selectTime!==c&&m.setSelectTime(c)}}),a("#ui-datepicker-div").addClass("inspector-datepicker")),s(c)},s=function(a){q.datetimepicker("setDate",new Date(a))},t=function(c,d){null!==m?m.emptyData():m=new TimeSlider("timeSlider",{width:a("#timeSlider").get(0).getBoundingClientRect().width,height:90,handleSrc:"images/handle.png",timeSeries:d?d:z(c),handleTimeSeries:c,selectTime:c[1],eventData:[]}).addEvent("clickEvent",function(a){y(a[2])}).addEvent("selectTime",function(a){b.selectTime=a,x(a),v(),s(a)}).addEvent("changeSelectionZone",function(a){w(b.agent.agentId,a,u(a[0],a[1]),function(){})}).addEvent("changeSliderTimeSeries",function(a){})},u=function(a,b){return(b-a)/1e3/60},v=function(){m.setDefaultStateLineColor(TimeSlider.EventColor[100==b.agent.status.state.code?"10100":"10200"])},w=function(a,d,e,h){p.startLoading(),p.setLoading(40),g.getAgentStateForChart({agentId:a,from:d[0],to:d[1],sampleRate:f.getSampleRate(e)},function(a){return a.errorCode||a.status?(p.stopLoading(),void o.showError("There is some error.")):(b.agentStat=a,angular.isDefined(a.type)&&a.type&&(b.agent.jvmGcType=a.type),p.setLoading(80),C(a),c(function(){p.setLoading(100),p.stopLoading()},700),void h())})},x=function(a){p.startLoading(),p.setLoading(40),g.getAgentInfo({agentId:b.agent.agentId,timestamp:a},function(a){var c=b.agent.jvmGcType;p.setLoading(80),b.agent=a,b.agent.jvmGcType=c,b.currentServiceInfo=B(a),p.setLoading(100),p.stopLoading()})},y=function(a){g.getEvent({agentId:b.agent.agentId,eventTimestamp:a.eventTimestamp,eventTypeCode:a.eventTypeCode},function(a){a.errorCode||a.status?o.showError("There is some error."):(b.eventInfo=a,b.showEventInfo=!0)})},z=function(a){var b=a[0],c=a[1],d=1728e5,e=c-b;return e>d?[c-d,c]:[c-3*e,c]},A=function(){n===!1&&(h.init("heap"),h.init("permGen"),h.init("cpuUsage"),h.init("tps"),n=!0)},B=function(a){if(a.serverMetaData&&a.serverMetaData.serviceInfos)for(var b=a.serverMetaData.serviceInfos,c=0;c0)return b[c]},C=function(a){var c={id:"heap",title:"Heap Usage",span:"span12",line:[{id:"JVM_MEMORY_HEAP_USED",key:"Used",values:[],isFgc:!1},{id:"JVM_MEMORY_HEAP_MAX",key:"Max",values:[],isFgc:!1},{id:"fgc",key:"FGC",values:[],bar:!0,isFgc:!0}]},d={id:"nonheap",title:"PermGen Usage",span:"span12",line:[{id:"JVM_MEMORY_NON_HEAP_USED",key:"Used",values:[],isFgc:!1},{id:"JVM_MEMORY_NON_HEAP_MAX",key:"Max",values:[],isFgc:!1},{id:"fgc",key:"FGC",values:[],bar:!0,isFgc:!0}]},e={id:"cpuLoad",title:"JVM/System Cpu Usage",span:"span12",isAvailable:!1},g={id:"tps",title:"Transactions Per Second",span:"span12",isAvailable:!1};b.memoryGroup=[c,d],b.cpuLoadChart=e,b.tpsChart=g,b.$broadcast("jvmMemoryChartDirective.initAndRenderWithData.forHeap",f.parseMemoryChartDataForAmcharts(c,a),"100%","270px"),b.$broadcast("jvmMemoryChartDirective.initAndRenderWithData.forNonHeap",f.parseMemoryChartDataForAmcharts(d,a),"100%","270px"),b.$broadcast("cpuLoadChartDirective.initAndRenderWithData.forCpuLoad",f.parseCpuLoadChartDataForAmcharts(e,a),"100%","270px"),b.$broadcast("tpsChartDirective.initAndRenderWithData.forTps",f.parseTpsChartDataForAmcharts(g,a),"100%","270px")},D=function(a,b){g.getEventList({agentId:a,from:b[0],to:b[1]},function(a){a.errorCode||a.status?o.showError("There is some error."):m.addEventData(a)})},E=function(a,c){b.cpuLoadChart.isAvailable&&b.$broadcast("cpuLoadChartDirective.showCursorAt.forCpuLoad",c.index)},F=function(a,c){b.tpsChart.isAvailable&&b.$broadcast("tpsChartDirective.showCursorAt.forTps",c.index)};b.formatDate=function(a){return moment(a).format("YYYY.MM.DD HH:mm:ss")},b.hideEventInfo=function(){b.showEventInfo=!1},b.zoomInTimeSlider=function(){m.zoomIn()},b.zoomOutTimeSlider=function(){m.zoomOut();var a=m.getSliderTimeSeries();D(b.agent.agentId,a)},b.toggleShowDetail=function(){i.send(i.CONST.INSPECTOR,i.CONST.CLK_SHOW_SERVER_TYPE_DETAIL),b.showDetail=!b.showDetail},b.hasDuplicate=function(a,c){for(var d=b.currentServiceInfo.serviceLibs.length,e=!1,f=0;d>f;f++)if(b.currentServiceInfo.serviceLibs[f]==a&&f!=c){e=!0;break}return e?"color:red":""},b.selectServiceInfo=function(a){a.serviceLibs.length>0&&(b.currentServiceInfo=a)},b.$on("agentInfoDirective.initialize",function(a,d,e){l=d,b.agentInfoTemplate="features/agentInfo/agentInfoMain.html?v="+G_BUILD_TIME,b.agent=e,b.chartGroup=null,b.currentServiceInfo=B(e);var f,g,h=[];null===m?(h[0]=l.getQueryStartTime(),h[1]=l.getQueryEndTime(),g=l.getPeriod()):(h=m.getSelectionTimeSeries(),f=m.getSliderTimeSeries(),g=u(h[0],h[1])),-1===b.selectTime?b.selectTime=l.getQueryEndTime():b.selectTime!==l.getQueryEndTime()&&x(b.selectTime),c(function(){w(e.agentId,h,g,function(){r(b.selectTime),A(),t(h,f),v(),D(e.agentId,f||z(h))}),b.$apply()})}),b.$on("jvmMemoryChartDirective.cursorChanged.forHeap",function(a,c){b.$broadcast("jvmMemoryChart.showCursorAt.forNonHeap",c.index),E(a,c),F(a,c)}),b.$on("jvmMemoryChartDirective.cursorChanged.forNonHeap",function(a,c){b.$broadcast("jvmMemoryChartDirective.showCursorAt.forHeap",c.index),E(a,c),F(a,c)}),b.$on("cpuLoadChartDirective.cursorChanged.forCpuLoad",function(a,c){b.$broadcast("jvmMemoryChartDirective.showCursorAt.forHeap",c.index),b.$broadcast("jvmMemoryChartDirective.showCursorAt.forNonHeap",c.index),F(a,c)}),b.$on("tpsChartDirective.cursorChanged.forTps",function(a,c){b.$broadcast("jvmMemoryChartDirective.showCursorAt.forHeap",c.index),b.$broadcast("jvmMemoryChartDirective.showCursorAt.forNonHeap",c.index),E(a,c)})}}}])}(jQuery),function(){"use strict";pinpointApp.constant("timeSliderDirectiveConfig",{scaleCount:10}),pinpointApp.directive("timeSliderDirective",["timeSliderDirectiveConfig","$timeout","AnalyticsService",function(a,b,c){return{restrict:"EA",replace:!0,templateUrl:"features/timeSlider/timeSlider.html?v="+G_BUILD_TIME,link:function(d,e,f){var g,h,i,j,k,l,m;g=e.find(".timeslider_input"),d.oTimeSliderVoService=null,d.disableMore=!1,d.done=!1,h=function(a){d.oTimeSliderVoService=a,d.oTimeSliderVoService.getReady()!==!1&&(b(function(){g.jslider({from:d.oTimeSliderVoService.getFrom(),to:d.oTimeSliderVoService.getTo(),scale:j(i()),skin:"round_plastic",calculate:function(a){return k(a)},beforeMouseDown:function(a,b){return!1},beforeMouseMove:function(a,b){return!1}}),e.find(".jslider-pointer-from").addClass("jslider-transition"),e.find(".jslider-bg .v").addClass("jslider-transition")},100),m())},m=function(){d.oTimeSliderVoService.getCount()&&d.oTimeSliderVoService.getTotal()&&d.oTimeSliderVoService.getCount()>=d.oTimeSliderVoService.getTotal()&&(d.disableMore=!0)},i=function(){var b=d.oTimeSliderVoService.getFrom(),c=d.oTimeSliderVoService.getTo(),e=c-b,f=e/(a.scaleCount-1),g=[];return _.times(a.scaleCount,function(a){g.push(b+f*a)}),g},j=function(a){var b=[];return _.each(a,function(a){b.push(k(a))}),b},k=function(a){return moment(a).format("HH:mm")},l=function(a,b){g.jslider("value",a,b)},d.more=function(){c.send(c.CONST.CALLSTACK,c.CONST.CLK_MORE),d.$emit("timeSliderDirective.moreClicked",d.oTimeSliderVoService)},d.$on("timeSliderDirective.initialize",function(a,b){h(b),m()}),d.$on("timeSliderDirective.setInnerFromTo",function(a,b){d.oTimeSliderVoService=b,l(b.getInnerFrom(),b.getInnerTo()),m()}),d.$on("timeSliderDirective.enableMore",function(a){d.disableMore=!1}),d.$on("timeSliderDirective.disableMore",function(a){d.disableMore=!0}),d.$on("timeSliderDirective.changeMoreToDone",function(a){d.done=!0}),d.$on("timeSliderDirective.changeDoneToMore",function(a){d.done=!1})}}}])}(),function(){"use strict";pinpointApp.directive("transactionTableDirective",["$window","helpContentTemplate","helpContentService","AnalyticsService",function(a,b,c,d){return{restrict:"EA",replace:!0,templateUrl:"features/transactionTable/transactionTable.html?v="+G_BUILD_TIME,link:function(e,f,g){var h,i,j;e.transactionList=[],e.currentTransaction=null,e.transactionReverse=!1,h=function(){e.transactionList=[]},i=function(a){e.transactionList.length>0?(e.transactionOrderBy="",e.transactionReverse=!1,f.find("table tbody tr:last-child")[0].scrollIntoView(!0)):(e.transactionOrderBy="elapsed",e.transactionReverse=!0),e.transactionList=e.transactionList.concat(a),j(),f.find('[data-toggle="tooltip"]').tooltip("destroy").tooltip()},j=function(){var a=1;angular.forEach(e.transactionList,function(b,c){b.index=a++})},e.traceByApplication=function(a){d.send(d.CONST.CALLSTACK,d.CONST.CLK_TRANSACTION),e.currentTransaction=a,e.$emit("transactionTableDirective.applicationSelected",a)},e.openTransactionView=function(b){a.open("#/transactionView/"+b.agentId+"/"+b.traceId+"/"+b.collectorAcceptTime)},e.transactionOrder=function(a){e.transactionOrderBy===a?e.transactionReverse=!e.transactionReverse:e.transactionReverse=!1,d.send(d.CONST.CALLSTACK,d.CONST.ST_+a.charAt(0).toUpperCase()+a.substring(1),e.transactionReverse?d.CONST.DESCENDING:d.CONST.ASCENDING),e.transactionOrderBy=a},e.$on("transactionTableDirective.appendTransactionList",function(a,b){i(b)}),e.$on("transactionTableDirective.clear",function(a){h()}),e.initTooltipster=function(){jQuery(".neloTooltip").tooltipster({content:function(){return b(c.transactionTable.log)},position:"bottom",trigger:"click",interactive:!0})}}}}])}(),function(a){"use strict";pinpointApp.directive("timelineDirective",["AnalyticsService",function(b){return{restrict:"EA",replace:!0,templateUrl:"features/timeline/timeline.html?v="+G_BUILD_TIME,link:function(c,d,e){var f,g,h,i,j,k=["#66CCFF","#FFCCFF","#66CC00","#FFCC33","#669999","#FF9999","#6666FF","#FF6633","#66FFCC","#006666","#FFFF00","#66CCCC","#FFCCCC","#6699FF","#FF99FF","#669900","#FF9933","#66FFFF","#996600","#66FF00"],l=[],m=new InfiniteCircularScroll({scroller:a(d),wrapper:a(d).find("div"),elementHeight:21,template:['
','
','
',"",'','','',"","
","
","
"].join("")});m.renderFunc(function(a,b,d){var e=o(d);a[b==this._selectedRow?"addClass":"removeClass"]("timeline-bar-selected").find("div.clickable-bar").css({width:p(d)+"px",backgroundColor:n(d[c.key.applicationName]),marginLeft:e+"px"}).find("span.nameType").html(d[c.key.applicationName]+"/"+d[c.key.apiType]+"("+(d[c.key.end]-d[c.key.begin])+"ms)"),e>=68?a.find("span.before").show().end().find("span.after").hide().end().find("span.before .startTime").html(q(d)):a.find("span.before").hide().end().find("span.after").show().end().find("span.after .startTime").html(q(d))}),g=function(){var a=[];return angular.forEach(c.timeline.callStack,function(b){b[c.key.isMethod]&&!b[c.key.excludeFromTimeline]&&""!==b[c.key.service]&&a.push(b); -}),a},f=function(b){c.timeline=b,c.key=b.callStackIndex,c.barRatio=1e3/(b.callStack[0][c.key.end]-b.callStack[0][c.key.begin]),c.newCallStacks=g(),m.source(c.newCallStacks).viewAreaHeight(a(d).parentsUntil("div.wrapper").height()-70).selectedRow(-1,angular.noop).reset(),c.maxHeight=m.contentsAreaHeight(),i=0,c.$digest()};var n=function(a){var b=l.indexOf(a);return-1==b&&(l.push(a),b=l.length-1),k[b>=k.length?0:b]},o=function(a){return(a[c.key.begin]-c.timeline.callStackStart)*c.barRatio+.9},p=function(a){return(a[c.key.end]-a[c.key.begin])*c.barRatio+.9},q=function(a){return a[c.key.begin]-c.timeline.callStackStart};a(d).on("click",".clickable-bar",function(){b.send(b.CONST.CALLSTACK,b.CONST.CLK_CALL),c.$emit("transactionDetail.selectDistributedCallFlowRow",c.newCallStacks[parseInt(a(this).parent().attr("data-index"))][6])}),a(d).on("mouseenter",".timeline-bar-frame",function(b){a(this).parent().css({"box-shadow":"6px 6px 2px -2px rgba(0,0,0,0.75)","font-weight":"bold"})}),a(d).on("mouseleave",".timeline-bar-frame",function(b){a(this).parent().css({"box-shadow":"none","font-weight":"normal"})}),c.$on("timelineDirective.initialize",function(a,b){f(b)}),c.$on("timelineDirective.resize",function(b){m.resize(a(d).parentsUntil("div.wrapper").height()-70)}),c.$on("timelineDirective.searchCall",function(a,b,d){var e=h(i,-1,b);-1==e?0===i?c.$emit("transactionDetail.timelineSearchCallResult","No call took longer than {time}ms."):(e=h(0,i,b),-1==e?c.$emit("transactionDetail.timelineSearchCallResult","No call took longer than {time}ms."):j(e,"Loop")):j(e,"")}),h=function(a,b,d){return m.searchRow(a,b,function(a){return a[c.key.end]-a[c.key.begin]>=d})},j=function(a,b){m.selectedRow(a,function(a){this.$wrapper.find("div[data-index="+this._selectedRow+"]").removeClass("timeline-bar-selected"),this.$wrapper.find("div[data-index="+a+"]").addClass("timeline-bar-selected")}).moveByRow(a),i=a+1,c.$emit("transactionDetail.timelineSearchCallResult",b)}}}}])}(jQuery),function(){"use strict";pinpointApp.constant("agentChartGroupConfig",{POINTS_TIMESTAMP:0,POINTS_MIN:1,POINTS_MAX:2,POINTS_AVG:3}),pinpointApp.directive("agentChartGroupDirective",["agentChartGroupConfig","$timeout","AgentDaoService","AnalyticsService",function(a,b,c,d){return{restrict:"EA",replace:!0,templateUrl:"features/agentChartGroup/agentChartGroup.html?v="+G_BUILD_TIME,scope:{namespace:"@"},link:function(a,b,e){var f,g,h,i,j,k,l,m;a.showChartGroup=!1,h=function(e){f={Heap:!1,PermGen:!1,CpuLoad:!1},g=null,a.showChartGroup=!0,a.$digest(),c.getAgentStat(e,function(a,b){return a?void console.log("error",a):(f.Heap===!1&&i(b),void(g=b))}),b.tabs({activate:function(b,c){var e=c.newTab.text();return"Heap"==e?(d.send(d.CONST.MIXEDVIEW,d.CONST.CLK_HEAP),void(f.Heap===!1?i(g):a.$broadcast("jvmMemoryChartDirective.resize.forHeap_"+a.namespace))):"PermGen"==e?(d.send(d.CONST.MIXEDVIEW,d.CONST.CLK_PERM_GEN),void(f.PermGen===!1?j(g):a.$broadcast("jvmMemoryChartDirective.resize.forNonHeap_"+a.namespace))):"CpuLoad"==e?(d.send(d.CONST.MIXEDVIEW,d.CONST.CLK_CPU_LOAD),void(f.CpuLoad===!1?k(g):a.$broadcast("cpuLoadChartDirective.resize.forCpuLoad_"+a.namespace))):void 0}}),b.tabs("paging")},i=function(b){f.Heap=!0;var d={id:"heap",title:"Heap",span:"span12",line:[{id:"JVM_MEMORY_HEAP_USED",key:"Used",values:[],isFgc:!1},{id:"JVM_MEMORY_HEAP_MAX",key:"Max",values:[],isFgc:!1},{id:"fgc",key:"FGC",values:[],isFgc:!0}]};a.$broadcast("jvmMemoryChartDirective.initAndRenderWithData.forHeap_"+a.namespace,c.parseMemoryChartDataForAmcharts(d,b),"100%","100%")},j=function(b){f.PermGen=!0;var d={id:"nonheap",title:"PermGen",span:"span12",line:[{id:"JVM_MEMORY_NON_HEAP_USED",key:"Used",values:[],isFgc:!1},{id:"JVM_MEMORY_NON_HEAP_MAX",key:"Max",values:[],isFgc:!1},{id:"fgc",key:"FGC",values:[],isFgc:!0}]};a.$broadcast("jvmMemoryChartDirective.initAndRenderWithData.forNonHeap_"+a.namespace,c.parseMemoryChartDataForAmcharts(d,b),"100%","100%")},k=function(b){f.CpuLoad=!0;var d={id:"cpuLoad",title:"JVM/System Cpu Usage",span:"span12",isAvailable:!1};a.$broadcast("cpuLoadChartDirective.initAndRenderWithData.forCpuLoad_"+a.namespace,c.parseCpuLoadChartDataForAmcharts(d,b),"100%","100%")},l=function(b){f.Heap&&a.$broadcast("jvmMemoryChartDirective.showCursorAt.forHeap_"+a.namespace,b),f.PermGen&&a.$broadcast("jvmMemoryChartDirective.showCursorAt.forNonHeap_"+a.namespace,b),f.CpuLoad&&a.$broadcast("cpuLoadChartDirective.showCursorAt.forCpuLoad_"+a.namespace,b)},m=function(){f.Heap&&a.$broadcast("jvmMemoryChartDirective.resize.forHeap_"+a.namespace),f.PermGen&&a.$broadcast("jvmMemoryChartDirective.resize.forNonHeap_"+a.namespace),f.CpuLoad&&a.$broadcast("cpuLoadChartDirective.resize.forCpuLoad_"+a.namespace)},a.$on("agentChartGroupDirective.initialize."+a.namespace,function(a,b){h(b)}),a.$on("agentChartGroupDirective.showCursorAt."+a.namespace,function(a,b){l(b)}),a.$on("agentChartGroupDirective.resize."+a.namespace,function(a){m()})}}}])}(),function(){"use strict";pinpointApp.directive("sidebarTitleDirective",["$timeout","$rootScope","PreferenceService",function(a,b,c){return{restrict:"E",replace:!0,templateUrl:"features/sidebar/title/sidebarTitle.html?v="+G_BUILD_TIME,scope:{namespace:"@"},link:function(d,e,f){function g(a){if(d.currentAgent=c.getAgentAllStr(),"undefined"==typeof a)return void(d.agentList=[]);var b=[];if(a.serverList)for(var e in a.serverList){var f=a.serverList[e].instanceList;for(var g in f)b.push(g)}d.agentList=b}function h(b,c){d.isWas=angular.isDefined(c)&&angular.isDefined(c.isWas)?c.isWas:!1,d.stImage=b.getImage(),d.stImageShow=!!b.getImage(),d.stTitle=b.getTitle(),d.stImage2=b.getImage2(),d.stImage2Show=!!b.getImage2(),d.stTitle2=b.getTitle2(),a(function(){e.find('[data-toggle="tooltip"]').tooltip("destroy").tooltip()})}function i(){d.currentAgent=c.getAgentAllStr(),d.stImage=!1,d.stImageShow=!1,d.stTitle=!1,d.stImage2=!1,d.stTitle2=!1,d.stImage2Show=!1,d.isWas=!1,d.agentList=[]}d.agentList=[],a(function(){i()}),d.changeAgent=function(){b.$broadcast("changedCurrentAgent",d.currentAgent)},d.$on("sidebarTitleDirective.initialize."+d.namespace,function(a,b,c){h(b,c),g(c)}),d.$on("sidebarTitleDirective.empty."+d.namespace,function(a){i()})}}}])}(),function(){"use strict";pinpointApp.directive("filterInformationDirective",["$filter","$base64",function(a,b){return{restrict:"EA",replace:!0,templateUrl:"features/sidebar/filter/filterInformation.html?v="+G_BUILD_TIME,scope:{namespace:"@"},link:function(c,d,e){var f,g;f=function(d){if(g(),oServerMapFilterVo.getRequestUrlPattern()&&(c.urlPattern=b.decode(d.getRequestUrlPattern())),c.includeException=v.getIncludeException()?"Failed Only":"Success + Failed",angular.isNumber(d.getResponseFrom())&&oServerMapFilterVo.getResponseTo()){var e=[];e.push(a("number")(d.getResponseFrom())),e.push("ms"),e.push("~"),"max"===d.getResponseTo()?e.push("30,000+"):e.push(a("number")(d.getResponseTo())),e.push("ms"),c.responseTime=e.join(" ")}var f=d.getFromAgentName(),h=d.getToAgentName();f||h?c.agentFilterInfo=(f||"all")+" -> "+(h||"all"):c.agentFilterInfo=!1},g=function(){c.urlPattern="none",c.responseTime="none",c.includeException="none"},c.$on("filterInformationDirective.initialize."+c.namespace,function(a,b){f(b)})}}}])}(),function(){"use strict";pinpointApp.directive("distributedCallFlowDirective",["$filter","$timeout","CommonAjaxService",function(a,b,c){return{restrict:"E",replace:!0,templateUrl:"features/distributedCallFlow/distributedCallFlow.html?v=${buildTime}",scope:{namespace:"@"},link:function(d,e,f){var g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;window.callStacks=[],o=function(a){var b=0,c=0,d="#";for(b=0,c=0;bb;d+=("00"+(c>>8*b++&255).toString(16)).slice(-2));return d},k=function(a,b,c,d,e){var f=[];c=c.replace(/&/g,"&").replace(//g,">");var g=h.getItemById(e.id);i=g.agent?g.agent:i;var j=o(i),k=h.getIdxById(e.id),l="dcf-popover";if(g.hasException?l+=" has-exception":g.isMethod||(l+=" not-method"),f.push('
'),f.push("
"),f.push(""),window.callStacks[k+1]&&window.callStacks[k+1].indent>window.callStacks[k].indent?e._collapsed?f.push("  "):f.push("  "):f.push("  "),g.hasException)f.push(' ');else if(g.isMethod){var m=parseInt(g.methodType);switch(m){case 100:f.push(' ');break;case 200:f.push(' ');break;case 900:f.push(' ')}}else"SQL"===g.method?f.push(' '):f.push(' ');return f.push(c),f.push("
"),f.join("")},l=function(a){var b=!0;if(angular.isDefined(a.parent)&&null!==a.parent)for(var c=window.callStacks[a.parent];c;)c._collapsed&&(b=!1),c=window.callStacks[c.parent];return b},q=function(a,b,c,d,e){var f=[];return f.push('
'),f.push(c),f.push("
"),f.join("")},r=function(a,b,c,d,e){if(c&&0!==c.length){var f=[];f.push('');var g=h.getItemById(e.id),i=g.logButtonName;return f.push(i),f.push(""),f.join("")}},n=function(b,c,d,e,f){return a("date")(d,"HH:mm:ss sss")},p=function(a,b,c,d,e){if(angular.isUndefined(c)||null===c||""===c||0===c)return"";var f;return f="#5bc0de",""},m=function(a,b){var c=[],d=100/(b[0][a.end]-b[0][a.begin]);return angular.forEach(b,function(b,e){c.push({id:"id_"+e,parent:b[a.parentId]?b[a.parentId]-1:null,indent:b[a.tab],method:b[a.title],argument:b[a.arguments],execTime:b[a.begin]>0?b[a.begin]:null,gapMs:b[a.gap],timeMs:b[a.elapsedTime],timePer:b[a.elapsedTime]?(b[a.end]-b[a.begin])*d+.9:null,"class":b[a.simpleClassName],methodType:b[a.methodType],apiType:b[a.apiType],agent:b[a.agent],applicationName:b[a.applicationName],hasException:b[a.hasException],isMethod:b[a.isMethod],logLink:b[a.logPageUrl],logButtonName:b[a.logButtonName],isFocused:b[a.isFocused],execMilli:b[a.executionMilliseconds],execPer:b[a.elapsedTime]&&b[a.executionMilliseconds]?parseInt(b[a.executionMilliseconds].replace(/,/gi,""))/parseInt(b[a.elapsedTime].replace(/,/gi,""))*100:0})}),c},j=function(a){window.callStacks=m(a.callStackIndex,a.callStack);var f={enableCellNavigation:!0,enableColumnReorder:!0,enableTextSelectionOnCells:!0,topPanelHeight:30,rowHeight:25};h=new Slick.Data.DataView({inlineFilters:!0}),h.beginUpdate(),h.setItems(window.callStacks),h.setFilter(l),h.getItemMetadata=function(a){var b=h.getItemByIdx(a),c={cssClasses:""};return b.hasException===!0&&(c.cssClasses+=" error-point"),b.isFocused===!0&&(c.cssClasses+=" entry-point"),null!==b.execTime&&(c.cssClasses+=" id_"+(a+1)),c},h.endUpdate();var i=[{id:"method",name:"Method",field:"method",width:400,formatter:k},{id:"argument",name:"Argument",field:"argument",width:300,formatter:q},{id:"exec-time",name:"Start Time",field:"execTime",width:90,formatter:n},{id:"gap-ms",name:"Gap(ms)",field:"gapMs",width:70,cssClass:"right-align"},{id:"time-ms",name:"Exec(ms)",field:"timeMs",width:70,cssClass:"right-align"},{id:"time-per",name:"Exec(%)",field:"timePer",width:100,formatter:p},{id:"exec-milli",name:"Self(ms)",field:"execMilli",width:75,cssClass:"right-align"},{id:"class",name:"Class",field:"class",width:120},{id:"api-type",name:"API",field:"apiType",width:90},{id:"agent",name:"Agent",field:"agent",width:130},{id:"application-name",name:"Application",field:"applicationName",width:150}];g=new Slick.Grid(e.get(0),h,i,f),g.setSelectionModel(new Slick.RowSelectionModel);var j=!0,o=!1;g.onClick.subscribe(function(a,d){var f;if($(a.target).hasClass("toggle")&&(f=h.getItem(d.row),f&&(f._collapsed?f._collapsed=!1:f._collapsed=!0,h.updateItem(f.id,f)),a.stopImmediatePropagation()),$(a.target).hasClass("sql")){f=h.getItem(d.row);var g=h.getItem(d.row+1),i="sql="+encodeURIComponent(f.argument);angular.isDefined(g)&&"SQL-BindValue"===g.method?(i+="&bind="+encodeURIComponent(g.argument),c.getSQLBind("/sqlBind.pinpoint",i,function(a){$("#customLogPopup").find("h4").html("SQL").end().find("div.modal-body").html('

Binded SQL

'+a+'
'+a.replace(/\t\t/g,"")+'

Original SQL

'+f.argument+'
'+f.argument.replace(/\t\t/g,"")+'

SQL Bind Value

'+g.argument+'
'+g.argument+"
").end().modal("show"),prettyPrint()})):($("#customLogPopup").find("h4").html("SQL").end().find("div.modal-body").html('

Original SQL

'+f.argument+'
'+f.argument.replace(/\t\t/g,"")+"
").end().modal("show"),prettyPrint())}o||(o=b(function(){j&&e.find(".dcf-popover").popover("hide"),j=!0,o=!1},300))}),g.onDblClick.subscribe(function(a,b){j=!1,$(a.target).popover("toggle")}),g.onCellChange.subscribe(function(a,b){h.updateItem(b.item.id,b.item)}),g.onActiveCellChanged.subscribe(function(a,b){d.$emit("distributedCallFlowDirective.rowSelected."+d.namespace,b.grid.getDataItem(b.row))}),s=function(a){var b=h.getItem(a+1);return!(!b||a!==b.parent)},g.onKeyDown.subscribe(function(a,b){var c=h.getItem(b.row);if(37==a.which)if(s(b.row))c._collapsed=!0,h.updateItem(c.id,c);else{var d=h.getItem(b.row-1);d&&g.setActiveCell(b.row-1,0)}else if(39==a.which){if(c._collapsed)c._collapsed=!1;else{var e=h.getItem(b.row+1);e&&g.setActiveCell(b.row+1,0)}h.updateItem(c.id,c)}}),h.onRowCountChanged.subscribe(function(a,b){g.updateRowCount(),g.render()}),h.onRowsChanged.subscribe(function(a,b){g.invalidateRows(b.rows),g.render()})},$("#customLogPopup").on("click","button",function(){var a=document.createRange();a.selectNode($(this).parent().next().get(0)),window.getSelection().addRange(a);try{document.execCommand("copy")}catch(b){console.log("unable to copy :",b)}window.getSelection().removeAllRanges()}),d.$on("distributedCallFlowDirective.initialize."+d.namespace,function(a,b){j(b)}),d.$on("distributedCallFlowDirective.resize."+d.namespace,function(a){g&&g.resizeCanvas()}),d.$on("distributedCallFlowDirective.selectRow."+d.namespace,function(a,b){var c=b-1;g.setSelectedRows([c]),g.setActiveCell(c,0),g.scrollRowToTop(c)}),d.$on("distributedCallFlowDirective.searchCall."+d.namespace,function(a,b,c){var e=t(b,c);-1==e?c>0?(u(t(b,0)),d.$emit("transactionDetail.calltreeSearchCallResult","Loop")):d.$emit("transactionDetail.calltreeSearchCallResult","No call took longer than {time}ms."):(u(e),d.$emit("transactionDetail.calltreeSearchCallResult",""))}),t=function(a,b){for(var c=0,d=-1,e=0;e=a){if(c==b){d=e;break}c++}return d},u=function(a){g.setSelectedRows([a]),g.setActiveCell(a,0),g.scrollRowIntoView(a,!0)}}}}])}(),function(){"use strict";pinpointApp.constant("responseTimeChartDirectiveConfig",{myColors:["#2ca02c","#3c81fa","#f8c731","#f69124","#f53034"]}),pinpointApp.directive("responseTimeChartDirective",["responseTimeChartDirectiveConfig","$timeout","AnalyticsService","PreferenceService",function(a,b,c,d){var e=d.getResponseTypeColor();return{template:"
",replace:!0,restrict:"EA",scope:{namespace:"@"},link:function(a,f,g){var h,i,j,k,l,m,n,o;j=function(){h="responseTimeId-"+a.namespace,f.attr("id",h)},k=function(a,b){f.css("width",a||"100%"),f.css("height",b||"150px")},l=function(d,e,f){b(function(){var b={type:"serial",theme:"none",dataProvider:d,startDuration:0,valueAxes:[{gridAlpha:.1,usePrefixes:!0}],graphs:[{balloonText:e?"[[category]] filtering":"",colorField:"color",labelText:"[[value]]",fillAlphas:.3,alphaField:"alpha",lineAlpha:.8,lineColor:"#787779",type:"column",valueField:"count"}],categoryField:"responseTime",categoryAxis:{gridAlpha:0}};f&&(b.chartCursor={fullWidth:!0,categoryBalloonAlpha:.7,cursorColor:"#000000",cursorAlpha:0,zoomable:!1}),i=AmCharts.makeChart(h,b),i.addListener("clickGraphItem",function(b){c.send(c.CONST.MAIN,c.CONST.CLK_RESPONSE_GRAPH),"Error"==b.item.category&&a.$emit("responseTimeChartDirective.showErrorTransacitonList",b.item.category),e&&a.$emit("responseTimeChartDirective.itemClicked."+a.namespace,b.item.serialDataItem.dataContext)}),e&&(i.addListener("clickGraphItem",m),i.addListener("rollOverGraphItem",function(a){a.event.target.style.cursor="pointer"}))})},m=function(b){a.$emit("responseTimeChartDirective.itemClicked."+a.namespace,b.item.serialDataItem.dataContext)},n=function(a){i.dataProvider=a,b(function(){i.validateData()})},o=function(a){angular.isUndefined(a)&&(a=d.getResponseTypeFormat());var b=[],c=[.2,.3,.4,.6,.6],f=0;for(var g in a)b.push({responseTime:g,count:a[g],color:e[f],alpha:c[f++]});return b},a.$on("responseTimeChartDirective.initAndRenderWithData."+a.namespace,function(a,b,c,d,e,f){j(),k(c,d),l(o(b),e,f)}),a.$on("responseTimeChartDirective.updateData."+a.namespace,function(a,b){n(o(b))})}}}])}(),function(){"use strict";pinpointApp.constant("loadChartDirectiveConfig",{}),pinpointApp.directive("loadChartDirective",["loadChartDirectiveConfig","$timeout","AnalyticsService","PreferenceService",function(a,b,c,d){var e=d.getResponseTypeColor();return{template:'
',replace:!0,restrict:"EA",scope:{namespace:"@"},link:function(a,d,f){var g,h,i,j,k,l,m,n,o,p;j=function(){g="loadId-"+a.namespace,d.attr("id",g)},k=function(a,b){a&&d.css("width",a),b&&d.css("height",b)},l=function(a,d){b(function(){var b={type:"serial",theme:"light",legend:{autoMargins:!1,align:"right",borderAlpha:0,equalWidths:!0,horizontalGap:0,verticalGap:0,markerSize:10,useGraphSettings:!1,valueWidth:0,spacing:0,markerType:"circle",position:"top"},dataProvider:a,valueAxes:[{stackType:"regular",axisAlpha:1,usePrefixes:!0,gridAlpha:.1}],categoryField:"time",categoryAxis:{startOnAxis:!0,gridPosition:"start",labelFunction:function(a,b,c){var d=a.indexOf("-"),e=a.indexOf(" ");return a.substring(d+1,e)+"\n"+a.substring(e+1)}},balloon:{fillAlpha:1,borderThickness:1},graphs:[{balloonText:"[[title]] : [[value]]",fillAlphas:.2,fillColors:e[0],lineAlpha:.8,lineColor:"#787779",title:h[0],type:"step",legendColor:e[0],valueField:h[0]},{balloonText:"[[title]] : [[value]]",fillAlphas:.3,fillColors:e[1],lineAlpha:.8,lineColor:"#787779",title:h[1],type:"step",legendColor:e[1],valueField:h[1]},{balloonText:"[[title]] : [[value]]",fillAlphas:.4,fillColors:e[2],lineAlpha:.8,lineColor:"#787779",title:h[2],type:"step",legendColor:e[2],valueField:h[2]},{balloonText:"[[title]] : [[value]]",fillAlphas:.6,fillColors:e[3],lineAlpha:.8,lineColor:"#787779",title:h[3],type:"step",legendColor:e[3],valueField:h[3]},{balloonText:"[[title]] : [[value]]",fillAlphas:.6,fillColors:e[4],lineAlpha:.8,lineColor:"#787779",title:h[4],type:"step",legendColor:e[4],valueField:h[4]}]};d&&(b.chartCursor={cursorPosition:"mouse",categoryBalloonAlpha:.7,categoryBalloonDateFormat:"H:NN"}),i=AmCharts.makeChart(g,b),i.addListener("clickGraph",function(a){c.send(c.CONST.MAIN,c.CONST.CLK_LOAD_GRAPH)})})},o=function(a,c){b(function(){var b={type:"serial",pathToImages:"./components/amcharts/images/",theme:"light",dataProvider:a,valueAxes:[{stackType:"regular",axisAlpha:0,gridAlpha:0,labelsEnabled:!1}],categoryField:"time",categoryAxis:{startOnAxis:!0,gridPosition:"start",labelFunction:function(a,b,c){return moment(a).format("HH:mm")}},chartScrollbar:{graph:"AmGraph-1"},graphs:[{id:"AmGraph-1",fillAlphas:.2,fillColors:e[0],lineAlpha:.8,lineColor:"#787779",type:"step",valueField:h[0]},{id:"AmGraph-2",fillAlphas:.3,fillColors:e[1],lineAlpha:.8,lineColor:"#787779",type:"step",valueField:h[1]},{id:"AmGraph-3",fillAlphas:.4,fillColors:e[2],lineAlpha:.8,lineColor:"#787779",type:"step",valueField:h[2]},{id:"AmGraph-4",fillAlphas:.6,fillColors:e[3],lineAlpha:.8,lineColor:"#787779",type:"step",valueField:h[3]},{id:"AmGraph-5",fillAlphas:.6,fillColors:e[4],lineAlpha:.8,lineColor:"#787779",type:"step",valueField:h[4]}]};c&&(b.chartCursor={avoidBalloonOverlapping:!1}),i=AmCharts.makeChart(g,b),i.addListener("changed",function(a){})})},p=function(){d.append("

No Data

")},n=function(a){angular.isDefined(i)&&i.clear(),d.empty(),b(function(){0===a.length?p():l(a,!0)})},m=function(a){function b(a){for(var b in c)if(moment(a).format("YYYY-MM-DD HH:mm")===c[b].time)return b;return-1}if(angular.isUndefined(a))return[];h=[];for(var c=[],d=0;d-1)c[i][e.key]=g[1];else{var j={time:moment(g[0]).format("YYYY-MM-DD HH:mm")};j[e.key]=g[1],c.push(j)}}}return c},a.$on("loadChartDirective.initAndRenderWithData."+a.namespace,function(a,b,c,d,e){j(),k(c,d);var f=m(b);0===f.length?p():l(f,e)}),a.$on("loadChartDirective.updateData."+a.namespace,function(a,b){n(m(b))}),a.$on("loadChartDirective.initAndSimpleRenderWithData."+a.namespace,function(a,b,c,d,e){j(),k(c,d);var f=m(b);0===f.length?p():o(f,e)})}}}])}(),function(){"use strict";angular.module("pinpointApp").directive("jvmMemoryChartDirective",["$timeout",function(a){return{template:"
",replace:!0,restrict:"E",scope:{namespace:"@"},link:function(b,c,d){var e,f,g,h,i,j,k;g=function(){e="multipleValueAxesId-"+b.namespace,c.attr("id",e)},h=function(a,b){a&&c.css("width",a),b&&c.css("height",b)},i=function(c){var d={type:"serial",theme:"light",autoMargins:!1,marginTop:10,marginLeft:70,marginRight:70,marginBottom:30,legend:{useGraphSettings:!0,autoMargins:!1,align:"right",position:"top",valueWidth:70},usePrefixes:!0,dataProvider:c,valueAxes:[{id:"v1",gridAlpha:0,axisAlpha:1,position:"right",title:"Full GC (ms)",minimum:0},{id:"v2",gridAlpha:0,axisAlpha:1,position:"left",title:"Memory (bytes)",minimum:0}],graphs:[{valueAxis:"v2",balloonText:"[[value]]B",legendValueText:"[[value]]B",lineColor:"rgb(174, 199, 232)",title:"Max",valueField:"Max",fillAlphas:0,connect:!1},{valueAxis:"v2",balloonText:"[[value]]B",legendValueText:"[[value]]B",lineColor:"rgb(31, 119, 180)",fillColor:"rgb(31, 119, 180)",title:"Used",valueField:"Used",fillAlphas:.4,connect:!1},{valueAxis:"v1",balloonFunction:function(a,b){var c=a.serialDataItem.dataContext,d=c.FGCTime+"ms",e=c.FGCCount;return e>1&&(d+=" ("+e+")"),d},legendValueText:"[[value]]ms",lineColor:"#FF6600",title:"FGC",valueField:"FGCTime",type:"column",fillAlphas:.3,connect:!1}],chartCursor:{categoryBalloonAlpha:.7,fullWidth:!0,cursorAlpha:.1},categoryField:"time",categoryAxis:{axisColor:"#DADADA",startOnAxis:!0,gridPosition:"start",labelFunction:function(a,b,c){return a.substring(a.indexOf(" ")+1)}}};a(function(){f=AmCharts.makeChart(e,d),f.chartCursor.addListener("changed",function(a){b.$emit("jvmMemoryChartDirective.cursorChanged."+b.namespace,a)})})},j=function(a){a?(angular.isNumber(a)&&(a=f.dataProvider[a].time),f.chartCursor.showCursorAt(a)):f.chartCursor.hideCursor()},k=function(){f&&(f.validateNow(),f.validateSize())},b.$on("jvmMemoryChartDirective.initAndRenderWithData."+b.namespace,function(a,b,c,d){g(),h(c,d),i(b)}),b.$on("jvmMemoryChartDirective.showCursorAt."+b.namespace,function(a,b){j(b)}),b.$on("jvmMemoryChartDirective.resize."+b.namespace,function(a){k()})}}}])}(),function(){"use strict";angular.module("pinpointApp").directive("cpuLoadChartDirective",["$timeout",function(a){return{template:"
",replace:!0,restrict:"E",scope:{namespace:"@"},link:function(b,c,d){var e,f,g,h,i,j,k;g=function(){e="multipleValueAxesId-"+b.namespace,c.attr("id",e)},h=function(a,b){a&&c.css("width",a),b&&c.css("height",b)},i=function(c){var d={type:"serial",theme:"light",autoMargins:!1,marginTop:10,marginLeft:70,marginRight:70,marginBottom:30,legend:{useGraphSettings:!0,autoMargins:!0,align:"right",position:"top",valueWidth:70},usePrefixes:!0,dataProvider:c,valueAxes:[{id:"v1",gridAlpha:0,axisAlpha:1,position:"left",title:"Cpu Usage (%)",maximum:100,minimum:0}],graphs:[{valueAxis:"v1",balloonText:"[[value]]%",legendValueText:"[[value]]%",lineColor:"rgb(31, 119, 180)",fillColor:"rgb(31, 119, 180)",title:"JVM",valueField:"jvmCpuLoad",fillAlphas:.4,connect:!1},{valueAxis:"v1",balloonText:"[[value]]%",legendValueText:"[[value]]%",lineColor:"rgb(174, 199, 232)",fillColor:"rgb(174, 199, 232)",title:"System",valueField:"systemCpuLoad",fillAlphas:.4,connect:!1},{valueAxis:"v1",showBalloon:!1,lineColor:"#FF6600",title:"Max",valueField:"maxCpuLoad",fillAlphas:0,visibleInLegend:!1}],chartCursor:{categoryBalloonAlpha:.7,fullWidth:!0,cursorAlpha:.1},categoryField:"time",categoryAxis:{axisColor:"#DADADA",startOnAxis:!0,gridPosition:"start",labelFunction:function(a,b,c){return moment(a).format("HH:mm:ss")}}};a(function(){f=AmCharts.makeChart(e,d),f.chartCursor.addListener("changed",function(a){b.$emit("cpuLoadChartDirective.cursorChanged."+b.namespace,a)})})},j=function(a){a?(angular.isNumber(a)&&(a=f.dataProvider[a].time),f.chartCursor.showCursorAt(a)):f.chartCursor.hideCursor()},k=function(){f&&(f.validateNow(),f.validateSize())},b.$on("cpuLoadChartDirective.initAndRenderWithData."+b.namespace,function(a,b,c,d){g(),h(c,d),i(b)}),b.$on("cpuLoadChartDirective.showCursorAt."+b.namespace,function(a,b){j(b)}),b.$on("cpuLoadChartDirective.resize."+b.namespace,function(a){k()})}}}])}(),function(){"use strict";angular.module("pinpointApp").directive("tpsChartDirective",["$timeout",function(a){return{template:"
",replace:!0,restrict:"E",scope:{namespace:"@"},link:function(b,c,d){var e,f,g,h,i,j,k;g=function(){e="multipleValueAxesId-"+b.namespace,c.attr("id",e)},h=function(a,b){a&&c.css("width",a),b&&c.css("height",b)},i=function(c){var d={type:"serial",theme:"light",autoMargins:!1,marginTop:10,marginLeft:70,marginRight:70,marginBottom:30,legend:{useGraphSettings:!0,autoMargins:!0,align:"right",position:"top",valueWidth:70},usePrefixes:!0,dataProvider:c,valueAxes:[{stackType:"regular",gridAlpha:0,axisAlpha:1,position:"left",title:"TPS",minimum:0}],graphs:[{balloonText:"Sampled Continuation : [[value]]",legendValueText:"[[value]]",lineColor:"rgb(214, 141, 8)",fillColor:"rgb(214, 141, 8)",title:"S.C",valueField:"sampledContinuationTps",fillAlphas:.4,connect:!0},{balloonText:"Sampled New : [[value]]",legendValueText:"[[value]]",lineColor:"rgb(252, 178, 65)",fillColor:"rgb(252, 178, 65)",title:"S.N",valueField:"sampledNewTps",fillAlphas:.4,connect:!0},{balloonText:"Unsampled Continuation : [[value]]",legendValueText:"[[value]]",lineColor:"rgb(90, 103, 166)",fillColor:"rgb(90, 103, 166)",title:"U.C",valueField:"unsampledContinuationTps",fillAlphas:.4,connect:!0},{balloonText:"Unsampled New : [[value]]",legendValueText:"[[value]]",lineColor:"rgb(160, 153, 255)",fillColor:"rgb(160, 153, 255)",title:"U.N",valueField:"unsampledNewTps",fillAlphas:.4,connect:!0},{balloonText:"Total : [[value]]",legendValueText:"[[value]]",lineColor:"rgba(31, 119, 180, 0)",fillColor:"rgba(31, 119, 180, 0)",valueField:"totalTps",fillAlphas:.4,connect:!0}],chartCursor:{categoryBalloonAlpha:.7,fullWidth:!0,cursorAlpha:.1},categoryField:"time",categoryAxis:{axisColor:"#DADADA",startOnAxis:!0,gridPosition:"start",labelFunction:function(a,b,c){return moment(a).format("HH:mm:ss")}}};a(function(){f=AmCharts.makeChart(e,d),f.chartCursor.addListener("changed",function(a){b.$emit("tpsChartDirective.cursorChanged."+b.namespace,a)})})},j=function(a){a?(angular.isNumber(a)&&(a=f.dataProvider[a].time),f.chartCursor.showCursorAt(a)):f.chartCursor.hideCursor()},k=function(){f&&(f.validateNow(),f.validateSize())},b.$on("tpsChartDirective.initAndRenderWithData."+b.namespace,function(a,b,c,d){g(),h(c,d),i(b)}),b.$on("tpsChartDirective.showCursorAt."+b.namespace,function(a,b){j(b)}),b.$on("tpsChartDirective.resize."+b.namespace,function(a){k()})}}}])}(),function(){"use strict";pinpointApp.directive("loadingDirective",["$timeout","$templateCache","$compile",function(a,b,c){return{restrict:"A",scope:{showLoading:"=loadingDirective",loadingMessage:"@"},link:function(a,d,e){a.loadingMessage||(a.loadingMessage="Please Wait...");var f=b.get(e.loadingDirective);"static"===d.css("position")&&d.css("position","relative"),d.append(c(f)(a))}}}])}(),function(a){"use strict";pinpointApp.constant("ConfigurationConfig",{menu:{GENERAL:"general",ALARM:"alarm",HELP:"help"}}),pinpointApp.controller("ConfigurationCtrl",["$scope","$element","ConfigurationConfig","AnalyticsService",function(b,c,d,e){var f=c.find(".modal-body");b.descriptionOfCurrentTab="Set your option",b.currentTab=d.menu.GENERAL;for(var g in d.menu)!function(a){var c="is"+a.substring(0,1).toUpperCase()+a.substring(1).toLowerCase();b[c]=function(){return b.currentTab==d.menu[a]}}(g);a(c).on("hidden.bs.modal",function(a){b.currentTab=d.menu.GENERAL,b.$broadcast("configuration.alarm.initClose")}),b.setCurrentTab=function(a){if(b.currentTab!=a)switch(b.currentTab=a,a){case d.menu.GENERAL:e.send(e.CONST.MAIN,e.CONST.CLK_GENERAL),f.css("background-color","#e9eaed"),b.descriptionOfCurrentTab="Set your option",b.$broadcast("general.configuration.show");break;case d.menu.ALARM:e.send(e.CONST.MAIN,e.CONST.CLK_ALARM),f.css("background-color","#e9eaed"),b.descriptionOfCurrentTab="Set your alarm rules",b.$broadcast("alarmUserGroup.configuration.show");break;case d.menu.HELP:e.send(e.CONST.MAIN,e.CONST.CLK_HELP),f.css("background-color","#FFF"),b.descriptionOfCurrentTab=""}},b.$on("configuration.show",function(){e.send(e.CONST.MAIN,e.CONST.CLK_CONFIGURATION),c.modal("show")})}])}(jQuery),function(a){"use strict";pinpointApp.controller("HelpCtrl",["$scope","$element",function(a,b){a.enHelpList=[{title:"Quick start guide",link:"https://github.com/naver/pinpoint/blob/master/quickstart/README.md"},{title:"Technical Overview of Pinpoint",link:"https://github.com/naver/pinpoint/wiki/Technical-Overview-Of-Pinpoint"},{title:"Using Pinpont with Docker",link:"http://yous.be/2015/05/05/using-pinpoint-with-docker/"},{title:"Notes on Jetty Plugin for Pinpoint ",link:"https://github.com/cijung/Docs/blob/master/JettyPluginNotes.md"},{title:"About Alarm",link:"https://github.com/naver/pinpoint/blob/master/doc/alarm.md#alarm"}],a.koHelpList=[{title:"Pinpoint 개발자가 작성한 Pinpoint 기술문서",link:"http://helloworld.naver.com/helloworld/1194202"},{title:"소개 및 설치 가이드",link:"http://dev2.prompt.co.kr/33"},{title:"Pinpoint 사용 경험",link:"http://www.barney.pe.kr/blog/category/development/page/2/"},{title:"설치 가이드 동영상 강좌 1",link:"https://www.youtube.com/watch?v=hrvKaEaDEGs"},{title:"설치 가이드 동영상 강좌 2",link:"https://www.youtube.com/watch?v=fliKPGHGXK4"},{title:"AWS Ubuntu 14.04 설치 가이드 ",link:"http://lky1001.tistory.com/132"},{title:"Alarm 가이드",link:"https://github.com/naver/pinpoint/blob/master/doc/alarm.md#alarm-1"}]}])}(jQuery),function(a){"use strict";pinpointApp.constant("GeneralConfig",{ -menu:{GENERAL:"general",ALRAM:"alram"}}),pinpointApp.controller("GeneralCtrl",["GeneralConfig","$scope","$rootScope","$element","$document","PreferenceService","AnalyticsService","helpContentService",function(a,b,c,d,e,f,g,h){function i(a){g.send(g.CONST.MAIN,g.CONST.CLK_GENERAL_SET_FAVORITE),f.addFavorite(a),b.$apply(function(){b.favoriteList=f.getFavoriteList(),c.$broadcast("navbarDirective.changedFavorite")})}function j(a){if(!a.id)return a.text;var b=a.text.split("@");if(b.length>1){var c=e.get(0).createElement("img");return c.src="/images/icons/"+b[1]+".png",c.style.height="25px",c.style.paddingRight="3px",c.outerHTML+b[0]}return a.text}function k(){var a=!1;l.select2({placeholder:"Select an application.",searchInputPlaceholder:"Input your application name.",allowClear:!1,formatResult:j,formatSelection:j,escapeMarkup:function(a){return a}}).on("select2-selecting",function(b){a=!0}).on("select2-close",function(b){a===!0&&setTimeout(function(){i(l.select2("val"))},0),a=!1})}d.find("span.general-warning").html(h.configuration.general.warning),d.find("div.favorite-empty").html(h.configuration.general.empty),b.$on("general.configuration.show",function(){}),b.depthList=f.getDepthList(),b.periodTypes=f.getPeriodTypes(),b.caller=f.getCaller(),b.callee=f.getCallee(),b.period=f.getPeriod(),b.favoriteList=f.getFavoriteList(),b.changeCaller=function(){g.send(g.CONST.MAIN,g.CONST.CLK_GENERAL_SET_DEPTH,b.caller),f.setCaller(b.caller)},b.changeCallee=function(){g.send(g.CONST.MAIN,g.CONST.CLK_GENERAL_SET_DEPTH,b.callee),f.setCallee(b.callee)},b.changePeriod=function(){g.send(g.CONST.MAIN,g.CONST.CLK_GENERAL_SET_PERIOD,b.period),f.setPeriod(b.period)},b.removeFavorite=function(a){g.send(g.CONST.MAIN,g.CONST.CLK_GENERAL_SET_FAVORITE),f.removeFavorite(a),b.favoriteList=f.getFavoriteList(),c.$broadcast("navbarDirective.changedFavorite")};var l=d.find(".applicationList");b.$on("configuration.general.applications.set",function(a,c){b.applications=c,k()})}])}(jQuery),function(a){"use strict";pinpointApp.directive("alarmUserGroupDirective",["$rootScope","$timeout","helpContentTemplate","helpContentService","AlarmUtilService","AlarmBroadcastService","AnalyticsService","globalConfig",function(b,c,d,e,f,g,h,i){return{restrict:"EA",replace:!0,templateUrl:"features/configuration/alarm/alarmUserGroup.html?v="+G_BUILD_TIME,scope:!0,link:function(b,d){function e(c){""!==r&&a("#"+b.prefix+r).removeClass("selected"),a("#"+b.prefix+c).addClass("selected"),r=c}function j(){f.unsetFilterBackground(x),B.val("")}function k(a){f.showLoading(z,!1),p(f.extractID(a),a.find("span.contents").html())}function l(a){a.find("span.right").remove().end().find("span.remove").show().end().removeClass("remove"),t=!1}function m(a){t!==!0&&(e(f.extractID(a)),g.sendReloadWithUserGroupID(a.find("span.contents").html()))}function n(a){f.sendCRUD("createUserGroup",{id:a},function(b){v.push({number:b.number,id:a}),i.userId?g.sendInit(a,{userId:i.userId,name:i.userName,department:i.userDepartment}):g.sendInit(a),c(function(){e(b.number)}),f.setTotal(y,v.length),f.hide(z,C)},function(a){},A)}function o(a,b){f.sendCRUD("updateUserGroup",{number:a,id:b},function(c){for(var d=0;d0?(c(function(){e(v[0].number)}),g.sendReloadWithUserGroupID(v[0].id)):g.sendSelectionEmpty()}),f.setTotal(y,v.length),f.hide(z),t=!1},function(a){},A)}function q(a,d){f.sendCRUD("getUserGroupList",angular.isUndefined(d)||""===d?{userId:i.userId||""}:{userGroupId:d},function(d){u=!0,v=b.userGroupList=d,f.setTotal(y,v.length),f.hide(z),v.length>0&&(a&&(g.sendInit(v[0].id),r=v[0].number),c(function(){e(r)})),i.userId&&g.sendLoadPinpointUser(i.userDepartment)},function(a){},A)}b.prefix="alarmUserGroup_";var r="",s=!0,t=!1,u=!1,v=b.userGroupList=[],w=d,x=w.find(".wrapper"),y=w.find(".total"),z=w.find(".some-loading"),A=w.find(".some-alert"),B=w.find("div.filter-input input"),C=(w.find("div.filter-input button.trash"),w.find(".some-edit-content")),D=C.find("input"),E=C.find(".title-message"),F=a(['','','',""].join("")),G=w.find(".some-list-content ul");G.on("click",function(c){var d=a(c.toElement||c.target),e=d.get(0).tagName.toLowerCase(),f=d.parents("li");if("button"===e)d.hasClass("edit")?b.onUpdate(c):d.hasClass("confirm-remove")?k(f):d.hasClass("confirm-cancel")&&revmoeCancel(f);else if("span"===e)if(d.hasClass("remove")){if(t===!0)return;t=!0,f.addClass("remove").find("span.remove").hide().end().append(F)}else d.hasClass("contents")?m(f):d.hasClass("glyphicon-edit")?b.onUpdate(c):d.hasClass("glyphicon-remove")?l(f):d.hasClass("glyphicon-ok")&&k(f);else"li"===e&&m(d)}),b.onRefresh=function(){t!==!0&&(h.send(h.CONST.MAIN,h.CONST.CLK_ALARM_REFRESH_USER_GROUP),j(),f.showLoading(z,!1),q(!1,a.trim(B.val())))},b.onCreate=function(){t!==!0&&(s=!0,E.html("Create new alarm group"),D.val(""),f.show(C),D.focus())},b.onUpdate=function(b){if(t!==!0){s=!1;var c=a(b.toElement||b.target).parents("li"),d=f.extractID(c),e=c.find("span.contents").html();E.html('Input new name of "'+e+'".'),D.val(e).prop("id","updateUserGroup_"+d),f.show(C),D.focus().select()}},b.onSearch=function(){if(t!==!0){var b=a.trim(B.val());if(0!==b.length&&b.length<3)return f.showLoading(z,!1),void f.showAlert(A,"You must enter at least three characters.");h.send(h.CONST.MAIN,h.CONST.CLK_ALARM_FILTER_USER_GROUP),f.showLoading(z,!1),q(!1,b)}},b.onInputEdit=function(a){13==a.keyCode?b.onApplyEdit():27==a.keyCode&&(b.onCancelEdit(),a.stopPropagation())},b.onCancelEdit=function(){f.hide(C)},b.onApplyEdit=function(){var b=a.trim(D.val());return""===b?(f.showLoading(z,!0),void f.showAlert(A,"Input group id.")):(f.showLoading(z,!0),f.hasDuplicateItem(v,function(a){return a.id==b})&&s===!0?void f.showAlert(A,"Exist a same group name in the lists."):void(s?(h.send(h.CONST.MAIN,h.CONST.CLK_ALARM_CREATE_USER_GROUP),n(b)):o(f.extractID(D),b)))},b.onCloseAlert=function(){f.closeAlert(A,z)},b.$on("alarmUserGroup.configuration.show",function(){u===!1&&q(!0)})}}}])}(jQuery),function(a){"use strict";pinpointApp.directive("alarmGroupMemberDirective",["$rootScope","$timeout","helpContentTemplate","helpContentService","AlarmUtilService","AlarmBroadcastService","AnalyticsService",function(b,c,d,e,f,g,h){return{restrict:"EA",replace:!0,templateUrl:"features/configuration/alarm/alarmGroupMember.html?v="+G_BUILD_TIME,scope:!0,link:function(b,c){function d(a){f.showLoading(t,!1),m(f.extractID(a))}function e(a){a.find("span.right").remove().end().find("span.remove").show().end().removeClass("remove"),A=!1}function i(a){var c=0;if(b.groupMemberList!=B)for(c=0;c0}function p(){return""===y?(f.showLoading(t,!1),f.showAlert(u,"Not selected User Group.",!0),!1):!0}var q=a(c),r=q.find(".wrapper"),s=q.find(".total"),t=q.find(".some-loading"),u=q.find(".some-alert"),v=q.find("div.filter-input input"),w=q.find("div.filter-input button.trash"),x=a(['','','',""].join("")),y="",z=!1,A=!1,B=b.groupMemberList=[],C=q.find(".some-list-content ul");C.on("click",function(b){var c=a(b.toElement||b.target),f=c.get(0).tagName.toLowerCase(),g=c.parents("li");if("button"==f)c.hasClass("confirm-cancel")?e(g):c.hasClass("confirm-remove")&&d(g);else if("span"==f)if(c.hasClass("remove")){if(A===!0)return;A=!0,g.addClass("remove").find("span.remove").hide().end().append(x)}else c.hasClass("glyphicon-remove")?e(g):c.hasClass("glyphicon-ok")&&d(g)}),b.prefix="alarmGroupMember_",b.onRefresh=function(){A!==!0&&p()!==!1&&(h.send(h.CONST.MAIN,h.CONST.CLK_ALARM_REFRESH_USER),v.val(""),f.showLoading(t,!1),n())},b.onInputFilter=function(c){return A!==!0?13==c.keyCode?void b.onFilterGroup():void(a.trim(v.val()).length>=3?w.removeClass("disabled"):w.addClass("disabled")):void 0},b.onFilterGroup=function(){if(A!==!0&&p()!==!1){var c=a.trim(v.val());if(0!==c.length&&c.length<3)return f.showLoading(t,!1),void f.showAlert(u,"You must enter at least three characters.");if(h.send(h.CONST.MAIN,h.CONST.CLK_ALARM_FILTER_USER),""===c)b.groupMemberList.length!=B.length&&(b.groupMemberList=B,f.unsetFilterBackground(r)),w.addClass("disabled");else{for(var d=[],e=(B.length,0);ed;d++)if(I[d].userId==a){b=I[d];break}return b}function l(a,c,d,e,g){var h={userId:a,name:c,department:d,phoneNumber:e,email:g};f.sendCRUD("createPinpointUser",h,function(a){f.hide(t,x),v.val("userName"),w.val(c),b.onSearch()},function(a){},u)}function m(a,b,c,d,e){var h={userId:a,name:b,department:c,phoneNumber:d,email:e};f.sendCRUD("updatePinpointUser",h,function(i){for(var j=0;j()[\]\.,;:\s@\"]+(\.[^<>()[\]\.,;:\s@\"]+)*)|(\".+\"))@(([^<>()[\]\.,;:\s@\"]+\.)+[^<>()[\]\.,;:\s@\"]{2,})$/i;return b.test(a)}function q(a){var b=/^\d+$/;return b.test(a)}var r=a(c),s=(r.find(".some-list-header button"),r.find(".wrapper"),r.find(".empty-list"),r.find(".total")),t=r.find(".some-loading"),u=r.find(".some-alert"),v=r.find("select"),w=r.find("div.filter-input input"),x=r.find(".some-edit-content"),y=x.find("input[name=userID]"),z=x.find("input[name=name]"),A=x.find("input[name=department]"),B=x.find("input[name=phone]"),C=x.find("input[name=email]"),D=x.find(".title-message"),E=a(['','','',""].join("")),F=!1,G=!0,H=!1,I=b.pinpointUserList=[],J=r.find(".some-list-content ul");J.on("click",function(c){var f=a(c.toElement||c.target),g=f.get(0).tagName.toLowerCase(),h=f.parents("li");if("button"==g)f.hasClass("confirm-cancel")?j(h):f.hasClass("confirm-cancel")?e(h):f.hasClass("move")?d(h):f.hasClass("edit-user")&&b.onUpdate(c);else if("span"==g)if(f.hasClass("remove")){if(H===!0)return;H=!0,h.addClass("remove").find("span.remove").hide().end().find("button.move").addClass("disabled").end().append(E)}else f.hasClass("contents")||(f.hasClass("glyphicon-edit")?b.onUpdate(c):f.hasClass("glyphicon-remove")?j(h):f.hasClass("glyphicon-ok")?e(h):f.hasClass("glyphicon-chevron-left")&&d(h))}),b.isAllowedCreate=i.editUserInfo,b.onCreate=function(){H!==!0&&(G=!0,D.html("Create new pinpoint user"),y.prop("disabled",""),y.val(""),z.val(""),A.val(""),B.val(""),C.val(""),f.show(x),y.focus())},b.onUpdate=function(b){if(H!==!0){G=!1;var c=a(b.toElement||b.target).parents("li"),d=k(f.extractID(c));D.html("Update pinpoint user data."),y.prop("disabled","disabled"),y.val(d.userId),z.val(d.name),A.val(d.department),B.val(d.phoneNumber),C.val(d.email),f.show(x),z.focus().select()}},b.onInputSearch=function(a){return H!==!0&&13==a.keyCode?void b.onSearch():void 0},b.onSearch=function(){if(H!==!0){var b=v.val(),c=a.trim(w.val());if(0!==c.length&&c.length<3)return f.showLoading(t,!1),void f.showAlert(u,"You must enter at least three characters.");h.send(h.CONST.MAIN,h.CONST.CLK_ALARM_FILTER_PINPOINT_USER),f.showLoading(t,!1);var d={};d[b]=c,o(d)}},b.onInputEdit=function(a){13==a.keyCode?b.onApplyEdit():27==a.keyCode&&(b.onCancelEdit(),a.stopPropagation())},b.onCancelEdit=function(){f.hide(x)},b.onApplyEdit=function(){var b=a.trim(y.val()),c=a.trim(z.val()),d=a.trim(A.val()),e=a.trim(B.val()),g=a.trim(C.val());return""===b||""===c?(f.showLoading(t,!0),void f.showAlert(u,"You must input user id and user name.")):(f.showLoading(t,!0),f.hasDuplicateItem(I,function(a){return a.userId==b})&&G===!0?void f.showAlert(u,"Exist a same user id in the lists."):q(e)===!1?void f.showAlert(u,"You can only input numbers."):p(g)===!1?void f.showAlert(u,"Invalid email format."):void(G?(h.send(h.CONST.MAIN,h.CONST.CLK_ALARM_CREATE_PINPOINT_USER),l(b,c,d,e,g)):m(b,c,d,e,g)))},b.onCloseAlert=function(){f.closeAlert(u,t)},b.$on("alarmPinpointUser.configuration.load",function(a,b){F===!1&&o(""===b?{}:{department:b})}),b.$on("alarmPinpointUser.configuration.addUserCallback",function(a){f.hide(t)})}}}])}(jQuery),function(a){"use strict";pinpointApp.directive("alarmRuleDirective",["$rootScope","$document","$timeout","AlarmUtilService","AnalyticsService","TooltipService",function(b,c,d,e,f,g){return{restrict:"EA",replace:!0,templateUrl:"features/configuration/alarm/alarmRule.html?v="+G_BUILD_TIME,scope:!0,link:function(b,h){function i(){O===!0&&u.find("tr.remove").each(function(){k(a(this))}),b.onCancelEdit(),e.unsetFilterBackground(v),z.val(""),A.val("")}function j(a){e.showLoading(x,!1),r(e.extractID(a))}function k(a){a.removeClass("remove").find("span.removeTemplate").remove().end().find("span.remove").show().end().find("td").removeClass("remove"),O=!1}function l(){a('[data-toggle="alarm-popover"]').popover()}function m(a){if(!a.id)return a.text;var b=a.text.split("@");if(b.length>1){var d=c.get(0).createElement("img");return d.src="/images/icons/"+b[1]+".png",d.style.height="25px",d.style.paddingRight="3px",d.outerHTML+b[0]}return a.text}function n(){D.select2({placeholder:"Select an application.",searchInputPlaceholder:"Input your application name.",allowClear:!1,formatResult:m,formatSelection:m,escapeMarkup:function(a){return a}}).on("change",function(a){}),E.select2({searchInputPlaceholder:"Input your rule name.",placeholder:"Select an rule.",allowClear:!1,formatResult:m,formatSelection:m,escapeMarkup:function(a){return a}}).on("change",function(a){})}function o(a){for(var b,c=P.length,d=0;c>d;d++)if(P[d].ruleId==a){b=P[d];break}return b}function p(a,b,c,f,g,h,i){var j={applicationId:a,serviceType:b,userGroupId:L,checkerName:c,threshold:f,smsSend:g,emailSend:h,notes:i};e.sendCRUD("createRule",j,function(a){j.ruleId=a.ruleId,P.push(j),e.setTotal(w,P.length),d(function(){l()}),e.hide(x,C)},function(a){},y)}function q(a,b,c,f,g,h,i,j){var k={ruleId:a,applicationId:b,serviceType:c,userGroupId:L,checkerName:f,threshold:parseInt(g,10),smsSend:h,emailSend:i,notes:j};e.sendCRUD("updateRule",k,function(k){for(var m=0;m1||e.sendCRUD("getRuleSet",{},function(a){for(var c=0;c','','',""].join("")),L="",M=!1,N=!0,O=!1,P=b.ruleList=[],Q=u.find(".some-list-content .wrapper tbody");Q.on("click",function(c){var d=a(c.toElement||c.target),e=d.get(0).tagName.toLowerCase(),f=d.parents("tr");if("button"==e)d.hasClass("edit")?b.onUpdate(c):d.hasClass("confirm-remove")?j(f):d.hasClass("confirm-cancel")&&k(f);else if("span"==e)if(d.hasClass("remove")){if(O===!0)return;O=!0,f.addClass("remove").find("td:last-child").addClass("remove").find("span.remove").hide().end().append(K)}else d.hasClass("glyphicon-edit")?b.onUpdate(c):d.hasClass("glyphicon-remove")?k(f):d.hasClass("glyphicon-ok")&&j(f)}),g.init("alarmRules"),b.ruleSets=[{text:""}],b.onRefresh=function(){O!==!0&&(f.send(f.CONST.MAIN,f.CONST.CLK_ALARM_REFRESH_RULE),i(),e.showLoading(x,!1),s(!1))},b.onCreate=function(){O!==!0&&(N=!0,J.html("Create new pinpoint user"),D.select2("val",""),E.select2("val",""),F.val("0"),G.prop("checked",""),H.prop("checked",""),I.val(""),e.show(C))},b.onUpdate=function(b){if(O!==!0){N=!1;var c=a(b.toElement||b.target).parents("tr"),d=e.extractID(c),f=o(d);J.html("Update rule data."),D.select2("val",f.applicationId+"@"+f.serviceType).parent().prop("id","updateRule_"+d),E.select2("val",f.checkerName),F.val(f.threshold),G.prop("checked",f.smsSend),H.prop("checked",f.emailSend),I.val(f.notes),e.show(C)}},b.onInputFilter=function(c){return O!==!0?13==c.keyCode?void b.onFilterGroup():void(a.trim(z.val()).length>=3||a.trim(A.val()).length?B.removeClass("disabled"):B.addClass("disabled")):void 0},b.onFilterGroup=function(){if(O!==!0){var c=a.trim(z.val()),d=a.trim(A.val());if(0!==c.length&&c.length<3||0!==d.length&&d.length<3)return e.showLoading(x,!1),void e.showAlert(y,"You must enter at least three characters.");if(f.send(f.CONST.MAIN,f.CONST.CLK_ALARM_FILTER_RULE),""===c&&""===d)b.ruleList.length!=P.length&&(b.ruleList=P,e.unsetFilterBackground(v)),B.addClass("disabled");else{for(var g=[],h=(P.length,0);h
',chartDirective:Handlebars.compile('')},css:{borderWidth:2,height:180,navbarHeight:70,titleHeight:30},sumChart:{width:260,height:120},otherChart:{width:120,height:60},"const":{MIN_Y:10}}),pinpointApp.controller("RealtimeChartCtrl",["RealtimeChartCtrlConfig","$scope","$element","$rootScope","$compile","$timeout","$window","globalConfig","$location","RealtimeWebsocketService","AnalyticsService","TooltipService",function(b,c,d,e,f,g,h,i,j,k,l,m){function n(){p("sum")===!1&&(Q.append(f(b.template.chartDirective({width:b.sumChart.width,height:b.sumChart.height,namespace:"sum",chartColor:"sumChartColor",xAxisCount:O,showExtraInfo:"true",timeoutMaxCount:N}))(c)),$.sum=-1)}function o(){angular.isDefined($.sum)?($={},$.sum=-1):$={}}function p(a){return angular.isDefined($[a])}function q(d){var e=a(b.template.agentChart).append(f(b.template.chartDirective({width:b.otherChart.width,height:b.otherChart.height,namespace:Z.length,chartColor:"agentChartColor",xAxisCount:O,showExtraInfo:"false",timeoutMaxCount:N}))(c));T.append(e),w(d,Z.length),Z.push(e)}function r(){var a=k.open({onopen:function(a){D()},onmessage:function(a){s(a)},onclose:function(a){c.$apply(function(){H()})},ondelay:function(){k.close()},retry:function(){c.retryConnection()}});a&&n()}function s(a){switch(U.hide(),a[b.keys.TYPE]){case b.values.PING:k.send(fa);break;case b.values.RESPONSE:var c=a[b.keys.RESULT];if(c[b.keys.APPLICATION_NAME]!==Y)return;var d=c[b.keys.ACTIVE_THREAD_COUNTS],e=A(d);B(e),t(d,e,c[b.keys.TIME_STAMP])}}function t(a,d,e){var f=Math.max(C(),b["const"].MIN_Y),g=0,h=!0;for(var i in a)v(i,g),a[i][b.keys.CODE]===P?(h=!1,c.$broadcast("realtimeChartDirective.onData."+$[i],a[i][b.keys.STATUS],e,f,h)):c.$broadcast("realtimeChartDirective.onError."+$[i],a[i],e,f),y(g),g++;c.$broadcast("realtimeChartDirective.onData.sum",d,e,f,h),S.html(g)}function u(a){return ga[b.keys.PARAMETERS][b.keys.APPLICATION_NAME]=a,JSON.stringify(ga)}function v(a,b){p(a)===!1&&(x(b)?w(a,b):q(a)),z(b,a)}function w(a,b){$[a]=b}function x(a){return Z.length>a}function y(a){Z[a].show()}function z(a,b){Z[a].find("div").html(b)}function A(a){var c=[0,0,0,0];for(var d in a)a[d][b.keys.CODE]===P&&jQuery.each(a[d][b.keys.STATUS],function(a,b){c[a]+=b});return c}function B(a){_.push(a.reduce(function(a,b){return a+b})),_.length>O&&_.shift()}function C(){return d3.max(_,function(a){return a})}function D(){k.send(u(Y))}function E(){k.isOpened()===!1?r():D(),da=!0}function F(){da=!1,k.stopReceive(u(""))}function G(){e.$broadcast("realtimeChartDirective.clear.sum"),a.each(Z,function(a,b){e.$broadcast("realtimeChartDirective.clear."+a),b.hide()})}function H(){U.css("background-color","rgba(200, 200, 200, 0.9)"),U.find("h4").css("color","red").html("Closed connection.

Select node again."),U.find("button").show(),U.show()}function I(){U.css("background-color","rgba(138, 171, 136, 0.5)"),U.find("h4").css("color","blue").html("Waiting Connection..."),U.find("button").hide(),U.show()}function J(){d.animate({bottom:-ea,left:0},500,function(){V.removeClass("glyphicon-chevron-down").addClass("glyphicon-chevron-up")})}function K(){d.animate({bottom:0,left:0},500,function(){V.removeClass("glyphicon-chevron-up").addClass("glyphicon-chevron-down")})}function L(){d.innerWidth(d.parent().width()-b.css.borderWidth+"px")}function M(){W.css("color",aa?"red":"")}d=a(d);var N=10,O=10,P=0,Q=d.find("div.agent-sum-chart"),R=d.find("div.agent-sum-chart div:first-child span:first-child"),S=d.find("div.agent-sum-chart div:first-child span:last-child"),T=d.find("div.agent-chart-list"),U=d.find(".connection-message"),V=d.find(".handle .glyphicon"),W=d.find(".glyphicon-pushpin"),X="",Y="",Z=[],$={},_=[0],aa=!0,ba=!1,ca=!1,da=!0,ea=b.css.height,fa=function(){var a={};return a[b.keys.TYPE]=b.values.PONG,JSON.stringify(a)}(),ga=function(){var a={};return a[b.keys.TYPE]=b.values.REQUEST,a[b.keys.COMMAND]=b.values.ACTIVE_THREAD_COUNT,a[b.keys.PARAMETERS]={},a}(),ha=null;m.init("realtime"),c.sumChartColor=["rgba(44, 160, 44, 1)","rgba(60, 129, 250, 1)","rgba(248, 199, 49, 1)","rgba(246, 145, 36, 1)"],c.agentChartColor=["rgba(44, 160, 44, .8)","rgba(60, 129, 250, .8)","rgba(248, 199, 49, .8)","rgba(246, 145, 36, .8)"],c.requestLabelNames=["1s","3s","5s","Slow"],c.bInitialized=!1,U.hide(),R.html(""),S.html("0"),a(document).on("visibilitychange",function(){switch(document.visibilityState){case"hidden":ha=g(function(){k.close(),ha=null},6e4);break;case"visible":null!==ha?g.cancel(ha):c.retryConnection(),ha=null}}),c.$on("realtimeChartController.close",function(){J();var a=da;c.closePopup(),da=a,M()}),c.$on("realtimeChartController.initialize",function(a,b,d,e){if((aa!==!0||X!==e)&&/^\/main/.test(j.path())!==!1&&(ba=angular.isUndefined(b)?!1:b,d=angular.isUndefined(d)?"":d,X=e,R.html(Y=d),i.useRealTime!==!1&&da!==!1)){if(ba===!1)return void J();o(),L(),c.bInitialized=!0,K(),c.closePopup(),R.html(Y=d),I(),E(),M()}}),c.retryConnection=function(){I(),E()},c.pin=function(){aa=!aa,M()},c.resizePopup=function(){l.send(l.CONST.MAIN,l.CONST.TG_REALTIME_CHART_RESIZE),ca?(ea=b.css.height,d.css({height:b.css.height+"px",bottom:"0px"}),T.css("height","150px")):(ea=h.innerHeight-b.css.navbarHeight,d.css({height:ea+"px",bottom:"0px"}),T.css("height",ea-b.css.titleHeight+"px")),ca=!ca},c.toggleRealtime=function(){ba!==!1&&(da===!0?(l.send(l.CONST.MAIN,l.CONST.CLK_REALTIME_CHART_HIDE),J(),F(),G(),da=!1):(l.send(l.CONST.MAIN,l.CONST.CLK_REALTIME_CHART_SHOW),K(),I(),E(),da=!0))},c.closePopup=function(){F(),G(),U.hide(),R.html(Y=""),S.html("0")},a(h).on("resize",function(){L()})}])}(jQuery),function(){"use strict";pinpointApp.controller("MainCtrl",["filterConfig","$scope","$timeout","$routeParams","locationService","NavbarVoService","$window","SidebarTitleVoService","filteredMapUtilService","$rootElement","AnalyticsService",function(a,b,c,d,e,f,g,h,i,j,k){k.send(k.CONST.MAIN_PAGE);var l,m,n,o,p,q;b.hasScatter=!1,g.htoScatter={},m=!0,n=!1,b.sidebarLoading=!0,c(function(){l=new f,d.application&&l.setApplication(d.application),d.readablePeriod&&l.setReadablePeriod(d.readablePeriod),d.queryEndDateTime&&l.setQueryEndDateTime(d.queryEndDateTime),l.isRealtime()?b.$broadcast("navbarDirective.initialize.realtime.andReload",l):angular.isDefined(d.application)&&angular.isUndefined(d.readablePeriod)&&angular.isUndefined(d.readablePeriod)?b.$broadcast("navbarDirective.initialize.andReload",l):(g.$routeParams=d,l.autoCalculateByQueryEndDateTimeAndReadablePeriod(),b.$broadcast("navbarDirective.initialize",l),b.$broadcast("scatterDirective.initialize",l),b.$broadcast("serverMapDirective.initialize",l))},500),o=function(){return e.path().split("/")[1]||"main"},p=function(){var a="/"+o()+"/"+l.getApplication()+"/";l.isRealtime()?(a+=l.getPeriodType(),g.$routeParams={application:l.getApplication(),readablePeriod:l.getPeriodType()}):a+=l.getReadablePeriod()+"/"+l.getQueryEndDateTime(),e.path()!==a&&("/main"===e.path()?e.path(a).replace():e.skipReload().path(a).replace(),g.$routeParams={application:l.getApplication(),readablePeriod:l.getReadablePeriod().toString(),queryEndDateTime:l.getQueryEndDateTime().toString()},b.$$phase||b.$apply())},q=function(a,b){var c=i.getFilteredMapUrlWithFilterVo(l,a,b);g.open(c,"")},b.getMainContainerClass=function(){return n?"no-data":""},b.getInfoDetailsClass=function(){var a=[];return b.hasScatter&&a.push("has-scatter"),b.hasFilter&&a.push("has-filter"),a.join(" ")},b.$on("serverMapDirective.hasData",function(a){n=!1,b.sidebarLoading=!1}),b.$on("serverMapDirective.hasNoData",function(a){n=!0,b.sidebarLoading=!1}),b.$on("navbarDirective.changed",function(a,c){n=!1,l=c,p(l),g.htoScatter={},b.hasScatter=!1,b.sidebarLoading=!0,b.$broadcast("sidebarTitleDirective.empty.forMain"),b.$broadcast("nodeInfoDetailsDirective.hide"),b.$broadcast("linkInfoDetailsDirective.hide"),b.$broadcast("scatterDirective.initialize",l),b.$broadcast("serverMapDirective.initialize",l),b.$broadcast("sidebarTitleDirective.empty.forMain")}),b.$on("serverMapDirective.passingTransactionResponseToScatterChart",function(a,c){b.$broadcast("scatterDirective.initializeWithNode",c)}),b.$on("serverMapDirective.nodeClicked",function(a,c,d,e,f,g){m=!0;var i=new h;i.setImageType(e.serviceType),e.isWas===!0?(b.hasScatter=!0,i.setTitle(e.applicationName),b.$broadcast("scatterDirective.initializeWithNode",e)):e.unknownNodeGroup?(i.setTitle(e.serviceType.replace("_"," ")),b.hasScatter=!1):(i.setTitle(e.applicationName), -b.hasScatter=!1),b.hasFilter=!1,b.$broadcast("sidebarTitleDirective.initialize.forMain",i,e),b.$broadcast("nodeInfoDetailsDirective.initialize",c,d,e,f,l,null,g),b.$broadcast("linkInfoDetailsDirective.hide")}),b.$on("serverMapDirective.linkClicked",function(a,c,d,e,f){m=!1;var g=new h;e.unknownLinkGroup?g.setImageType(e.sourceInfo.serviceType).setTitle("Unknown Group from "+e.sourceInfo.applicationName):g.setImageType(e.sourceInfo.serviceType).setTitle(e.sourceInfo.applicationName).setImageType2(e.targetInfo.serviceType).setTitle2(e.targetInfo.applicationName),b.hasScatter=!1;var j=i.findFilterInNavbarVo(e.sourceInfo.applicationName,e.sourceInfo.serviceType,e.targetInfo.applicationName,e.targetInfo.serviceType,l);j?(b.hasFilter=!0,b.$broadcast("filterInformationDirective.initialize.forMain",j.oServerMapFilterVoService)):b.hasFilter=!1,b.$broadcast("sidebarTitleDirective.initialize.forMain",g),b.$broadcast("nodeInfoDetailsDirective.hide"),b.$broadcast("linkInfoDetailsDirective.initialize",c,d,e,f,l)}),b.$on("serverMapDirective.openFilteredMap",function(a,b,c){q(b,c)}),b.$on("linkInfoDetailsDirective.openFilteredMap",function(a,b,c){q(b,c)}),b.$on("linkInfoDetailsDirective.openFilterWizard",function(a,c,d){b.$broadcast("serverMapDirective.openFilterWizard",c,d)}),b.$on("linkInfoDetailsDirective.ResponseSummary.barClicked",function(a,b){q(b)}),b.$on("linkInfoDetailsDirective.showDetailInformationClicked",function(a,c,d){b.hasScatter=!1;var e=new h;e.setImageType(d.sourceInfo.serviceType).setTitle(d.sourceInfo.applicationName).setImageType2(d.targetInfo.serviceType).setTitle2(d.targetInfo.applicationName),b.$broadcast("sidebarTitleDirective.initialize.forMain",e),b.$broadcast("nodeInfoDetailsDirective.hide")}),b.$on("nodeInfoDetailDirective.showDetailInformationClicked",function(a,c,d){b.hasScatter=!1;var e=new h;e.setImageType(d.serviceType),d.unknownNodeGroup?(e.setTitle(d.serviceType.replace("_"," ")),b.hasScatter=!1):(e.setTitle(d.applicationName),b.hasScatter=!1),b.$broadcast("sidebarTitleDirective.initialize.forMain",e),b.$broadcast("linkInfoDetailsDirective.hide")}),b.loadingOption={hideTip:"init"},b.$watch("loadingOption.hideTip",function(a){if("init"!=a&&g.localStorage){var b=new Date;b.setDate(b.getDate()+30),g.localStorage.setItem("__HIDE_LOADING_TIP",a?b.valueOf():"-")}})}])}(),function(){"use strict";pinpointApp.controller("InspectorCtrl",["$scope","$timeout","$routeParams","locationService","NavbarVoService","AnalyticsService",function(a,b,c,d,e,f){f.send(f.CONST.INSPECTOR_PAGE);var g,h,i,j,k,l;b(function(){g=new e,c.application&&g.setApplication(c.application),c.readablePeriod&&g.setReadablePeriod(c.readablePeriod),c.queryEndDateTime&&g.setQueryEndDateTime(c.queryEndDateTime),c.agentId&&g.setAgentId(c.agentId),g.autoCalculateByQueryEndDateTimeAndReadablePeriod(),a.$emit("navbarDirective.initializeWithStaticApplication",g),a.$emit("agentListDirective.initialize",g)},500),a.$on("navbarDirective.changed",function(a,b){g=b,j()}),a.$on("agentListDirective.agentChanged",function(b,c){h=c,g.setAgentId(c.agentId),l()&&j(),h&&a.$emit("agentInfoDirective.initialize",g,h)}),i=function(){var a=d.path().split("/");return a[1]||"inspector"},j=function(){var b=k();l()&&("/inspector"===d.path()||d.skipReload().path(b).replace(),a.$emit("navbarDirective.initializeWithStaticApplication",g),a.$emit("agentListDirective.initialize",g))},k=function(){var a="/"+i()+"/"+g.getApplication()+"/"+g.getReadablePeriod()+"/"+g.getQueryEndDateTime();return g.getAgentId()&&(a+="/"+g.getAgentId()),a},l=function(){var a=k();return d.path()!==a}}])}(),function(){"use strict";pinpointApp.constant("TransactionListConfig",{applicationUrl:"/transactionmetadata.pinpoint",MAX_FETCH_BLOCK_SIZE:100}),pinpointApp.controller("TransactionListCtrl",["TransactionListConfig","$scope","$location","$routeParams","$rootScope","$timeout","$window","$http","webStorage","TimeSliderVoService","TransactionDaoService","AnalyticsService","helpContentService",function(a,b,c,d,e,f,g,h,i,j,k,l,m){l.send(l.CONST.TRANSACTION_LIST_PAGE);var n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H;f(function(){n=1,o=0,b.transactionDetailUrl="index.html#/transactionDetail",b.sidebarLoading=!0;var a=E(),c=F(),e=!angular.isUndefined(d.transactionInfo);if(e){var h=d.transactionInfo.lastIndexOf("-"),i=d.transactionInfo.lastIndexOf("-",h-1);s=[d.transactionInfo.substring(0,i),d.transactionInfo.substring(i+1,h),d.transactionInfo.substring(h+1)]}a&&c?(p=A(g.name),B(p.applicationName)?(q=C(p),G(e)):H(m.transactionList.openError.noData.replace(/\{\{application\}\}/,p.applicationName))):e===!1?H(m.transactionList.openError.noParent):(p=D(),q=[[s[1],s[2],s[0]]],G(e)),f(function(){$("#main-container").layout({north__minSize:20,north__size:(window.innerHeight-40)/2,center__maskContents:!0})},100)},100),H=function(a){alert(a),g.location.replace(g.location.href.replace("transactionList","main"))},G=function(a){r=new j,r.setTotal(q.length),t(a)},E=function(){return angular.isDefined(g.opener)},F=function(){if(angular.isUndefined(g.opener)||null===g.opener)return!1;var a=g.opener.$routeParams;if(angular.isDefined(d)&&angular.isDefined(a))if("realtime"===a.readablePeriod){if(angular.equals(d.application,a.application))return!0}else if(angular.equals(d.application,a.application)&&angular.equals(d.readablePeriod,a.readablePeriod)&&angular.equals(d.queryEndDateTime,a.queryEndDateTime))return!0;return!1},A=function(a){var b=a.split("|");return 4===b.length?{applicationName:b[0],type:b[1],min:b[2],max:b[3]}:{applicationName:b[0],nXFrom:b[1],nXTo:b[2],nYFrom:b[3],nYTo:b[4]}},D=function(){return{applicationName:d.application.split("@")[0],nXFrom:parseInt(s[1])-1e3,nXTo:parseInt(s[1])+1e3,nYFrom:0,nYTo:0}},B=function(a){return angular.isDefined(g.opener.htoScatter[a])},C=function(a){var b=g.opener.htoScatter[a.applicationName];return a.type?b.getDataByRange(a.type,a.min,a.max):b.getDataByXY(a.nXFrom,a.nXTo,a.nYFrom,a.nYTo)},w=function(a){b.$emit("transactionTableDirective.appendTransactionList",a.metadata)},x=function(){if(!q)return g.alert("Query failed - Query parameter cache deleted.\n\nPossibly due to scatter chart being refreshed."),!1;for(var b=[],c=o,d=0;c0&&b.push("&"),b=b.concat(["I",d,"=",q[c][0]]),b=b.concat(["&T",d,"=",q[c][1]]),b=b.concat(["&R",d,"=",q[c][2]]),o++;return n++,b},u=function(){y(x(),function(c){return 0===c.metadata.length?(b.$emit("timeSliderDirective.disableMore"),b.$emit("timeSliderDirective.changeMoreToDone"),!1):(c.metadata.length=3e4?b._sResponseTo="max":b._sResponseTo=a}return b},this.getResponseTo=function(){return b._sResponseTo},this.setIncludeException=function(a){if(!angular.isDefined(a))throw new Error("includeException should be defined in ServerMapFilterVo.");return b._bIncludeException=a,b},this.getIncludeException=function(){return b._bIncludeException},this.setRequestUrlPattern=function(a){return angular.isString(a)&&(b._sRequestUrlPattern=a),b},this.getRequestUrlPattern=function(){return b._sRequestUrlPattern},this.toJson=function(){var a={fa:b._sFromApplication,fst:b._sFromServiceType,ta:b._sToApplication,tst:b._sToServiceType,ie:b._bIncludeException};return 0===b._sResponseFrom&&"max"===b._sResponseTo||(a.rf=b._sResponseFrom,a.rt=b._sResponseTo),b._sRequestUrlPattern&&(a.url=b._sRequestUrlPattern),b._sFromAgentName&&(a.fan=b._sFromAgentName),b._sToAgentName&&(a.tan=b._sToAgentName),a},a&&angular.isObject(a)&&(this.setFromApplication(a.fa).setFromServiceType(a.fst).setToApplication(a.ta).setToServiceType(a.tst).setIncludeException(a.ie),angular.isNumber(a.rf)&&a.rt&&this.setResponseFrom(a.rf).setResponseTo(a.rt),a.url&&this.setRequestUrlPattern(a.url),a.fan&&this.setFromAgentName(a.fan),a.tan&&this.setToAgentName(a.tan))}}])}(),function(a){"use strict";pinpointApp.constant("AlarmAjaxServiceConfig",{group:"/userGroup.pinpoint",groupMember:"/userGroup/member.pinpoint",pinpointUser:"/user.pinpoint",alarmRule:"/alarmRule.pinpoint",alarmRuleSet:"/alarmRule/checker.pinpoint"}),pinpointApp.service("AlarmAjaxService",["AlarmAjaxServiceConfig","$http",function(b,c){function d(a,b,d){c.post(a,b).then(function(a){d(a.data)},function(a){d(a)})}function e(a,b,d){c.put(a,b).then(function(a){d(a.data)},function(a){d(a)})}function f(b,c,d){a.ajax(b,{type:"DELETE",data:JSON.stringify(c),contentType:"application/json"}).done(function(a){d(a)}).fail(function(a){d(a)})}function g(a,b,d){var e="?";for(var f in b)e+=("?"==e?"":"&")+f+"="+b[f];c.get(a+e).then(function(a){d(a.data)},function(a){d(a)})}this.getUserGroupList=function(a,c){g(b.group,a,c)},this.createUserGroup=function(a,c){d(b.group,a,c)},this.updateUserGroup=function(a,c){e(b.group,a,c)},this.removeUserGroup=function(a,c){f(b.group,a,c)},this.addMemberInGroup=function(a,c){d(b.groupMember,a,c)},this.getGroupMemberListInGroup=function(a,c){g(b.groupMember,a,c)},this.removeMemberInGroup=function(a,c){f(b.groupMember,a,c)},this.getPinpointUserList=function(a,c){g(b.pinpointUser,a,c)},this.createPinpointUser=function(a,c){d(b.pinpointUser,a,c)},this.updatePinpointUser=function(a,c){e(b.pinpointUser,a,c)},this.removePinpointUser=function(a,c){f(b.pinpointUser,a,c)},this.getRuleList=function(a,c){g(b.alarmRule,a,c)},this.createRule=function(a,c){d(b.alarmRule,a,c)},this.updateRule=function(a,c){e(b.alarmRule,a,c)},this.removeRule=function(a,c){f(b.alarmRule,a,c)},this.getRuleSet=function(a,c){g(b.alarmRuleSet,a,c)}}])}(jQuery),function(a){"use strict";pinpointApp.constant("AlarmUtilServiceConfig",{hideClass:"hide-me",hasNotEditClass:"has-not-edit"}),pinpointApp.service("AlarmUtilService",["AlarmUtilServiceConfig","AlarmAjaxService",function(a,b){var c=this;this.show=function(b){b.removeClass(a.hideClass)},this.hide=function(){for(var b=0;b0&&(e-=1,i+m>l.offsetWidth+l.scrollLeft||i+j-ml.offsetHeight+l.scrollTop||f+k-m=2?c.substring(0,2):b,{userLocale:c,defaultLocale:b}}])}(),function(){"use strict";var a={configuration:{general:{warning:"(User configuration is stored in browser cache. Server-side storage will be supported in a future release.)",empty:"Favorite list empty"},alarmRules:{mainStyle:"",title:"Alarm Rule Type",desc:"The following types of alarm rules are supported by Pinpoint.",category:[{title:"[Type]",items:[{name:"SLOW COUNT",desc:"Sends an alarm when the number of slow requests sent by the application exceeds the configured threshold."},{name:"SLOW RATE",desc:"Sends an alarm when the percentage(%) of slow requests sent by the application exceeds the configured threshold."},{name:"ERROR COUNT",desc:"Sends an alarm when the number of failed requests sent by the application exceeds the configured threshold."},{name:"ERROR RATE",desc:"Sends an alarm when the percentage(%) of failed requests sent by the application exceeds the configured threshold."},{name:"TOTAL COUNT",desc:"Sends an alarm when the number of all requests sent by the application exceeds the configured threshold."},{name:"SLOW COUNT TO CALLEE",desc:"Sends an alarm when the number of slow responses returned by the application exceeds the configured threshold."},{name:"SLOW RATE TO CALLEE",desc:"Sends an alarm when the percentage(%) of slow responses returned by the application exceeds the configured threshold."},{name:"ERROR COUNT TO CALLEE",desc:"Sends an alarm when the number of failed responses returned by the application exceeds the configured threshold."},{name:"ERROR RATE TO CALLEE",desc:"Sends an alarm when the percentage(%) of failed responses returned by the application exceeds the configured threshold."},{name:"TOTAL COUNT TO CALLEE",desc:"Sends an alarm when the number of all remote calls sent to the application exceeds the configured threshold."},{name:"HEAP USAGE RATE",desc:"Sends an alarm when the application's heap usage(%) exceeds the configured threshold."},{name:"JVM CPU USAGE RATE",desc:"Sends an alarm when the application's CPU usage(%) exceeds the configured threshold."}]}]}},navbar:{searchPeriod:{guide:"Search duration may not be greater than {{day}} days."},applicationSelector:{mainStyle:"",title:"Application List",desc:"Shows the list of applications with Pinpoint installed.",category:[{title:"[Legend]",items:[{name:"Icon",desc:"Application Type"},{name:"Text",desc:"Application Name. The value set using -Dpinpoint.applicationName when launching Pinpoint agent."}]}]},depth:{mainStyle:"",title:' Inbound 와 Outbound',desc:"Search-depth of server map.",category:[{title:"[범례]",items:[{name:"Inbound",desc:"Number of depth to render for requests coming in to the selected node."},{name:"Outbound",desc:"Number of depth to render for requests going out from the selected node"}]}]},periodSelector:{mainStyle:"",title:"Period Selector",desc:"Selects the time period for querying data.",category:[{title:"[Usage]",items:[{name:"",desc:"Query for data traced during the most recent selected time-period.
Auto-refresh is supported for 5m, 10m, 3h time-period."},{name:"",desc:"Query for data traced between the two selected times for a maximum of 48 hours."}]}]}},servermap:{"default":{mainStyle:"width:560px;",title:"Server Map",desc:"Displays a topological view of the distributed server map.",category:[{title:"[Node]",list:["Each node is a logical unit of application.","The value on the top-right corner represents the number of server instances assigned to that application. (Not shown when there is only one such instance)","An alarm icon is displayed on the top-left corner if an error/exception is detected in one of the server instances.","Clicking a node shows information on all incoming transactions on the right-hand side of the screen."]},{title:"[Arrow]",list:["Each arrow represents a transaction flow.","The number shows the transaction count and is displayed in red for transactions with error."," is shown when a filter is applied.","Clicking an arrow shows information on all transactions passing through the selected section on the right-hand side of the screen."]},{title:"[Applying Filter]",list:["Right-clicking on an arrow displays a filter menu.","'Filter' filters the server map to only show transactions that has passed through the selected section.","'Filter Wizard' allows additional filter configurations."]},{title:"[Chart Configuration]",list:["Right-clicking on an empty area displays a chart configuration menu.","Node Setting / Merge Unknown : Groups all agent-less applications into a single node.","Double-clicking on an empty resets the zoom level of the server map."]}]}},realtime:{"default":{mainStyle:"",title:"Realtime Active Thread Chart",desc:"Shows the Active Thread count of each agent in realtime.",category:[{title:"[Error Messages]",items:[{name:"UNSUPPORTED VERSION",desc:"Agent version too old. (Please upgrade the agent to 1.5.0+)",nameStyle:"width:120px;border-bottom:1px solid gray",descStyle:"border-bottom:1px solid gray"},{name:"CLUSTER OPTION NOTSET",desc:"Option disabled by agent. (Please set profiler.pinpoint.activethread to true in profiler.config)",nameStyle:"width:120px;border-bottom:1px solid gray",descStyle:"border-bottom:1px solid gray"},{name:"TIMEOUT",desc:"Agent connection timed out receiving active thread count. Please contact the administrator if problem persists.",nameStyle:"width:120px;border-bottom:1px solid gray",descStyle:"border-bottom:1px solid gray"},{name:"NOT FOUND",desc:"Agent not found. (If you get this message while the agent is running, please set profiler.tcpdatasender.command.accept.enable to true in profiler.config)",nameStyle:"width:120px;border-bottom:1px solid gray",descStyle:"border-bottom:1px solid gray"},{name:"CLUSTER CHANNEL CLOSED",desc:"Agent session expired.",nameStyle:"width:120px;border-bottom:1px solid gray",descStyle:"border-bottom:1px solid gray"},{name:"PINPOINT INTERNAL ERROR",desc:"Pinpoint internal error. Please contact the administrator.",nameStyle:"width:120px;border-bottom:1px solid gray",descStyle:"border-bottom:1px solid gray"},{name:"No Active Thread",desc:"The agent has no threads that are currently active.",nameStyle:"width:120px;border-bottom:1px solid gray",descStyle:"border-bottom:1px solid gray"},{name:"No Response",desc:"No response from Pinpoint Web. Please contact the administrator.",nameStyle:"width:120px;border-bottom:1px solid gray",descStyle:"border-bottom:1px solid gray"}]}]}},scatter:{"default":{mainStyle:"",title:"Response Time Scatter Chart",desc:"",category:[{title:"[Legend]",items:[{name:"",desc:"Successful Transaction"},{name:"",desc:"Failed Transaction"},{name:"X-axis",desc:"Transaction Timestamp (hh:mm)"},{name:"Y-axis",desc:"Response Time (ms)"}]},{title:"[Usage]",image:"",items:[{name:"",desc:"Drag on the scatter chart to show detailed information on selected transactions."},{name:"",desc:"Set the min/max value of the Y-axis (Response Time)."},{name:"",desc:"Download the chart as an image file."},{name:"",desc:"Open the chart in a new window."}]}]}},nodeInfoDetails:{responseSummary:{mainStyle:"",title:"Response Summary Chart",desc:"",category:[{title:"[Legend]",items:[{name:"X-Axis",desc:"Response Time"},{name:"Y-Axis",desc:"Transaction Count"},{name:"1s",desc:"No. of Successful transactions (less than 1 second)"},{name:"3s",desc:"No. of Successful transactions (1 ~ 3 seconds)"},{name:"5s",desc:"No. of Successful transactions (3 ~ 5 seconds)"},{name:"Slow",desc:"No. of Successful transactions (greater than 5 seconds)"},{name:"Error",desc:"No. of Failed transactions regardless of response time"}]}]},load:{mainStyle:"",title:"Load Chart",desc:"",category:[{title:"[Legend]",items:[{name:"X-Axis",desc:"Transaction Timestamp (in minutes)"},{name:"Y-Axis",desc:"Transaction Count"},{name:"1s",desc:"No. of Successful transactions (less than 1 second)"},{name:"3s",desc:"No. of Successful transactions (1 ~ 3 seconds)"},{name:"5s",desc:"No. of Successful transactions (3 ~ 5 seconds)"},{name:"Slow",desc:"No. of Successful transactions (greater than 5 seconds)"},{name:"Error",desc:"No. of Failed transactions regardless of response time"}]},{title:"[Usage]",list:["Clicking on a legend item shows/hides all transactions within the selected group.","Dragging on the chart zooms in to the dragged area."]}]},nodeServers:{mainStyle:"width:400px;",title:"Server Information",desc:"List of physical servers and their server instances.",category:[{title:"[Legend]",items:[{name:"",desc:"Hostname of the physical server"},{name:"",desc:"AgentId of the Pinpoint agent installed on the server instance running on the physical server"}]},{title:"[Usage]",items:[{name:"",desc:"Open a new window with detailed information on the WAS with Pinpoint installed."},{name:"",desc:"Display statistics on transactions carried out by the server instance."},{name:"",desc:"Display statistics on transactions (with error) carried out by the server instance."}]}]},unknownList:{mainStyle:"",title:"UnknownList",desc:"From the chart's top-right icon",category:[{title:"[Usage]",items:[{name:"1st",desc:"Toggle between Response Summary Chart / Load Chart"},{name:"2nd",desc:"Show Node Details"}]}]},searchAndOrder:{mainStyle:"",title:"Search and Fliter",desc:"Filter by server name or total count.Clicking Name or Count sorts the list in ascending/descending order."}},linkInfoDetails:{responseSummary:{mainStyle:"",title:"Response Summary Chart",desc:"",category:[{title:"[Legend]",items:[{name:"X-Axis",desc:"Response Time"},{name:"Y-Axis",desc:"Transaction Count"},{name:"1s",desc:"No. of Successful transactions (less than 1 second)"},{name:"3s",desc:"No. of Successful transactions (1 ~ 3 seconds)"},{name:"5s",desc:"No. of Successful transactions (3 ~ 5 seconds)"},{name:"Slow",desc:"No. of Successful transactions (greater than 5 seconds)"},{name:"Error",desc:"No. of Failed transactions regardless of response time"}]},{title:"[Usage]",list:["Click on the bar to query for transactions within the selected response time."]}]},load:{mainStyle:"",title:"Load Chart",desc:"",category:[{title:"[Legend]",items:[{name:"X-Axis",desc:"Transaction Timestamp (in minutes)"},{name:"Y-Axis",desc:"Transaction Count"},{name:"1s",desc:"No. of Successful transactions (less than 1 second)"},{name:"3s",desc:"No. of Successful transactions (1 ~ 3 seconds)"},{name:"5s",desc:"No. of Successful transactions (3 ~ 5 seconds)"},{name:"Slow",desc:"No. of Successful transactions (greater than 5 seconds)"},{name:"Error",desc:"No. of Failed transactions regardless of response time"}]},{title:"[Usage]",list:["Clicking on a legend item shows/hides all transactions within the selected group.","Dragging on the chart zooms in to the dragged area."]}]},linkServers:{mainStyle:"width:350px;",title:"Server Information",desc:"List of physical servers and their server instances.",category:[{title:"[Legend]",items:[{name:"",desc:"Hostname of the physical server"},{name:"",desc:"AgentId of the Pinpoint agent installed on the server instance running on the physical server"}]},{title:"[Usage]",items:[{name:"",desc:"Open a new window with detailed information on the WAS with Pinpoint installed."},{name:"",desc:"Display statistics on transactions carried out by the server instance."},{name:"",desc:"Display statistics on transactions (with error) carried out by the server instance."}]}]},unknownList:{mainStyle:"",title:"UnknownList",desc:"From the chart's top-right icon,",category:[{title:"[Usage]",items:[{name:"1st",desc:"Toggle between Response Summary Chart"},{name:"2dn",desc:"Show Node Details"}]}]},searchAndOrder:{mainStyle:"",title:"Search and Filter",desc:"Filter by server name or total count.
Clicking Name or Count sorts the list in ascending/descending order."}},inspector:{list:{mainStyle:"",title:"Agent list",desc:"List of agents registered under the current Application Name",category:[{title:"[Legend]",items:[{name:"",desc:"Hostname of the agent's machine"},{name:"",desc:"Agent-id of the installed agent"},{name:"",desc:"Agent was running at the time of query"},{name:"",desc:"Agent was shutdown at the time of query"},{name:"",desc:"Agent was disconnected at the time of query"},{name:"",desc:"Agent status was unknown at the time of query"}]}]},heap:{mainStyle:"",title:"Heap",desc:"JVM's heap information and full garbage collection times(if any)",category:[{title:"[Legend]",items:[{name:"Max",desc:"Maximum heap size"},{name:"Used",desc:"Heap currently in use"},{name:"FCG",desc:"Full garbage collection duration (number of FGCs in parenthesis if it occurred more than once)"}]}]},permGen:{mainStyle:"",title:"PermGen",desc:"JVM's PermGen information and full garbage collection times(if any)",category:[{title:"[Legend]",items:[{name:"Max",desc:"Maximum heap size"},{name:"Used",desc:"Heap currently in use"},{name:"FCG",desc:"Full garbage collection duration (number of FGCs in parenthesis if it occurred more than once)"}]}]},cpuUsage:{mainStyle:"",title:"Cpu Usage",desc:"JVM/System's CPU Usage - For multi-core CPUs, displays the average CPU usage of all the cores",category:[{title:"[Legend]",items:[{name:"Java 1.6",desc:"Only the JVM's CPU usage is collected"},{name:"Java 1.7+",desc:"Both the JVM's and the system's CPU usage are collected"}]}]},tps:{mainStyle:"",title:"TPS",desc:"Transactions per second received by the server",category:[{title:"[Legend]",items:[{name:"Sampled New (S.N)",desc:"Profiled transactions that started from the current agent"},{name:"Sampled Continuation (S.C)",desc:"Profiled transactions that started from another agent"},{name:"Unsampled New (U.N)",desc:"Unprofiled transactions that started from the current agent"},{name:"Unsampled Continuation (U.C)",desc:"Unprofiled transactions that started from another agent"},{name:"Total",desc:"All transactions"}]}]},wrongApp:["
The agent is currently registered under {{application2}} due to the following:
","1. The agent has moved from {{application1}} to {{application2}}
","2. A different agent with the same agent id has been registered to {{application2}}
","For the former case, you should delete the mapping between {{application1}} and {{agentId}}.
","For the latter case, the agent id of the duplicate agent must be changed.
"].join("")},callTree:{column:{mainStyle:"",title:"Call Tree",desc:"",category:[{title:"[Column]",items:[{name:"Gap",desc:"Time elapsed between the start of the previous method and entry of this method"},{name:"Exec",desc:"The overall duration of the method call from method entry until method exit"},{name:"Exec(%)",desc:""},{name:"",desc:"Light blue The execution time of the method call as a percentage of the total execution time of the transaction"},{name:"",desc:"Dark blue A percentage of the self execution time"},{name:"Self",desc:"The time that was used for execution of this method only, excluding time consumed in nested methods call"}]}]}},transactionTable:{log:{}},transactionList:{openError:{noParent:"Scatter data of parent window had been changed.\r\nso can't scan the data any more.",noData:"There is no {{application}} scatter data in parent window."}}};pinpointApp.constant("helpContent-en",a)}(),function(){"use strict";var a={configuration:{general:{warning:"(설정 정보는 브라우저 캐쉬에 저장합니다. 서버 측 저장은 추후 지원 할 예정입니다.)",empty:"등록된 목록이 없습니다."},alarmRules:{mainStyle:"",title:"알람 룰의 종류",desc:"Pinpoint에서 지원하는 Alarm rule의 종류는 아래와 같습니다.",category:[{title:"[항목]",items:[{name:"SLOW COUNT",desc:"application 내에서 외부서버를 호출한 요청 중 slow 호출의 개수가 임계치를 초과한 경우 알람이 전송된다."},{name:"SLOW RATE",desc:"application 내에서 외부서버를 호출한 요청 중 slow 호출의 비율(%)이 임계치를 초과한 경우 알람이 전송된다."},{name:"ERROR COUNT",desc:"application 내에서 외부서버를 호출한 요청 중 error 가 발생한 호출의 개수가 임계치를 초과한 경우 알람이 전송된다."},{name:"ERROR RATE",desc:"application 내에서 외부서버를 호출한 요청 중 error 가 발생한 호출의 비율이 임계치를 초과한 경우 알람이 전송된다."},{name:"TOTAL COUNT",desc:"application 내에서 외부서버를 호출한 요청의 개수가 임계치를 초과한 경우 알람이 전송된다."},{name:"SLOW COUNT TO CALLEE",desc:"외부에서 application을 호출한 요청 중에 외부서버로 응답을 늦게 준 요청의 개수가 임계치를 초과한 경우 알람이 전송된다."},{name:"SLOW RATE TO CALLEE",desc:"외부에서 application을 호출한 요청 중에 외부서버로 응답을 늦게 준 요청의 비율(%)이 임계치를 초과한 경우 알람이 전송된다."},{name:"ERROR COUNT TO CALLEE",desc:"외부에서 application을 호출한 요청 중에 에러가 발생한 요청의 개수가 임계치를 초과한 경우 알람이 전송된다."},{name:"ERROR RATE TO CALLEE",desc:"외부에서 application을 호출한 요청 중에 에러가 발생한 요청의 비율(%)이 임계치를 초과한 경우 알람이 전송된다."},{name:"TOTAL COUNT TO CALLEE",desc:"외부에서 application을 호출한 요청 개수가 임계치를 초과한 경우 알람이 전송된다."},{name:"HEAP USAGE RATE",desc:"heap의 사용률이 임계치를 초과한 경우 알람이 전송된다."},{name:"JVM CPU USAGE RATE",desc:"applicaiton의 CPU 사용률이 임계치를 초과한 경우 알람이 전송된다."}]}]}},navbar:{searchPeriod:{guide:"한번에 검색 할 수 있는 최대 기간은 {{day}}일 입니다."},applicationSelector:{mainStyle:"",title:"응용프로그램 목록",desc:"핀포인트가 설치된 응용프로그램 목록입니다.",category:[{title:"[범례]",items:[{name:"아이콘",desc:"응용프로그램의 종류"},{name:"텍스트",desc:"응용프로그램의 이름입니다. Pinpoint agent 설정에서 applicationName에 지정한 값입니다."}]}]},depth:{mainStyle:"",title:' Inbound 와 Outbound',desc:"서버맵의 탐색 깊이를 설정합니다.",category:[{title:"[범례]",items:[{name:"Inbound",desc:"선택된 노드를 기준으로 들어오는 탐색깊이"},{name:"Outbound",desc:"선택된 노드를 기준으로 나가는 탐색 깊이"}]}]},periodSelector:{mainStyle:"",title:"조회 시간 설정",desc:"데이터 조회 시간을 선택합니다.",category:[{title:"[범례]",items:[{name:"",desc:"현재 시간을 기준으로 선택한 시간 이전부터 현재시간 사이에 수집된 데이터를 조회합니다.
최근 5m, 10m, 3h조회는 자동 새로고침 기능을 지원합니다."},{name:"",desc:"지정된 시간 사이에 수집된 데이터를 조회합니다. 조회 시간은 분단위로 최대 48시간을 지정할 수 있습니다."}]}]}},servermap:{"default":{mainStyle:"width:560px;",title:"서버맵",desc:"분산된 서버를 도식화 한 지도 입니다.",category:[{title:"[박스]",list:["박스는 응용프로그램 그룹을 나타냅니다.","우측의 숫자는 응용프로그램 그룹에 속한 서버 인스턴스의 개수입니다.(한 개일 때에는 숫자를 보여주지 않습니다.)","좌측 빨간 알람은 임계값을 초과한 모니터링 항목이 있을 때 나타납니다."]},{title:"[화살표]",list:["화살표는 트랜잭션의 흐름을 나타냅니다.","화살표의 숫자는 호출 수 입니다. 임계치 이상의 에러를 포함하면 빨간색으로 보여집니다."," : 필터가 적용되면 아이콘이 표시됩니다."]},{title:"[박스의 기능]",list:["박스를 선택하면 어플리케이션으로 유입된 트랜잭션 정보를 화면 우측에 보여줍니다."]},{title:"[화살표의 기능]",list:["화살표를 선택하여 선택된 구간을 통과하는 트랜잭션의 정보를 화면 우측에 보여줍니다.","Context menu의 Filter는 선택된 구간을 통과하는 트랜잭션만 모아서 보여줍니다.","Filter wizard는 보다 상세한 필터 설정을 할 수 있습니다.","필터가 적용되면 화살표에 아이콘이 표시됩니다."]},{title:"[차트 설정]",list:["비어있는 부분을 마우스 오른쪽 클릭하여 context menu를 열면 차트 설정메뉴가 보입니다.","Node Setting / Merge Unknown : agent가 설치되어있지 않은 응용프로그램을 하나의 박스로 보여줍니다.","비어있는 부분 더블클릭 : 줌을 초기화 합니다."]}]}},realtime:{"default":{mainStyle:"",title:"Realtime Active Thread Chart",desc:"각 Agent의 Active Thread 갯수를 실시간으로 보여줍니다.",category:[{title:"[에러 메시지 설명]",items:[{name:"UNSUPPORTED VERSION",desc:"해당 에이전트의 버전에서는 지원하지 않는 기능입니다. (1.5.0 이상 버전으로 업그레이드하세요.)",nameStyle:"width:120px;border-bottom:1px solid gray",descStyle:"border-bottom:1px solid gray"},{name:"CLUSTER OPTION NOTSET",desc:"해당 에이전트의 설정에서 기능이 비활성화되어 있습니다. (pinpoint 설정 파일에서 profiler.pinpoint.activethread 항목을 true로 변경하세요.)",nameStyle:"width:120px;border-bottom:1px solid gray",descStyle:"border-bottom:1px solid gray"},{name:"TIMEOUT",desc:"해당 에이전트에서 일시적으로 활성화 된 스레드 개수를 받지 못하였습니다.(오래 지속될 경우 담당자에게 문의하세요.)",nameStyle:"width:120px;border-bottom:1px solid gray",descStyle:"border-bottom:1px solid gray"},{name:"NOT FOUND",desc:"해당 에이전트를 찾을 수 없습니다.(에이전트가 활성화 되어 있는 경우에 해당 메시지가 발생한다면 pinpoint 설정 파일에서 profiler.tcpdatasender.command.accept.enable 항목을 true로 변경하세요.)",nameStyle:"width:120px;border-bottom:1px solid gray",descStyle:"border-bottom:1px solid gray"},{name:"CLUSTER CHANNEL CLOSED",desc:"해당 에이전트와의 세션이 종료되었습니다.",nameStyle:"width:120px;border-bottom:1px solid gray",descStyle:"border-bottom:1px solid gray"},{name:"PINPOINT INTERNAL ERROR",desc:"핀포인트 내부 에러가 발생하였습니다.(담당자에게 문의하세요.)",nameStyle:"width:120px;border-bottom:1px solid gray",descStyle:"border-bottom:1px solid gray" +},{name:"No Active Thread",desc:"현재 해당 에이전트는 활성화된 스레드가 존재하지 않습니다.",nameStyle:"width:120px;border-bottom:1px solid gray",descStyle:"border-bottom:1px solid gray"},{name:"No Response",desc:"핀포인트 웹 서버로부터의 응답을 받지 못하였습니다.(담당자에게 문의하세요.)",nameStyle:"width:120px;border-bottom:1px solid gray",descStyle:"border-bottom:1px solid gray"}]}]}},scatter:{"default":{mainStyle:"",title:"Response Time Scatter Chart",desc:"수집된 트랜잭션의 응답시간 분포도입니다.",category:[{title:"[범례]",items:[{name:"",desc:"에러가 없는 트랜잭션 (Success)"},{name:"",desc:"에러를 포함한 트랜잭션 (Failed)"},{name:"X축",desc:"트랜잭션이 실행된 시간 (시:분)"},{name:"Y축",desc:"트랜잭션의 응답 속도 (ms)"}]},{title:"[기능]",image:"",items:[{name:"",desc:"마우스로 영역을 드래그하여 드래그 된 영역에 속한 트랜잭션의 상세정보를 조회할 수 있습니다."},{name:"",desc:"에러를 포함한 트랜잭션 (Failed)"},{name:"X축",desc:"응답시간(Y축)의 최대 또는 최소값을 변경할 수 있습니다."},{name:"",desc:"차트를 새창으로 크게 보여줍니다."}]}]}},nodeInfoDetails:{responseSummary:{mainStyle:"",title:"Response Summary Chart",desc:"응답결과 요약 입니다.",category:[{title:"[범례]",items:[{name:"X축",desc:"트랜잭션 응답시간 요약 단위"},{name:"Y축",desc:"트랜잭션의 개수"},{name:"1s",desc:"0초 <= 응답시간 < 1초 에 해당하는 성공한 트랜잭션의 수"},{name:"3s",desc:"1초 <= 응답시간 < 3초 에 해당하는 성공한 트랜잭션의 수"},{name:"5s",desc:"3초 <= 응답시간 < 5초 에 해당하는 성공한 트랜잭션의 수"},{name:"Slow",desc:"5초 <= 응답시간 에 해당하는 성공한 트랜잭션의 수"},{name:"Error",desc:"응답시간과 무관하게 실패한 트랜잭션의 수"}]}]},load:{mainStyle:"",title:"Load Chart",desc:"시간별 트랜잭션의 응답 결과입니다.",category:[{title:"[범례]",items:[{name:"X축",desc:"트랜잭션이 실행된 시간 (분단위)"},{name:"Y축",desc:"트랜잭션의 개수"},{name:"1s",desc:"0초 <= 응답시간 < 1초 에 해당하는 성공한 트랜잭션의 수"},{name:"3s",desc:"1초 <= 응답시간 < 3초 에 해당하는 성공한 트랜잭션의 수"},{name:"5s",desc:"3초 <= 응답시간 < 5초 에 해당하는 성공한 트랜잭션의 수"},{name:"Slow",desc:"5초 <= 응답시간 에 해당하는 성공한 트랜잭션의 수"},{name:"Error",desc:"응답시간과 무관하게 실패한 트랜잭션의 수"}]},{title:"[기능]",list:["범례를 클릭하여 해당 응답시간에 속한 트랜잭션을 차트에서 제외하거나 포함 할 수 있습니다.","마우스로 드래그하여 드래그 한 범위를 확대할 수 있습니다."]}]},nodeServers:{mainStyle:"width:400px;",title:"Server Information",desc:"물리서버와 해당 서버에서 동작중인 서버 인스턴스의 정보를 보여줍니다.",category:[{title:"[범례]",items:[{name:"",desc:"물리서버의 호스트이름입니다."},{name:"",desc:"물리서버에 설치된 서버 인스턴스에서 동작중인 Pinpoint의 agentId입니다."}]},{title:"[기능]",items:[{name:"",desc:"Pinpoint가 설치된 WAS의 상세한 정보를 보여줍니다."},{name:"",desc:"해당 인스턴스에서 처리된 트랜잭션 통계를 조회할 수 있습니다."},{name:"",desc:"에러를 발생시킨 트랜잭션이 포함되어있다는 의미입니다."}]}]},unknownList:{mainStyle:"",title:"UnknownList",desc:"차트 오른쪽 상단의 아이콘부터",category:[{title:"[기능]",items:[{name:"첫번째",desc:"Response Summary"},{name:"두번째",desc:"해당 노드 상세보기"}]}]},searchAndOrder:{mainStyle:"",title:"검색과 필터링",desc:"서버 이름과 Count로 검색이 가능합니다.",category:[{title:"[기능]",items:[{name:"Name",desc:"이름을 오름/내림차순 정렬 합니다."},{name:"Count",desc:"갯수를 오름/내림차순 정렬 합니다."}]}]}},linkInfoDetails:{responseSummary:{mainStyle:"",title:"Response Summary Chart",desc:"응답결과 요약 입니다.",category:[{title:"[범례]",items:[{name:"X축",desc:"트랜잭션 응답시간 요약 단위"},{name:"Y축",desc:"트랜잭션의 개수"},{name:"1s",desc:"0초 <= 응답시간 < 1초 에 해당하는 성공한 트랜잭션의 수"},{name:"3s",desc:"1초 <= 응답시간 < 3초 에 해당하는 성공한 트랜잭션의 수"},{name:"5s",desc:"3초 <= 응답시간 < 5초 에 해당하는 성공한 트랜잭션의 수"},{name:"Slow",desc:"5초 <= 응답시간 에 해당하는 성공한 트랜잭션의 수"},{name:"Error",desc:"응답시간과 무관하게 실패한 트랜잭션의 수"}]},{title:"[기능]",list:["바(bar)를 클릭하면 해당 응답시간에 속한 트랜잭션의 목록을 조회합니다."]}]},load:{mainStyle:"",title:"Load Chart",desc:"시간별 트랜잭션의 응답 결과입니다.",category:[{title:"[범례]",items:[{name:"X축",desc:"트랜잭션이 실행된 시간 (분단위)"},{name:"Y축",desc:"트랜잭션의 개수"},{name:"1s",desc:"0초 <= 응답시간 < 1초 에 해당하는 성공한 트랜잭션의 수"},{name:"3s",desc:"1초 <= 응답시간 < 3초 에 해당하는 성공한 트랜잭션의 수"},{name:"5s",desc:"3초 <= 응답시간 < 5초 에 해당하는 성공한 트랜잭션의 수"},{name:"Slow",desc:"5초 <= 응답시간 에 해당하는 성공한 트랜잭션의 수"},{name:"Error",desc:"응답시간과 무관하게 실패한 트랜잭션의 수"}]},{title:"[기능]",list:["범례를 클릭하여 해당 응답시간에 속한 트랜잭션을 차트에서 제외하거나 포함 할 수 있습니다.","마우스로 드래그하여 드래그 한 범위를 확대할 수 있습니다."]}]},linkServers:{mainStyle:"width:350px;",title:"Server Information",desc:"해당 구간을 통과하는 트랜잭션을 호출한 서버 인스턴스의 정보입니다. (호출자)",category:[{title:"[범례]",items:[{name:"",desc:"물리서버에 설치된 서버 인스턴스에서 동작중인 Pinpoint의 agentId입니다."}]},{title:"[기능]",items:[{name:"",desc:"Pinpoint가 설치된 WAS의 상세한 정보를 보여줍니다."},{name:"",desc:"해당 인스턴스에서 처리된 트랜잭션 통계를 조회할 수 있습니다."},{name:"",desc:"에러를 발생시킨 트랜잭션이 포함되어있다는 의미입니다."}]}]},unknownList:{mainStyle:"",title:"UnknownList",desc:"차트 오른쪽 상단의 아이콘부터",category:[{title:"[기능]",items:[{name:"첫번째",desc:"Response Summary"},{name:"두번째",desc:"해당 노드 상세보기"}]}]},searchAndOrder:{mainStyle:"",title:"검색과 필터링",desc:"서버 이름과 Count로 검색이 가능합니다.",category:[{title:"[기능]",items:[{name:"Name",desc:"이름을 오름/내림차순 정렬 합니다."},{name:"Count",desc:"갯수를 오름/내림차순 정렬 합니다."}]}]}},inspector:{list:{mainStyle:"",title:"Agent 리스트",desc:"현 Appliation Name에 등록된 agent 리스트입니다.",category:[{title:"[범례]",items:[{name:"",desc:"Agent가 설치된 장비의 호스트 이름"},{name:"",desc:"설치된 agent의 agent-id"},{name:"",desc:"정상적으로 실행중인 agent 상태 표시"},{name:"",desc:"Shutdown 된 agent 상태 표시"},{name:"",desc:"연결이 끊긴 agent 상태 표시"},{name:"",desc:"알수 없는 상태의 agent 상태 표시"}]}]},heap:{mainStyle:"",title:"Heap",desc:"JVM의 heap 정보와 full garbage collection 소요 시간",category:[{title:"[범례]",items:[{name:"Max",desc:"최대 heap 사이즈"},{name:"Used",desc:"현재 사용 중인 heap 사이즈"},{name:"FCG",desc:"Full garbage collection의 총 소요 시간(2번 이상 발생 시, 괄호 안에 발생 횟수 표시)"}]}]},permGen:{mainStyle:"",title:"PermGen",desc:"JVM의 PermGen 정보와 full garbage collection 소요 시간",category:[{title:"[범례]",items:[{name:"Max",desc:"최대 heap 사이즈"},{name:"Used",desc:"현재 사용 중인 heap 사이즈"},{name:"FCG",desc:"Full garbage collection의 총 소요 시간(2번 이상 발생 시, 괄호 안에 발생 횟수 표시)"}]}]},cpuUsage:{mainStyle:"",title:"Cpu Usage",desc:"JVM과 시스템의 CPU 사용량 - 멀티코어 CPU의 경우, 전체 코어 사용량의 평균입니다.",category:[{title:"[범례]",items:[{name:"Java 1.6",desc:"JVM의 CPU 사용량만 수집됩니다."},{name:"Java 1.7+",desc:"JVM과 전체 시스템의 CPU 사용량 모두 수집됩니다."}]}]},tps:{mainStyle:"",title:"TPS",desc:"서버로 인입된 초당 트랜잭션 수",category:[{title:"[범례]",items:[{name:"Sampled New (S.N)",desc:"선택된 agent에서 시작한 샘플링된 트랜잭션"},{name:"Sampled Continuation (S.C)",desc:"다른 agent에서 시작한 샘플링된 트랜잭션"},{name:"Unsampled New (U.N)",desc:"선택된 agent에서 시작한 샘플링되지 않은 트랜잭션"},{name:"Unsampled Continuation (U.C)",desc:"다른 agent에서 시작한 샘플링되지 않은 트랜잭션"},{name:"Total",desc:"모든 트랜잭션"}]}]},wrongApp:["
해당 agent는 {{application1}}이 아닌 {{application2}}에 포함되어 있습니다.
","원인은 다음 중 하나입니다.
","1. 해당 agent가 {{application1}}에서 {{application2}}으로 이동한 경우
","2.{{agentId}}의 agent가 {{application2}}에도 등록 된 경우
","1의 경우 {{application1}}과 {{agentId}}간의 매핑 저보를 삭제해야 합니다
","2의 경우 중복 등록 된 agent의 id를 변경해야 합니다.
"].join("")},callTree:{column:{mainStyle:"",title:"Call Tree",desc:"Call Tree의 컬럼명을 설명합니다.",category:[{title:"[컬럼]",items:[{name:"Gap",desc:"이전 메소드가 시작된 후 현재 메소드를 실행하기 까지의 지연 시간"},{name:"Exec",desc:"메소드 시작부터 종료까지의 시간"},{name:"Exec(%)",desc:""},{name:"",desc:"옅은 파란색
트랜잭션 전체 실행 시간 대 exec 시간의 비율"},{name:"",desc:"진한 파란색
self 시간 비율"},{name:"Self",desc:"메소드 자체의 시작부터 종료까지의 시간으로 하위의 메소드가 실행된 시간을 제외한 값"}]}]}},transactionTable:{log:{}},transactionList:{openError:{noParent:"부모 윈도우의 scatter chart 정보가 변경되어 더 이상 transaction 정보를 표시할 수 없습니다.",noData:"부모 윈도우에 {{application}} scatter chart 정보가 없습니다."}}};pinpointApp.constant("helpContent-ko",a)}(),function(){"use strict";var a=['
',"
","
{{{title}}}
","
{{{desc}}}
","
","{{#if category}}
{{/if}}","{{#each category}}","

{{title}}

",'{{#if image}}

{{{image}}}

{{/if}}',"{{#if items}}","","{{#each items}}","",'','',"","{{/each}}","
{{{name}}}{{{desc}}}
","{{/if}}","{{#if list}}","
    ","{{#each list}}","
  • {{{this}}}
  • ","{{/each}}","
","{{/if}}","{{/each}}","
"].join(""),b=Handlebars.compile(a);pinpointApp.constant("helpContentTemplate",b)}(),function(){"use strict";pinpointApp.factory("helpContentService",["$window","$injector","UserLocalesService",function(a,b,c){var d="helpContent-"+c.userLocale,e="helpContent-"+c.defaultLocale;return b.has(d)?b.get(d):b.get(e)}])}(),function(a){"use strict";pinpointApp.service("AnalyticsService",["$rootScope","globalConfig",function(a,b){"undefined"!=typeof ga&&(this.send=function(a,c,d,e,f){b.sendAllowed!==!1&&(1==arguments.length?ga("send","pageview",arguments[0]):ga("send","event",a,c,d,e,f))}),this.CONST={},this.CONST.MAIN="Main",this.CONST.CONTEXT="Context",this.CONST.CALLSTACK="CallStack",this.CONST.MIXEDVIEW="MixedView",this.CONST.INSPECTOR="Inspector",this.CONST.CLK_APPLICATION="ClickApplication",this.CONST.CLK_TIME="ClickTime",this.CONST.CLK_SEARCH_NODE="ClickSearchNode",this.CONST.CLK_CLEAR_SEARCH="ClickClearSearch",this.CONST.CLK_NODE="ClickNode",this.CONST.CLK_LINK="ClickLink",this.CONST.CLK_UPDATE_TIME="ClickUpdateTime",this.CONST.CLK_HELP="ClickHelp",this.CONST.CLK_SCATTER_SETTING="ClickScatterSetting",this.CONST.CLK_DOWNLOAD_SCATTER="ClickDownloadScatter",this.CONST.CLK_RESPONSE_GRAPH="ClickResponseGraph",this.CONST.CLK_LOAD_GRAPH="ClickLoadGraph",this.CONST.CLK_SHOW_GRAPH="ClickShowGraph",this.CONST.CLK_SHOW_SERVER_LIST="ClickShowServerList",this.CONST.CLK_OPEN_INSPECTOR="ClickOpenInspector",this.CONST.CLK_FILTER_TRANSACTION="ClickFilterTransaction",this.CONST.CLK_FILTER_TRANSACTION_WIZARD="ClickFilterTransactionWizard",this.CONST.CLK_MORE="ClickMore",this.CONST.CLK_DISTRIBUTED_CALL_FLOW="ClickDistributedCallFlow",this.CONST.CLK_SERVER_MAP="ClickServerMap",this.CONST.CLK_RPC_TIMELINE="ClickRPCTimeline",this.CONST.CLK_CALL="ClickCall",this.CONST.CLK_TRANSACTION="ClickTransaction",this.CONST.CLK_HEAP="ClickHeap",this.CONST.CLK_PERM_GEN="ClickPermGen",this.CONST.CLK_CPU_LOAD="ClickCpuLoad",this.CONST.CLK_REFRESH="ClickRefresh",this.CONST.CLK_CALLEE_RANGE="ClickCalleeRange",this.CONST.CLK_CALLER_RANGE="ClickCallerRange",this.CONST.CLK_REALTIME_CHART_HIDE="ClickRealtimeChartHide",this.CONST.CLK_REALTIME_CHART_SHOW="ClickRealtimeChartShow",this.CONST.CLK_SHOW_SERVER_TYPE_DETAIL="ClickShowServerTypeDetail",this.CONST.CLK_CHANGE_AGENT="ClickChangeAgent",this.CONST.CLK_START_REALTIME="ClickStartRealtime",this.CONST.CLK_CONFIGURATION="ClickConfiguration",this.CONST.CLK_GENERAL="ClickConfigurationGeneral",this.CONST.CLK_ALARM="ClickConfigurationAlarm",this.CONST.CLK_HELP="ClickConfigurationHelp",this.CONST.CLK_GENERAL_SET_DEPTH="ClickGeneralSetDepth",this.CONST.CLK_GENERAL_SET_PERIOD="ClickGeneralSetPeriod",this.CONST.CLK_GENERAL_SET_FAVORITE="ClickGeneralSetFavorite",this.CONST.CLK_ALARM_CREATE_USER_GROUP="ClickAlarmCreateUserGroup",this.CONST.CLK_ALARM_REFRESH_USER_GROUP="ClickAlarmRefreshUserGroup",this.CONST.CLK_ALARM_FILTER_USER_GROUP="ClickAlarmFilterUserGroup",this.CONST.CLK_ALARM_ADD_USER="ClickAlarmAddUser",this.CONST.CLK_ALARM_REFRESH_USER="ClickAlarmRefreshUser",this.CONST.CLK_ALARM_FILTER_USER="ClickAlarmFilterUser",this.CONST.CLK_ALARM_CREATE_PINPOINT_USER="ClickAlarmCreatePinpointUser",this.CONST.CLK_ALARM_REFRESH_PINPOINT_USER="ClickAlarmRefreshPinpointUser",this.CONST.CLK_ALARM_FILTER_PINPOINT_USER="ClickAlarmFilterPinpointUser",this.CONST.CLK_ALARM_CREATE_RULE="ClickAlarmCreateUserGroup",this.CONST.CLK_ALARM_REFRESH_RULE="ClickAlarmRefreshUserGroup",this.CONST.CLK_ALARM_FILTER_RULE="ClickAlarmFilterUserGroup",this.CONST.TG_DATE="ToggleDate",this.CONST.TG_UPDATE_ON="ToggleUpdateOn",this.CONST.TG_NODE_VIEW="ToggleNodeView",this.CONST.TG_SCATTER_SUCCESS="ToggleScatterSuccess",this.CONST.TG_SCATTER_FAILED="ToggleScatterFailed",this.CONST.TG_MERGE_TYPE="ToggleMergeType",this.CONST.TG_CALL_COUNT="ToggleCallCount",this.CONST.TG_TPS="ToggleTPS",this.CONST.TG_ROUTING="ToggleRouting",this.CONST.TG_CURVE="ToggleCurve",this.CONST.TG_REALTIME_CHART_RESIZE="ToggleRealtimeChartResize",this.CONST.ST_="Sort",this.CONST.ASCENDING="ascending",this.CONST.DESCENDING="descending",this.CONST.ON="on",this.CONST.OFF="off",this.CONST.MAIN_PAGE="/main.page",this.CONST.FILTEREDMAP_PAGE="/filteredMap.page",this.CONST.INSPECTOR_PAGE="/inspector.page",this.CONST.SCATTER_FULL_SCREEN_PAGE="/scatterFullScreen.page",this.CONST.TRANSACTION_DETAIL_PAGE="/transactionDetail.page",this.CONST.TRANSACTION_LIST_PAGE="/transactionList.page",this.CONST.TRANSACTION_VIEW_PAGE="/transactionView.page"}])}(jQuery),function(){"use strict";pinpointApp.constant("RealtimeWebsocketServiceConfig",{wsUrl:"/agent/activeThread.pinpointws",wsTimeout:1e4,retryTimeout:3e3,maxRetryCount:1}),pinpointApp.service("RealtimeWebsocketService",["RealtimeWebsocketServiceConfig",function(a){function b(){i=new WebSocket("ws://"+location.host+a.wsUrl),i.onopen=function(a){g=h=Date.now(),c(),f.onopen(a)},i.onmessage=function(a){h=Date.now(),f.onmessage(JSON.parse(a.data))},i.onclose=function(a){console.log("onClose websocket",a),i=null,d(),f.onclose(a),e()}}function c(){j=setInterval(function(){null!==h&&(Date.now()-hs.datetimepicker("getDate")&&s.datetimepicker("setDate",r.datetimepicker("getDate")):s.val(a)}}),A(r,t.getQueryStartTime()||moment().subtract(20,"minute").valueOf()),s=o.find("#to-picker"),s.datetimepicker({altField:"#to-picker-alt",altFieldTimeOnly:!1,dateFormat:"yy-mm-dd",timeFormat:"HH:mm",controlType:"select",showButtonPanel:!1,onSelect:function(){var a=moment(L(r)),b=moment(L(s));if(a.isBefore(moment(L(s)).subtract(l.getMaxPeriod(),"days"))||a.isAfter(b)){var c=S();A(r,b.subtract(c[0],c[1]).format())}},onClose:function(a,b){""!==r.val()?r.datetimepicker("getDate")>s.datetimepicker("getDate")&&r.datetimepicker("setDate",s.datetimepicker("getDate")):r.val(a)}}),A(s,t.getQueryEndTime()),a("#from-picker-alt").on("click",function(){R()}),a("#to-picker-alt").on("click",function(){R()}),a(document).mousedown(function(b){u.is(":visible")!==!1&&0===a(b.target).parents("div#ui-datepicker-div").length&&u.hide()})},S=function(){var a=[],b=e.periodCalendar.substring(e.periodCalendar.length-1);return a[0]=parseInt(e.periodCalendar),a[1]="d"==b?"days":"h"==b?"hours":"minutes",a},R=function(){u.is(":visible")?u.hide():(u.css("left",a("#navbar_period").offset().left),u.show())},L=function(a){return a.datetimepicker("getDate")},J=function(){if(t.isRealtime())return b.periodType.REALTIME;var a=b.periodType.LAST;return a=h.name&&i.get(h.name+b.periodTypePrefix)?i.get(h.name+b.periodTypePrefix):t.getApplication()?b.periodType.RANGE:b.periodType.LAST,t.getReadablePeriod()&&_.indexOf(e.aReadablePeriodList,t.getReadablePeriod())<0&&(a=b.periodType.RANGE),a},K=function(){h.name=h.name||"window."+_.random(1e5,999999),i.add(h.name+b.periodTypePrefix,e.periodType)},A=function(a,b){a.datetimepicker("setDate",b?new Date(b):new Date)},C=function(){e.application&&(t.setApplication(e.application),e.callee=W(e.application),e.caller=X(e.application),t.setCalleeRange(e.callee),t.setCallerRange(e.caller),e.periodType===b.periodType.LAST&&e.readablePeriod?(t.setPeriodType(b.periodType.LAST),B(function(a){t.setReadablePeriod(e.readablePeriod),t.setQueryEndDateTime(moment(a).format("YYYY-MM-DD-HH-mm-ss")),t.autoCalculateByQueryEndDateTimeAndReadablePeriod(),H(),A(r,t.getQueryStartTime()),A(s,t.getQueryEndTime())})):e.periodType===b.periodType.REALTIME?(t.setPeriodType(b.periodType.REALTIME),B(function(a){t.setReadablePeriod(l.getRealtimeScatterXRangeStr()),t.setQueryEndDateTime(moment(a).format("YYYY-MM-DD-HH-mm-ss")),t.autoCalculateByQueryEndDateTimeAndReadablePeriod(),H(),A(r,t.getQueryStartTime()),A(s,t.getQueryEndTime())})):E()&&F()&&(t.setPeriodType(b.periodType.RANGE),t.setQueryStartTime(E()),t.setQueryEndTime(F()),t.autoCalcultateByQueryStartTimeAndQueryEndTime(),H()))},H=function(){K(),e.$emit("navbarDirective.changed",t),d.$broadcast("realtimeChartController.close")},B=function(a){n.getServerTime(function(b){a(b)})},D=function(){n.getApplicationList(function(a){angular.isArray(a)===!1||0===a.length?(e.applications[0].text="Application not found.",d.$broadcast("alarmRule.applications.set",e.applications),d.$broadcast("configuration.general.applications.set",e.applications)):(T=a,G(T,function(){e.disableApplication=!1,g(function(){t.getApplication()?(q.select2("val",t.getApplication()),e.application=t.getApplication()):q.select2("open")}),d.$broadcast("alarmRule.applications.set",e.applications),d.$broadcast("configuration.general.applications.set",e.applications)})),e.hideFakeApplication=!0},function(){e.applications[0].text="Application error.",e.hideFakeApplication=!0})},E=function(){return r.datetimepicker("getDate").getTime()},F=function(){return s.datetimepicker("getDate").getTime()},G=function(a,b){var c=l.getFavoriteList();e.favoriteCount=c.length,e.applications=[{text:"",value:""}];var d=[],f=[];angular.forEach(a,function(a,b){var e=a.applicationName+"@"+a.serviceType;-1===c.indexOf(e)?f.push({text:e,value:a.applicationName+"@"+a.code}):d.push({text:e,value:a.applicationName+"@"+a.code})}),e.applications=d.concat(f),angular.isFunction(b)&&b.apply(e)},z=function(){function a(a){if(!a.id)return a.text;var b=a.text.split("@");if(b.length>1){var c=f.get(0).createElement("img");return c.src="/images/icons/"+b[1]+".png",c.style.height="25px",c.style.paddingRight="3px",c.outerHTML+b[0]}return a.text}q.select2({placeholder:"Select an application",searchInputPlaceholder:"Input your application name",allowClear:!1,formatResult:a,formatSelection:a,escapeMarkup:function(a){return a}}).on("change",function(a){k.send(k.CONST.MAIN,k.CONST.CLK_APPLICATION),e.application=a.val,e.$digest(),C()})},O=function(a){var b=parseInt(a);switch(a.substring(a.length-1)){case"m":b*=6e4;break;case"h":b*=36e5;break;case"d":b*=864e5}return b},P=function(a){e.periodType===b.periodType.LAST?(t.setQueryEndDateTime(moment(t.getQueryEndTime()+a).format("YYYY-MM-DD-HH-mm-ss")),t.autoCalculateByQueryEndDateTimeAndReadablePeriod(),H(),A(r,t.getQueryStartTime()),A(s,t.getQueryEndTime())):(A(r,t.getQueryStartTime()+a),A(s,t.getQueryEndTime()+a),t.setQueryStartTime(E()),t.setQueryEndTime(F()),t.autoCalcultateByQueryStartTimeAndQueryEndTime(),H())},Q=function(a){k.send(k.CONST.MAIN,k.CONST.CLK_TIME,a),e.periodDelay=!0,e.readablePeriod=a,e.autoUpdate=!1,C(),g(function(){e.periodDelay=!1,e.$$phase||e.$digest()},1e3)},e.search=function(){C()},e.setPeriod=function(a){e.periodType=b.periodType.LAST,Q(a)},e.getPreviousClass=function(){return""},e.getNextClass=function(){return""},e.getPeriodClassInCalendar=function(a){return e.periodCalendar===a?"btn-success":""},e.getPeriodClass=function(a){var c="";return e.periodType!==b.periodType.LAST?c:(e.readablePeriod===a&&(c+="btn-info"),e.periodDelay&&(c+=" wait"),c)},e.showUpdate=function(){return!!(e.periodType===b.periodType.LAST&&_.indexOf(["5m","20m","1h","3h"],e.readablePeriod)>=0&&e.application)},M=function(){e.autoUpdate&&(e.timeLeft-=1,0===e.timeLeft?(e.update(),e.timeLeft=e.timeCountDown):g(M,1e3))},N=function(){e.timeLeft=e.timeCountDown},e.setPeriodForCalendar=function(a){e.periodCalendar=a},e.setAutoUpdateTime=function(a){k.send(k.CONST.MAIN,k.CONST.CLK_UPDATE_TIME,a+"s"),e.timeCountDown=a,e.timeLeft=a},e.setCallee=function(a){e.callee=a},e.setCaller=function(a){e.caller=a},e.setDepth=function(){U=!1,V=!0,a("#navbar_depth .dropdown-menu").trigger("click.bs.dropdown"),console.log("previous :",v,w,", current :",e.callee,e.caller),v===e.callee&&w===e.caller||(k.send(k.CONST.MAIN,k.CONST.CLK_CALLEE_RANGE,e.callee),k.send(k.CONST.MAIN,k.CONST.CLK_CALLER_RANGE,e.caller),v=e.callee,w=e.caller,Y(e.application+"+callee",e.callee),Y(e.application+"+caller",e.caller),c.reload())},e.cancelDepth=function(b){e.callee=v,e.caller=w,b&&(U=!1,V=!0,a("#navbar_depth .dropdown-menu").trigger("click.bs.dropdown"))},e.update=function(){var a=e.autoUpdate;e.autoUpdate=!1,e.periodDelay=!0,C(),g(function(){e.periodDelay=!1,N(),e.autoUpdate=a,e.$$phase||e.$digest()},1e3)},e.togglePeriod=function(a){k.send(k.CONST.MAIN,k.CONST.TG_DATE,a),e.periodType=a,e.autoUpdate=!1},e.setRealtime=function(){k.send(k.CONST.MAIN,k.CONST.CLK_START_REALTIME),e.periodType=b.periodType.REALTIME,e.autoUpdate=!1,C()},e.isRealtime=function(){return"undefined"==typeof t||null===t?!1:t.isRealtime()},e.showConfig=function(){d.$broadcast("configuration.show")},e.$watch("autoUpdate",function(a,b){a?(k.send(k.CONST.MAIN,k.CONST.TG_UPDATE_ON),g(M,1e3)):N()}),e.$on("navbarDirective.initialize",function(a,b){x(b)}),e.$on("navbarDirective.initialize.andReload",function(a,c){x(c),e.periodType=b.periodType.LAST, +Q(l.getPeriod())}),e.$on("navbarDirective.initialize.realtime.andReload",function(a,c){x(c),e.periodType=b.periodType.REALTIME,Q(l.getPeriod())}),e.$on("navbarDirective.initializeWithStaticApplication",function(a,b){I(b)}),e.$on("navbarDirective.moveToPast",function(a){P(e.periodType===b.periodType.LAST?-O(e.readablePeriod):-(t.getQueryEndTime()-t.getQueryStartTime()))}),e.$on("navbarDirective.moveToFuture",function(a){P(e.periodType===b.periodType.LAST?O(e.readablePeriod):t.getQueryEndTime()-t.getQueryStartTime())}),e.$on("navbarDirective.changedFavorite",function(a){G(T,function(){e.disableApplication=!1,g(function(){t.getApplication()&&(q.select2("val",t.getApplication()),e.application=t.getApplication())})})})}}}])}(jQuery),function(){"use strict";pinpointApp.constant("serverMapDirectiveConfig",{options:{sContainerId:"servermap",sOverviewId:"servermapOverview",sBigFont:"11pt Lato,NanumGothic,ng,dotum,AppleGothic,sans-serif",sSmallFont:"11pt Lato,NanumGothic,ng,dotum,AppleGothic,sans-serif",sImageDir:"/images/servermap/",htLinkType:{sRouting:"Normal",sCurve:"JumpGap"},htLinkTheme:{"default":{backgroundColor:"#ffffff",borderColor:"#c5c5c5",fontFamily:"11pt Lato,NanumGothic,ng,dotum,AppleGothic,sans-serif",fontColor:"#000000",fontAlign:"center",margin:1,strokeWidth:1},bad:{backgroundColor:"#ffc9c9",borderColor:"#7d7d7d",fontFamily:"11pt Lato,NanumGothic,ng,dotum,AppleGothic,sans-serif",fontColor:"#FF1300",fontAlign:"center",margin:1,strokeWidth:1}}}}),pinpointApp.directive("serverMapDirective",["serverMapDirectiveConfig","$rootScope","ServerMapDaoService","AlertsService","ProgressBarService","SidebarTitleVoService","$filter","ServerMapFilterVoService","filteredMapUtilService","$base64","ServerMapHintVoService","$timeout","$location","$window","helpContentTemplate","helpContentService","AnalyticsService",function(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q){return{restrict:"EA",replace:!0,templateUrl:"features/serverMap/serverMap.html?v="+G_BUILD_TIME,link:function(r,s,t){var u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W;z=new d(s),A=new e(s),E=!1,y=null,B={applicationMapData:{linkDataArray:[],nodeDataArray:[]},lastFetchedTimestamp:[],timeSeriesResponses:{values:{},time:[]}},w={},C={},D={},r.oNavbarVoService=null,r.totalRequestCount=!0,r.bShowServerMapStatus=!1,r.linkRouting=a.options.htLinkType.sRouting,r.linkCurve=a.options.htLinkType.sCurve,r.searchNodeQuery="",r.searchNodeIndex=0,r.searchNodeList=[],J=s.find(".serverMapTime"),F=s.find(".fromAgentName"),G=s.find(".toAgentName"),F.select2(),G.select2(),H=!1,r.mergeTypeList=[],r.mergeStatus={},r.showAntStyleHint=!1,W=function(a){a.nodeDataArray.forEach(function(a){a.isWas===!1&&"USER"!==a.serviceType&&angular.isUndefined(r.mergeStatus[a.serviceType])&&(r.mergeTypeList.push(a.serviceType),r.mergeStatus[a.serviceType]=!0)})},M=function(){r.nodeContextMenuStyle="",r.linkContextMenuStyle="",r.backgroundContextMenuStyle="",r.urlPattern="",r.responseTime={from:0,to:3e4},r.includeFailed=null,$("#filterWizard").modal("hide"),"$apply"!=r.$$phase&&"$digest"!=r.$$phase&&"$apply"!=r.$root.$$phase&&"$digest"!=r.$root.$$phase&&r.$digest()},K=function(a,b,d,e,f,g,h,j){A.startLoading(),z.hideError(),z.hideWarning(),z.hideInfo(),y&&y.clear(),A.setLoading(10),w={applicationName:a,serviceTypeName:b,from:d-e,to:d,originTo:r.oNavbarVoService.getQueryEndTime(),callerRange:r.oNavbarVoService.getCallerRange(),calleeRange:r.oNavbarVoService.getCalleeRange(),period:e,filter:n.encodeURIComponent(f),hint:g?n.encodeURIComponent(g):!1},f?c.getFilteredServerMapData(w,function(a,b,d){if(a)return A.stopLoading(),z.showError("There is some error."),!1;A.setLoading(50),b.from===d.lastFetchedTimestamp?r.$emit("serverMapDirective.allFetched",d):(B.lastFetchedTimestamp=d.lastFetchedTimestamp-1,r.$emit("serverMapDirective.fetched",B.lastFetchedTimestamp,d));var e=JSON.parse(f);B.applicationMapData=c.mergeFilteredMapData(B.applicationMapData,d.applicationMapData);var g=c.extractDataFromApplicationMapData(B.applicationMapData);if(g=c.addFilterProperty(e,g),W(g),i.doFiltersHaveUnknownNode(e))for(var k in r.mergeStatus)r.mergeStatus[k]=!1;N(B),Q(b,g,h,j)}):c.getServerMapData(w,function(a,b,d){if(a||d.exception)return A.stopLoading(),a?z.showError("There is some error."):z.showError(d.exception),r.$emit("serverMapDirective.hasNoData"),!1;A.setLoading(50),N(d),B=d;var e=c.extractDataFromApplicationMapData(d.applicationMapData);W(e),Q(b,e,h,j)})},N=function(a){0===a.applicationMapData.nodeDataArray.length?r.$emit("serverMapDirective.hasNoData"):r.$emit("serverMapDirective.hasData")},L=function(a,b,c,d){r.inspectApplicationName=c,r.inspectCategory=d,r.nodeContextMenuStyle={display:"block",top:a,left:b,"z-index":9999999},r.$digest()},O=function(a,b){r.linkContextMenuStyle={display:"block",top:a,left:b,"z-index":9999999},r.$digest()},P=function(a,b){r.backgroundContextMenuStyle={display:"block",top:a,left:b,"z-index":9999999},r.$digest()},V=function(){var a=[];for(var b in r.mergeStatus)r.mergeStatus[b]===!0&&a.push(b);return a},Q=function(d,e,f,h){var i=V();if(I=c.mergeMultiLinkGroup(c.mergeGroup(e,i),i),A.setLoading(80),0!==I.nodeDataArray.length){I.linkDataArray=R(I.linkDataArray,f,h),A.setLoading(90);var k=a.options;k.fOnNodeSubGroupClicked=function(a,b,d,e){var f=c.getLinkNodeDataByNodeKey(B.applicationMapData,d,e);f.fromNode=c.getNodeDataByKey(B.applicationMapData,f.from),f.toNode=c.getNodeDataByKey(B.applicationMapData,f.to),k.fOnLinkClicked(a,f)},k.fOnNodeClicked=function(a,d,e,f){var g;angular.isDefined(d.unknownNodeGroup)&&!e?d.unknownNodeGroup=c.getUnknownNodeDataByUnknownNodeGroup(B.applicationMapData,d.unknownNodeGroup):g=c.getNodeDataByKey(B.applicationMapData,e||d.key),g&&(d=g),E="node",D=d,r.$emit("serverMapDirective.nodeClicked",a,w,d,I,f),r.oNavbarVoService&&"realtime"===r.oNavbarVoService.getPeriodType()&&b.$broadcast("realtimeChartController.initialize",d.isWas,d.applicationName,r.oNavbarVoService.getApplication()+"/"+r.oNavbarVoService.getReadablePeriod()+"/"+r.oNavbarVoService.getQueryEndDateTime()+"/"+r.oNavbarVoService.getCallerRange()),M()},k.fOnNodeDoubleClicked=function(a,b,c){a.diagram.zoomToRect(b.actualBounds,1.2)},k.fOnNodeContextClicked=function(a,b){if("realtime"!==r.oNavbarVoService.getPeriodType()){M();var d=c.getNodeDataByKey(B.applicationMapData,b.key);d&&(b=d),D=b,u&&b.isWas===!0&&L(a.event.layerY,a.event.layerX,b.applicationName,b.category)}},k.fOnLinkClicked=function(a,b){if(!r.oNavbarVoService.isRealtime()){var d;angular.isDefined(b.unknownLinkGroup)?b.unknownLinkGroup=c.getUnknownLinkDataByUnknownLinkGroup(B.applicationMapData,b.unknownLinkGroup):d=c.getLinkDataByKey(B.applicationMapData,b.key),d&&(d.fromNode=b.fromNode,d.toNode=b.toNode,b=d),E="link",C=b,M(),r.$emit("serverMapDirective.linkClicked",a,w,b,I)}},k.fOnLinkContextClicked=function(a,b){var f=c.getLinkDataByKey(B.applicationMapData,b.key);f&&(f.fromNode=b.fromNode,f.toNode=b.toNode,b=f),M(),C=b,v&&!angular.isArray(b.targetInfo)&&(O(a.event.layerY,a.event.layerX),r.$emit("serverMapDirective.linkContextClicked",a,d,b,e))},k.fOnBackgroundClicked=function(a){r.$emit("serverMapDirective.backgroundClicked",a,d),M()},k.fOnBackgroundDoubleClicked=function(a){S()},k.fOnBackgroundContextClicked=function(a){r.$emit("serverMapDirective.backgroundContextClicked",a,d),M(),x&&P(a.diagram.lastInput.event.layerY,a.diagram.lastInput.event.layerX)};var l;try{l=_.find(I.nodeDataArray,function(a){return a.applicationName===d.applicationName&&angular.isUndefined(d.serviceType)?!0:a.applicationName===d.applicationName&&a.serviceTypeCode===d.serviceTypeCode}),l&&(k.sBoldKey=l.key)}catch(n){z.showError("There is some error while selecting a node."),console.log(n)}A.setLoading(100),null===y?y=new ServerMap(k,m,q):y.option(k),y.load(I),A.stopLoading(),T(l)}else if(A.stopLoading(),r.oNavbarVoService.getFilter()){var o=r.oNavbarVoService.getFilterAsJson(),p=[];p.push("

There is no data with the filter below.

"),angular.forEach(o,function(a,b){p.push("

Filter"),o.length>1&&p.push(" #"+(b+1)),p.push(" : "+a.fa+"("+a.fst+") ~ "+a.ta+"("+a.tst+")
"),p.push("

    "),a.url&&p.push("
  • Url Pattern : "+j.decode(a.url)+"
  • "),a.rf&&a.rt&&p.push("
  • Response Time : "+g("number")(a.rf)+" ms ~ "+g("number")(a.rt)+" ms
  • "),p.push("
  • Transaction Result : "+(a.ie?"Failed Only":"Success + Failed")+"
  • "),p.push("

")}),z.showInfo(p.join(""))}else z.showInfo("There is no data.")},R=function(a,b,c){var d=a;for(var e in d)d[e].from===d[e].to?d[e].routing="AvoidsNodes":d[e].routing=b,d[e].curve=c;return d},U=function(){M();var a=new f;"USER"===C.fromNode.serviceType?a.setImageType("USER").setTitle("USER"):a.setImageType(C.fromNode.serviceType).setTitle(C.fromNode.applicationName),a.setImageType2(C.toNode.serviceType).setTitle2(C.toNode.applicationName),r.fromAgent=C.fromAgent||[],r.toAgent=C.toAgent||[],r.sourceInfo=C.sourceInfo,r.targetInfo=C.targetInfo,r.fromApplicationName=C.fromNode.applicationName,r.toApplicationName=C.toNode.applicationName,F.select2("val",""),G.select2("val",""),r.fromAgentName="",r.toAgentName="",r.$broadcast("sidebarTitleDirective.initialize.forServerMap",a),$("#filterWizard").modal("show"),H||(H=!0,$("#filterWizard").on("shown.bs.modal",function(){if($("slider",this).addClass("auto"),setTimeout(function(){$("#filterWizard slider").removeClass("auto")},500),r.oNavbarVoService.getFilter()){var a=i.findFilterInNavbarVo(C.fromNode.applicationName,C.fromNode.serviceType,C.toNode.applicationName,C.toNode.serviceType,r.oNavbarVoService);if(a){r.urlPattern=a.oServerMapFilterVoService.getRequestUrlPattern(),r.responseTime.from=a.oServerMapFilterVoService.getResponseFrom();var b=a.oServerMapFilterVoService.getResponseTo();r.responseTime.to="max"===b?3e4:b,r.includeFailed=a.oServerMapFilterVoService.getIncludeException(),F.select2("val",a.oServerMapFilterVoService.getFromAgentName()),G.select2("val",a.oServerMapFilterVoService.getToAgentName())}else r.responseTime={from:0,to:3e4}}else r.responseTime={from:0,to:3e4};r.$$phase||r.$digest()}))},r.passingTransactionResponseToScatterChart=function(){r.$emit("serverMapDirective.passingTransactionResponseToScatterChart",D),M()},r.passingTransactionList=function(){q.send(q.CONST.CONTEXT,q.CONST.CLK_FILTER_TRANSACTION);var a=new h;a.setMainApplication(C.filterApplicationName).setMainServiceTypeName(C.filterApplicationServiceTypeName).setMainServiceTypeCode(C.filterApplicationServiceTypeCode).setFromApplication(C.fromNode.applicationName).setFromServiceType(C.fromNode.serviceType).setToApplication(C.toNode.applicationName).setToServiceType(C.toNode.serviceType);var b=new k;C.sourceInfo.isWas&&C.targetInfo.isWas&&b.setHint(C.toNode.applicationName,C.filterTargetRpcList),r.$broadcast("serverMapDirective.openFilteredMap",a,b),M()},r.openFilterWizard=function(){q.send(q.CONST.CONTEXT,q.CONST.CLK_FILTER_TRANSACTION_WIZARD),U()},S=function(){y&&y.zoomToFit()},T=function(a){l(function(){"node"===E&&D?y.highlightNodeByKey(D.key):"link"===E&&C?y.highlightLinkByFromTo(C.from,C.to):a&&y.highlightNodeByKey(a.key)})},r.responseTimeFormatting=function(a){return 3e4==a?"30,000+ ms":g("number")(a)+" ms"},r.passingTransactionMap=function(){var a=new h;a.setMainApplication(C.filterApplicationName).setMainServiceTypeCode(C.filterApplicationServiceTypeCode).setMainServiceTypeName(C.filterApplicationServiceTypeName).setFromApplication(C.fromNode.applicationName).setFromServiceType(C.fromNode.serviceType).setToApplication(C.toNode.applicationName).setToServiceType(C.toNode.serviceType).setResponseFrom(r.responseTime.from).setResponseTo(r.responseTime.to).setIncludeException(r.includeFailed).setRequestUrlPattern(j.encode(r.urlPattern)),r.fromAgentName&&a.setFromAgentName(r.fromAgentName),r.toAgentName&&a.setToAgentName(r.toAgentName);var b=new k;C.sourceInfo.isWas&&C.targetInfo.isWas&&b.setHint(C.toNode.applicationName,C.filterTargetRpcList),r.$broadcast("serverMapDirective.openFilteredMap",a,b),M()},r.toggleMergeGroup=function(a){q.send(q.CONST.CONTEXT,q.CONST.TG_MERGE_TYPE,a),r.mergeStatus[a]=!r.mergeStatus[a],Q(w,c.extractDataFromApplicationMapData(B.applicationMapData),r.linkRouting,r.linkCurve),M()},r.toggleLinkLableTextType=function(a){"tps"===a?(q.send(q.CONST.CONTEXT,q.CONST.TG_TPS),r.totalRequestCount=!1,r.tps=!0):(q.send(q.CONST.CONTEXT,q.CONST.TG_CALL_COUNT),r.totalRequestCount=!0,r.tps=!1),r.totalRequestCount="tps"!==a,r.tps="tps"===a,Q(w,I,r.linkRouting,r.linkCurve),M()},r.toggleLinkRouting=function(b){q.send(q.CONST.CONTEXT,q.CONST.TG_ROUTING,b),r.linkRouting=a.options.htLinkType.sRouting=b,Q(w,I,r.linkRouting,r.linkCurve),M()},r.toggleLinkCurve=function(b){q.send(q.CONST.CONTEXT,q.CONST.TG_CURVE,b),r.linkCurve=a.options.htLinkType.sCurve=b,Q(w,I,r.linkRouting,r.linkCurve),M()},r.refresh=function(){q.send(q.CONST.CONTEXT,q.CONST.CLK_REFRESH),y&&y.refresh(),M()},r.$on("serverMapDirective.initialize",function(a,b){r.oNavbarVoService&&w.applicationName!==b.getApplicationName()&&(E=!1),r.oNavbarVoService=b,r.oNavbarVoService.getQueryEndTime()===!1||r.oNavbarVoService.getQueryStartTime()===!1?r.bShowServerMapStatus=!1:r.bShowServerMapStatus=!0,v=x=!0,u=!1,K(b.getApplicationName(),b.getServiceTypeName(),b.getQueryEndTime(),b.getQueryPeriod(),b.getFilter(),b.getHint(),r.linkRouting,r.linkCurve)}),r.$on("serverMapDirective.fetch",function(a,b,c){K(r.oNavbarVoService.getApplicationName(),r.oNavbarVoService.getServiceTypeName(),c,b,r.oNavbarVoService.getFilter(),r.oNavbarVoService.getHint(),r.linkRouting,r.linkCurve)}),r.$on("serverMapDirective.initializeWithMapData",function(a,b,d,e){M(),r.bShowServerMapStatus=!1,x=!0,u=b,v=!1,w={applicationName:d.applicationId},B=d,r.oNavbarVoService=e,Q(w,c.extractDataFromApplicationMapData(B.applicationMapData),r.linkRouting,r.linkCurve)}),r.$on("serverMapDirective.zoomToFit",function(a){S()}),r.$on("serverMapDirective.openFilterWizard",function(a,b){C=b,U()}),r.searchNodeByEnter=function(a){13==a.keyCode&&r.searchNode()},r.searchNodeWithCategory=function(a){y&&(r.searchNodeIndex=a,y.searchNode(r.searchNodeList[a].applicationName,r.searchNodeList[a].serviceType))},r.searchNode=function(){y&&""!==r.searchNodeQuery&&(q.send(q.CONST.MAIN,q.CONST.CLK_SEARCH_NODE),r.searchNodeIndex=0,r.searchNodeList=y.searchNode(r.searchNodeQuery),jQuery(s).find(".search-result").show().find(".count").html("Result : "+r.searchNodeList.length))},r.clearSearchNode=function(){q.send(q.CONST.MAIN,q.CONST.CLK_CLEAR_SEARCH),y.clearQuery(),r.searchNodeIndex=0,r.searchNodeQuery="",r.searchNodeList=[],jQuery(s).find(".search-result").hide()},r.toggleShowAntStyleHint=function(){r.showAntStyleHint=!r.showAntStyleHint},r.moveToPast=function(){r.$emit("navbarDirective.moveToPast"),J.effect("highlight",{color:"#FFFF00"},1e3)},r.moveToFuture=function(){r.$emit("navbarDirective.moveToFuture"),J.effect("highlight",{color:"#FFFF00"},1e3)},r.toggleToolbar=function(){var a=jQuery(s).find(".servermap-toolbar"),b=jQuery(s).find(".servermap-toolbar-handle span");-1==parseInt(a.css("top"))?(a.find(".search-result").hide(),a.animate({top:-55},"fast",function(){b.addClass("glyphicon-chevron-down").removeClass("glyphicon-chevron-up")})):a.animate({top:-1},"fast",function(){r.searchNodeList.length>0&&a.find(".search-result").show(),b.addClass("glyphicon-chevron-up").removeClass("glyphicon-chevron-down")})},jQuery(".serverMapTooltip").tooltipster({content:function(){return o(p.servermap["default"])},position:"bottom-right",trigger:"click"})}}}])}(),function(){"use strict";pinpointApp.constant("realtimeChartDirectiveConfig",{params:{TIMEOUT_MAX_COUNT:"timeoutMaxCount",SHOW_EXTRA_INFO:"showExtraInfo",REQUEST_LABEL:"requestLabel",REQUEST_COLOR:"requestColor",CHART_COLOR:"chartColor",NAMESPACE:"namespace",XCOUNT:"xcount",HEIGHT:"height",WIDTH:"width"},responseCode:{ERROR_BLACK:111,TIMEOUT:211},consts:{maxDealyCount:5,verticalGridCount:5},message:{NO_ACTIVE_THREAD:"No Active Thread",NO_RESPONSE:"No Response"}}),pinpointApp.directive("realtimeChartDirective",["realtimeChartDirectiveConfig",function(a){return{restrict:"EA",replace:!0,template:'',link:function(b,c,d){function e(){L=d3.select(c.get(0)).attr("width",y.width).attr("height",y.height).append("g").attr("class","base").attr("transform","translate("+(y.showExtraInfo?z.margin.left:0)+","+z.margin.top+")"),L.append("defs").append("clipPath").attr("id","clip-"+y.namespace).append("rect").attr("x",1).attr("y",0).attr("width",A).attr("height",B)}function f(){G.length=0;for(var a=Date.now(),b=0;bA?-1e3:E,V.attr("transform","translate("+(E-z.tooltipWidth)+",0)"),p(o(D))})}function o(a){var b=[];if(-1===a)return b;for(var c=0;c1?(Y.attr("y","20%"),Z.text(b[0]),$.text(b[1])):(Y.attr("y","40%"),Z.text(b[0]),$.text(""))}function t(a){if(y.showExtraInfo!==!1){var b=0;T.data(a).text(function(a,c){return"undefined"!=typeof a.y?(b+=a.y,a.y):""}),U.text(b)}}function u(){I=0}function v(){aa=aa.each(function(){if(I++,0===F.length)return void(I>a.consts.maxDealyCount&&y.showExtraInfo===!1&&s(!1,[a.message.NO_RESPONSE]));u();var b=F.shift();t(b),h(),y.showExtraInfo===!1&&w();var c=0;for(c=0;c",images:{config:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNS4xIFdpbmRvd3MiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QTI2NzMzRDI2QTlGMTFFM0E1RENBRjZGODkwRDBCMEIiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QTI2NzMzRDM2QTlGMTFFM0E1RENBRjZGODkwRDBCMEIiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpBMjY3MzNEMDZBOUYxMUUzQTVEQ0FGNkY4OTBEMEIwQiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpBMjY3MzNEMTZBOUYxMUUzQTVEQ0FGNkY4OTBEMEIwQiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pn/ejkcAAAFwSURBVHjanFKxSsNQFE2CFEtaTNsMCbSQ4lA6GSghi2igo/o/GVz6AfmD/EFGJ7cKDiVLO0hFEByzpG1EA5LUxntC80jFKhi4LzfnnnPfzXmPz7KM+9ezT6iq6gnF+T4Nny88/110VK1WbwRB4OM4vgyC4PVXIQlW9JqRwGo2mzm2XC65zWYzplSnBo1CeFDu1Ov1XhaLhVWpVBimKAqXJInVarWmJGQ42xHjybIcQSSK4rNt29cgOI5jR1Gkk5gLw1DC2LkvWGBCu90eDwaDDOF53hXhhwjf908LHByYBo2ArqZpfnY6HbEYw3XdJ5riAzEajR4LHJxut6syhyhq5c6apt1hdER5EnCIKzFzqPM7fUwkSZrhf+r1+lmaphFqjUZuJIeaYRgT4q7ZqFvxmn7+GAQYBDcRyIGhBs6PN4dyjKLP5/OL4XA4RSAHhlpZs3OO1PF+W3ggwxQ6u7d+v3+7s9Nfd3VrQm3fXf0SYADyptv3yy4A0QAAAABJRU5ErkJggg==",download:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNS4xIFdpbmRvd3MiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6RUU3MjQyMUQ2QTlGMTFFM0IxRTY4MjI3MUU5MUUyMzMiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6RUU3MjQyMUU2QTlGMTFFM0IxRTY4MjI3MUU5MUUyMzMiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpFRTcyNDIxQjZBOUYxMUUzQjFFNjgyMjcxRTkxRTIzMyIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpFRTcyNDIxQzZBOUYxMUUzQjFFNjgyMjcxRTkxRTIzMyIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PlnySxAAAADPSURBVHjaxFLBDYMwDLQjMgEf4M8E4Y0YgzHaTTpGFuDfARAdoH3DiwmQSLmqRIZSpPLpSTH4krOjc9g5R0cQIDDzgozj2Ffrum6xOTcKtqolSUJCuNlR0UH8WTiZcpPGzEaB3xVWVXVO0/QhOeTgP1rKOU7/QdM0RZ7nd2OMwxc5eHkeixEm+71aKUVhGJLWmoZhoL7vaRxHX7xtW/ZzlHOTgDiKIirL8oTcWnuZ914dsyzbfXfoCuAmdV3z15ezBgRr8Nuc4ocRXhGeAgwAFHJVgfQ6KdUAAAAASUVORK5CYII=",fullscreen:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNS4xIFdpbmRvd3MiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QkMwOTc3QTg2QTlGMTFFMzk5MzhBOTM4OEFCMzg3MTciIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QkMwOTc3QTk2QTlGMTFFMzk5MzhBOTM4OEFCMzg3MTciPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpCQzA5NzdBNjZBOUYxMUUzOTkzOEE5Mzg4QUIzODcxNyIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpCQzA5NzdBNzZBOUYxMUUzOTkzOEE5Mzg4QUIzODcxNyIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PvZjiPIAAAE/SURBVHjanFKxaoRAEHXhbM4UopViGWzv0C5VUvsJqdP7A/6Dfb7DMmCVSuRCunClaKUYSKUQM2+zY1SsMjDuuDtv9u3ME9M0af+xAz6u687opmnENslxnFX1uq6FhhvDMKRluofvVeczuMr9vREmhMhRmRy/F3IukhOjM7Mh4B9VNkqQq67rR9u25VnbtsdxHPkZ6zcWRfFAN2qGYVzx3/e9X1XVC2LLsnzTNK8MQK5kCL4AwcqylPTiOH4m8C1igNI0fUIcBEGu3rwGRlFkK3qvRM9XtD+I9h3iLMvaXaDneRdF78T0cHPXdW+Iif6ZgavmALClB9q0nBRw3RyMAa0mWnJzGIbvJEneOeb9hRgEK0e2mjtG9kX+qeJH8hs163lkh2UlVWAruYIlp8ShzeNYqEQqaE9ym638R4ABADZiqF446UJLAAAAAElFTkSuQmCC",error:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABmJLR0QA/wD/AP+gvaeTAAADvUlEQVRoge2ZQW8bRRTHf2+2tMTrkCYFkQ9QqBBKC03aOOkldqtKUcUFqeUbkAN3pFSIGxQOFRx6IN8AJeIYtVIc1xdqHAdCE3EgKeeqNAlV8dIm8u7j0FasHW+8u7E3Rcrv9mbe7P7/mtHsmx044IA9Ie14iI4fP1LdPjYKZEEHBE4g9KOkAUVwUO4rrIIuI9bt9CvrJbl5b2uv796TASc7POgJEyJ6BeiJOPyRotNGrSm78NMvcTXEMuDkMqfVeNdQLsZ9cQO3MDqZnqv8GnVgJAM6MtLlpLyvQD8BrKgva0EN0Rt2zZ6UYvFp2EGhDTzODp0wRmZABuLpC81d18jlnrnyWpjkUAac82fOqMoswht70xaaTU/1g9cKlTutElsa+CebGVbj5RXS7dEWDoGqqHc+VVhcaJEXzLNlY34EjrVVXXjWXSOjuy0nE9ShY2OvGmO+Z//EA7xued4POjLSFZQQaMCxnnwNvNcRWZGQAafL/SKwt1mjk8ucVvEWaP9WGRcXo0PNvhNNZ0CNd42XRzyAhUrTWdgxA052eFCNLnZeU2RUxBu084tL/sYdM+AJE8lpioR4mI93NPoDHT9+xNnue0D0wiwZhL/sXqdfZn7bftFUNwPVrb5zvKziAZTe6kYq42+qX0IiY0nqiYWRXF1Y1yneqUTFxEE56Q8P+QNReSvsc+x8uV2SAHAuDIfKE3jbHzfuQm+2S1AHqdPYaCDRijMm3f4gsBb6v9BooLovKqKgPPaHjQYeJCglHsKf/rBuF1JYFXgnzHPC7hrtRlR+98cNM6B3kxQTD132Rw0GTDFBJbFwhYI/rjOQPrxxB3iUqKJobHb3OXVf0DoDcvPelqrMJKspPCpM+ytRaPIdMMh3yUmKhIroVGPjDgPPf7TeSkRSNGZDn4kR61Og1mlFEajh8VmzjqYG0vnSCqI3OqspAqLfpm8vNN3iA2shu2ZPAktB/QmybDuHPg/qDDQgxeJT18hHwHpHZIVBeVhT90MplZ4EpexajfbMldeMepdkH4o8gaqIXjpa+PmP3fJaltPP/g5rDuVh++S1ZFPgoj1fqbRKDHUesOcrFdeSc0AStdJSTd2zqfmFUpjk0Aeanrnymu2mMijf0JkttgZy3XZTo62WjZ9Yl3zV7NlTWHyJMh73GT4UmEWsq+l8aSXq4L1ds14Yet9TMyHCFZTeiMM3VZgW0ak4t5MvaM9F9+V3D1c3UhmM5FBOPv/10c9/B/C/Ue4LsuoZXVFlvrvPKTcWZgccsA/8C1bvKjPyfF8QAAAAAElFTkSuQmCC"},options:{containerId:"",containerClass:"bigscatterchart",width:400,height:250,minX:0,maxX:1e3,minY:0,maxY:1e4,minZ:0,maxZ:5,bubbleSize:3,labelX:"",labelY:"(ms)",realtime:!1,chartAnimationTime:300,gridAxisStyle:{lineWidth:1,lineDash:[1,0],globalAlpha:1,strokeStyle:"#e3e3e3"},padding:{top:40,left:50,right:40,bottom:30},typeInfo:{0:["Failed","#d62728",20],1:["Success","#2ca02c",10]},propertyIndex:{x:0,y:1,meta:2,transactionId:3,type:4,groupCount:5},checkBoxImage:{checked:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNS4xIFdpbmRvd3MiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6ODk0MjRENUI2Qjk2MTFFM0E3NkNCRkIyQTkxMjZFQjMiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6ODk0MjRENUM2Qjk2MTFFM0E3NkNCRkIyQTkxMjZFQjMiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo4OTQyNEQ1OTZCOTYxMUUzQTc2Q0JGQjJBOTEyNkVCMyIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo4OTQyNEQ1QTZCOTYxMUUzQTc2Q0JGQjJBOTEyNkVCMyIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PkJ02akAAAEfSURBVHjalJI/aoRQEMbnrU8RRVYsBAXJASxEtLGRXEDIJXKTpPcOHiDl1gsp1QvEIiD2AbGLmpm3f7Is68YMjOOb9/0Y/Rg2zzPEcTzDP6IsS7Y5QXTAsibFIH4BQVVVi1Mcx9liyTFN13W/+JpPI0iSpL1hGEHf9+E0TSBAxtifkGVZgSzLgBkMwwCbNZNOEIVpmo3v+78gigLMt+O/3IR0XW/yPH/uuu4AEqQoComeSIznhyUoDMP3cRwPoKZpLyjaqqoKJOacfy5B6Mc39QRYFMUrOtbQO4lt24Z70BlMkqSkSxJdmrMEiYiiSGwOrh6v6/oxTdMP6lGlM/Wv3RYMPY55hrMs292DKNn1kqOb4HketG0L5N5CsB8BBgCZjoUNsxfiYwAAAABJRU5ErkJggg==", +unchecked:"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAYAAAAfSC3RAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNS4xIFdpbmRvd3MiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6OEQxQ0ZERUQ2Qjk2MTFFMzg5MjNGMjAzRjdCQ0FEMjkiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6OEQxQ0ZERUU2Qjk2MTFFMzg5MjNGMjAzRjdCQ0FEMjkiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo4RDFDRkRFQjZCOTYxMUUzODkyM0YyMDNGN0JDQUQyOSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo4RDFDRkRFQzZCOTYxMUUzODkyM0YyMDNGN0JDQUQyOSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pq1+Js8AAABTSURBVHjaYvz//z+DiYnJfwYSwJkzZxgZjY2NYZoYidQHVs9Eoia4WhY0JxDUBfQWA7KNRGlCVsfEQCYY1UhLjf9hEUtEAgAnOUZyEjlIH0CAAQDn/BlKI9rDJAAAAABJRU5ErkJggg=="}}}),pinpointApp.directive("scatterDirective",["scatterDirectiveConfig","$rootScope","$compile","$timeout","webStorage","$window","$http","CommonAjaxService","TooltipService","AnalyticsService","PreferenceService",function(a,b,c,d,e,f,g,h,i,j,k){return{template:a.template,restrict:"EA",replace:!0,link:function(c,g,l){function m(c,g,h,l,m){var n=v.getQueryStartTime(),o=v.getQueryEndTime(),p=v.getFilter(),q=g.split("^")[0],r={};angular.copy(a.options,r),r.sPrefix="BigScatterChart2-"+parseInt(1e5*Math.random()),r.containerId=c,r.width=h?h:400,r.height=l?l:250,r.minX=n,r.maxX=o,r.errorImage=a.images.error,r.realtime=u();var s=new BigScatterChart2(r,t(m),[new BigScatterChart2.SettingPlugin(a.images.config).addCallback(function(a,b){e.add("scatter-y-min",b.min),e.add("scatter-y-max",b.max),a.changeRangeOfY(b),a.redraw()}),new BigScatterChart2.DownloadPlugin(a.images.download,"PNG").addCallback(function(a){j.send(j.CONST.MAIN,j.CONST.CLK_DOWNLOAD_SCATTER)}),new BigScatterChart2.WideOpenPlugin(a.images.fullscreen).addCallback(function(){var a=v.isRealtime()?"realtime/"+v.getQueryEndDateTime():v.getPartialURL(!1,!0);f.open("#/scatterFullScreenMode/"+x.applicationName+"@"+x.serviceType+"/"+a+"/"+t().join(","),"width=900, height=700, resizable=yes")}),new BigScatterChart2.HelpPlugin(i)],{sendAnalytics:function(a,b){j.send(j.CONST.MAIN,j.CONST["Success"===a?"TG_SCATTER_SUCCESS":"TG_SCATTER_FAILED"],j.CONST[b?"ON":"OFF"])},loadFromStorage:function(a){return e.get(a)},onSelect:function(a,b){if(3===arguments.length)f.open("#/transactionList/"+v.getPartialURL(!0,!1),g+"|"+arguments[0]+"|"+arguments[1]+"|"+arguments[2]);else{var c=g+"|"+b.fromX+"|"+b.toX+"|"+b.fromY+"|"+b.toY;f.open("#/transactionList/"+v.getPartialURL(!0,!1),c)}},onError:function(){}},k.getAgentAllStr());return d(function(){angular.isUndefined(m)?s.drawWithDataSource(new BigScatterChart2.DataLoadManager(q,p,{url:a.scatterDataUrl,realtime:u(),realtimeInterval:2e3,realtimeDefaultTimeGap:5e3,realtimeResetTimeGap:2e4,fetchLimit:5e3,fetchingInterval:2e3,useIntervalForFetching:!1},function(a,c,d){v.setQueryEndDateTime(c),b.$broadcast("responseTimeChartDirective.loadRealtime",q,s.getCurrentAgent(),a.min,a.max)})):s.addBubbleAndMoveAndDraw(s.createDataBlock(m)),f.htoScatter[g]=s},100),s}function n(a,b,c){g.children().hide(),r(),angular.isDefined(w[a])?(w[a].target.show(),u()?h.getServerTime(function(b){w[a].scatter.resume(b-k.getRealtimeScatterXRange(),b),w[a].scatter.selectAgent(k.getAgentAllStr(),!0)}):(w[a].scatter.resume(),w[a].scatter.selectAgent(k.getAgentAllStr(),!0))):p(a,b,c)}function o(a,b,c,d){angular.isDefined(w[a])?w[a].scatter.addBubbleAndMoveAndDraw(w[a].scatter.createDataBlocK(d)):p(a,b,c,d).hide()}function p(b,c,d,e){var f=angular.element(a.template),h=m(f,b,c,d,e);return w[b]={target:f,scatter:h},g.append(f),f}function q(a){g.children().hide(),angular.isDefined(w[a])&&(w[a].target.show(),w[a].scatter.selectAgent(k.getAgentAllStr(),!0))}function r(){angular.forEach(w,function(a,b){a.scatter.pause()})}function s(){for(var a in w)w[a].scatter.abort();w={}}function t(a){var b,c=[];if("undefined"!=typeof a)return $.each(a.scatter.metadata,function(a,b){c.push(b[0])}),c;if(x.agentList)return x.agentList;if(x.serverList)for(b in x.serverList){var d=x.serverList[b].instanceList;for(var e in d)c.push(d[e].name)}return c}function u(){return"realtime"===v.getPeriodType()}var v=null,w={},x=null;c.$on("scatterDirective.initialize",function(a,b){v=b,s(),g.empty()}),c.$on("scatterDirective.initializeWithNode",function(a,b,d,e){c.currentAgent=k.getAgentAllStr(),x=b,n(b.key,d,e)}),c.$on("scatterDirective.initializeWithData",function(a,b,d){c.currentAgent=k.getAgentAllStr();var e=b.split("^");x={applicationName:e[0],serviceType:e[1],key:b},o(b,null,null,d)}),c.$on("scatterDirective.showByNode",function(a,b){x=b,q(b.key)}),c.$on("responseTimeChartDirective.showErrorTransacitonList",function(b,c){f.htoScatter[x.key].selectType("Failed").fireDragEvent({animate:function(){},css:function(b){return"left"===b?a.options.padding.left+"px":"top"===b?a.options.padding.top+"px":"0px"},width:function(){return a.options.width-a.options.padding.left-a.options.padding.right},height:function(){return a.options.height-a.options.padding.top-a.options.padding.bottom}})}),c.$on("changedCurrentAgent",function(a,b){w[x.key].scatter.selectAgent(b)})}}}])}(),function(){"use strict";pinpointApp.constant("nodeInfoDetailsDirectiveConfig",{maxTimeToShowLoadAsDefaultForUnknown:43200}),pinpointApp.directive("nodeInfoDetailsDirective",["nodeInfoDetailsDirectiveConfig","$filter","$timeout","isVisibleService","$window","AnalyticsService","PreferenceService","TooltipService","CommonAjaxService",function(a,b,c,d,e,f,g,h,i){return{restrict:"EA",replace:!0,templateUrl:"features/nodeInfoDetails/nodeInfoDetails.html?v="+G_BUILD_TIME,scope:{},link:function(j,k){function l(a){var b=g.getResponseTypeFormat();return $.each(a,function(a,c){$.each(c,function(a,c){b[a]+=c})}),b}function m(a){var b=[];return $.each(a,function(a,c){for(var d=0;d0&&j.errorServerCount++}/_GROUP$/.test(b.serviceType)===!1?(j.showNodeResponseSummary=!0,j.showNodeLoad=!0,B("forNode",b.applicationName,b.histogram,"100%","150px"),C("forNode",b.applicationName,b.timeSeriesHistogram,"100%","220px",!0)):/_GROUP$/.test(b.serviceType)&&(j.showNodeResponseSummaryForUnknown=!(j.oNavbarVoService.getPeriod()<=a.maxTimeToShowLoadAsDefaultForUnknown),y(b),j.htLastUnknownNode=b,c(function(){k.find('[data-toggle="tooltip"]').tooltip("destroy").tooltip()})),"$apply"!=j.$$phase&&"$digest"!=j.$$phase&&"$apply"!=j.$root.$$phase&&"$digest"!=j.$root.$$phase&&j.$digest()},y=function(a){c(function(){angular.forEach(a.unknownNodeGroup,function(a){var c=a.applicationName,e=b("applicationNameToClassName")(c);if(!angular.isDefined(p[c])&&!angular.isDefined(q[c])){var f=".nodeInfoDetails .summaryCharts_"+e,g=angular.element(f),h=d(g.get(0),1);h&&(j.showNodeResponseSummaryForUnknown?(p[c]=!0,B(null,c,a.histogram,"360px","180px")):(q[c]=!0,C(null,c,a.timeSeriesHistogram,"360px","200px",!0)))}})})},B=function(a,c,d,e,f){var g=b("applicationNameToClassName")(c);a=a||"forNode_"+g,j.$broadcast("responseTimeChartDirective.initAndRenderWithData."+a,d,e,f,!1,!0)},C=function(a,c,d,e,f,g){var h=b("applicationNameToClassName")(c);a=a||"forNode_"+h,j.$broadcast("loadChartDirective.initAndRenderWithData."+a,d,e,f,g)},v=function(a){for(var b=null,c=0;c-1||b.totalCount.toString().indexOf(a)>-1:!0},j.showServerList=function(){f.send(f.CONST.MAIN,f.CONST.CLK_SHOW_SERVER_LIST),j.$emit("serverListDirective.show",!0,o,j.oNavbarVoService)},j.$on("nodeInfoDetailsDirective.initialize",function(a,b,c,d,e,f,g,h){A(),w(),r=c,u=d.key,o=d,j.htLastUnknownNode=!1,j.oNavbarVoService=f,j.nodeSearch=h||"",n=e,x(d)}),j.$on("nodeInfoDetailsDirective.hide",function(a){z()}),j.$on("nodeInfoDetailsDirective.lazyRendering",function(a,b){y(o)}),j.$on("responseTimeChartDirective.itemClicked.forNode",function(a,b){}),j.$on("responseTimeChartDirective.loadRealtime",function(a,b,c,d,e){D===!1&&(D=!0,i.getResponseTimeHistogramData({applicationName:j.node.applicationName,serviceTypeName:j.node.category,from:d,to:e},function(a){c===g.getAgentAllStr()?(B("forNode",j.node.applicationName,l(a.summary),"100%","150px"),C("forNode",j.node.applicationName,m(a.timeSeries),"100%","220px",!0)):(B("forNode",j.node.applicationName,a.summary[c],"100%","150px"),C("forNode",j.node.applicationName,a.timeSeries[c],"100%","220px",!0)),D=!1},function(){D=!1}))}),j.$on("changedCurrentAgent",function(a,b){var c=null,d=null;b===g.getAgentAllStr()?(c=j.node.histogram,d=j.node.timeSeriesHistogram):(c=j.node.agentHistogram[b],d=j.node.agentTimeSeriesHistogram[b]),B("forNode",j.node.applicationName,c,"100%","150px"),C("forNode",j.node.applicationName,d,"100%","220px",!0)}),h.init("responseSummaryChart"),h.init("loadChart")}}}])}(),function(){"use strict";pinpointApp.constant("linkInfoDetailsDirectiveConfig",{maxTimeToShowLoadAsDefaultForUnknown:43200}),pinpointApp.directive("linkInfoDetailsDirective",["linkInfoDetailsDirectiveConfig","$filter","ServerMapFilterVoService","filteredMapUtilService","$timeout","isVisibleService","ServerMapHintVoService","AnalyticsService","$window",function(a,b,c,d,e,f,g,h,i){return{restrict:"EA",replace:!0,templateUrl:"features/linkInfoDetails/linkInfoDetails.html?v="+G_BUILD_TIME,scope:!0,link:function(j,k,l){var m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D;j.linkSearch="",s=!1,t=!1,q=!1,j.htLastUnknownLink=!1,angular.element(i).bind("resize",function(a){q&&n.targetRawData&&z(n)}),k.find(".unknown-list").bind("scroll",function(a){z(n)}),v=function(){m=!1,n=!1,o={},r={},p={},j.linkCategory=null,j.unknownLinkGroup=null,j.showLinkInfoDetails=!1,j.showLinkResponseSummary=!1,j.showLinkLoad=!1,j.showLinkServers=!1,j.linkSearch="",j.linkOrderBy="totalCount",j.linkOrderByNameClass="",j.linkOrderByCountClass="glyphicon-sort-by-order-alt",j.linkOrderByDesc=!0,j.sourceApplicationName="",j.sourceHistogram=!1,j.namespace=null,j.$$phase||j.$digest()},w=function(b){if(j.link=b,b.unknownLinkGroup)j.unknownLinkGroup=b.unknownLinkGroup,j.htLastUnknownLink=b,j.showLinkResponseSummaryForUnknown=!(j.oNavbarVoService.getPeriod()<=a.maxTimeToShowLoadAsDefaultForUnknown),z(b),e(function(){k.find('[data-toggle="tooltip"]').tooltip("destroy").tooltip()});else{j.showLinkResponseSummary=!0,j.showLinkLoad=!0,y("forLink",b.targetInfo.applicationName,b.histogram,"100%","150px"),x("forLink",b.targetInfo.applicationName,b.timeSeriesHistogram,"100%","220px",!0),j.showLinkServers=!_.isEmpty(b.sourceHistogram),j.sourceApplicationName=b.sourceInfo.applicationName,j.sourceHistogram=b.sourceHistogram,j.fromNode=b.fromNode,j.serverCount=0,j.errorServerCount=0;for(var c in j.sourceHistogram)j.serverCount++,j.sourceHistogram[c].Error>0&&j.errorServerCount++}j.showLinkInfoDetails=!0,j.$$phase||j.$digest()},z=function(a){e(function(){angular.forEach(a.unknownLinkGroup,function(a,c){var d=a.targetInfo.applicationName,e=b("applicationNameToClassName")(d);if(!angular.isDefined(o[d])&&!angular.isDefined(p[d])){var g=".linkInfoDetails .summaryCharts_"+e,h=angular.element(g),i=f(h.get(0),1);i&&(j.showLinkResponseSummaryForUnknown?(o[d]=!0,C(null,a,"360px","180px")):(p[d]=!0,x(null,d,a.timeSeriesHistogram,"360px","200px",!0)))}})})},y=function(a,e,f,h,i){var k=b("applicationNameToClassName")(e);a=a||"forLink_"+k,"forLink"===a&&s?j.$broadcast("responseTimeChartDirective.updateData."+a,f):("forLink"===a&&(s=!0),j.$broadcast("responseTimeChartDirective.initAndRenderWithData."+a,f,h,i,!0,!0),j.$on("responseTimeChartDirective.itemClicked."+a,function(a,b){var e=b.responseTime,f=b.count,h=new c;h.setMainApplication(n.filterApplicationName).setMainServiceTypeCode(n.filterApplicationServiceTypeCode),"USER"===n.sourceInfo.serviceType?h.setFromApplication("USER").setFromServiceType("USER"):h.setFromApplication(n.sourceInfo.applicationName).setFromServiceType(n.sourceInfo.serviceType),h.setToApplication(n.targetInfo.applicationName).setToServiceType(n.targetInfo.serviceType),"error"===e.toLowerCase()?h.setIncludeException(!0):"slow"===e.toLowerCase()?h.setResponseFrom(1e3*d.getStartValueForFilterByLabel(e,f)).setIncludeException(!1).setResponseTo("max"):h.setResponseFrom(1e3*d.getStartValueForFilterByLabel(e,f)).setIncludeException(!1).setResponseTo(1e3*parseInt(e,10));var i=new g;n.sourceInfo.isWas&&n.targetInfo.isWas&&i.setHint(n.targetInfo.applicationName,n.filterTargetRpcList),j.$emit("linkInfoDetailsDirective.ResponseSummary.barClicked",h,i)}))},C=function(a,e,f,h){var i=b("applicationNameToClassName")(e.targetInfo.applicationName);a=a||"forLink_"+i,"forLink"===a&&s?j.$broadcast("responseTimeChartDirective.updateData."+a,e.histogram):("forLink"===a&&(s=!0),j.$broadcast("responseTimeChartDirective.initAndRenderWithData."+a,e.histogram,f,h,!0,!0),j.$on("responseTimeChartDirective.itemClicked."+a,function(a,b){var f=b.responseTime,h=b.count,i=new c;i.setMainApplication(e.filterApplicationName).setMainServiceTypeCode(e.filterApplicationServiceTypeCode),"USER"===e.sourceInfo.serviceType?i.setFromApplication("USER").setFromServiceType("USER"):i.setFromApplication(e.sourceInfo.applicationName).setFromServiceType(e.sourceInfo.serviceType),i.setToApplication(e.targetInfo.applicationName).setToServiceType(e.targetInfo.serviceType),"error"===f.toLowerCase()?i.setIncludeException(!0):"slow"===f.toLowerCase()?i.setResponseFrom(1e3*d.getStartValueForFilterByLabel(f,h)).setIncludeException(!1).setResponseTo("max"):i.setResponseFrom(1e3*d.getStartValueForFilterByLabel(f,h)).setIncludeException(!1).setResponseTo(1e3*parseInt(f,10));var k=new g;e.sourceInfo.isWas&&e.targetInfo.isWas&&k.setHint(e.targetInfo.applicationName,e.filterTargetRpcList),j.$emit("linkInfoDetailsDirective.ResponseSummary.barClicked",i,k)}))},x=function(a,c,d,e,f,g){var h=b("applicationNameToClassName")(c);a=a||"forLink_"+h,"forLink"===a&&t?j.$broadcast("loadChartDirective.updateData."+a,d):("forLink"===a&&(t=!0),j.$broadcast("loadChartDirective.initAndRenderWithData."+a,d,e,f,g))},D=function(a){for(var b=null,c=0;c-1||b.totalCount.toString().indexOf(a)>-1:!0},j.passingTransactionMapFromLinkInfoDetails=function(a){var b=D(a),d=new c;d.setMainApplication(b.filterApplicationName).setMainServiceTypeCode(b.filterApplicationServiceTypeCode).setFromApplication(b.sourceInfo.applicationName).setFromServiceType(b.sourceInfo.serviceType).setToApplication(b.targetInfo.applicationName).setToServiceType(b.targetInfo.serviceType);var e=new g;b.sourceInfo.isWas&&b.targetInfo.isWas&&e.setHint(b.toNode.applicationName,b.filterTargetRpcList),j.$emit("linkInfoDetailsDirective.openFilteredMap",d,e)},j.openFilterWizard=function(a){var b=D(a);j.$emit("linkInfoDetailsDirective.openFilterWizard",b)},j.renderLinkAgentCharts=function(a){angular.isDefined(r[a])||(r[a]=!0,y(null,a,n.sourceHistogram[a],"100%","150px"),x(null,a,n.sourceTimeSeriesHistogram[a],"100%","200px",!0))},j.linkSearchChange=function(){z(n)},j.$on("linkInfoDetailsDirective.hide",function(a){A()}),j.$on("linkInfoDetailsDirective.initialize",function(a,b,c,d,e,f,g){B(),v(),m=c,u=d.key,n=d,j.htLastUnknownLink=!1,j.oNavbarVoService=f,w(d)}),j.$on("linkInfoDetailsDirective.lazyRendering",function(a,b){z(n)})}}}])}(),function(){"use strict";pinpointApp.constant("agentListConfig",{}),pinpointApp.directive("agentListDirective",["agentListConfig","$rootScope","AgentAjaxService","TooltipService","AnalyticsService",function(a,b,c,d,e){return{restrict:"EA",replace:!0,templateUrl:"features/agentList/agentList.html?v="+G_BUILD_TIME,link:function(a,b,f){d.init("agentList");var g={sign:{100:"ok-sign",200:"minus-sign",201:"minus-sign",300:"remove-sign","-1":"question-sign"},color:{100:"#40E340",200:"#F00",201:"#F00",300:"#AAA","-1":"#AAA"}},h=function(b,d,e,f,g){c.getAgentList({application:b,from:e,to:f},function(b){b.errorCode||b.status||(a.agentGroup=b,a.select(i(g)))})},i=function(b){for(var c in a.agentGroup)for(var d in a.agentGroup[c])if(a.agentGroup[c][d].agentId===b)return a.agentGroup[c][d];return!1};a.select=function(b){e.send(e.CONST.INSPECTOR,e.CONST.CLK_CHANGE_AGENT),a.currentAgent=b,a.$emit("agentListDirective.agentChanged",b)},a.getState=function(a){return g.sign[a+""]},a.getStateColor=function(a){return g.color[a+""]},a.$on("agentListDirective.initialize",function(a,b){h(b.getApplicationName(),b.getServiceTypeName(),b.getQueryStartTime(),b.getQueryEndTime(),b.getAgentId())})}}}])}(),function(a){"use strict";pinpointApp.constant("agentInfoConfig",{agentStatUrl:"/getAgentStat.pinpoint"}),pinpointApp.directive("agentInfoDirective",["agentInfoConfig","$timeout","AlertsService","ProgressBarService","AgentDaoService","AgentAjaxService","TooltipService","AnalyticsService","helpContentService",function(b,c,d,e,f,g,h,i,j){return{restrict:"EA",replace:!0,templateUrl:"features/agentInfo/agentInfo.html?v"+G_BUILD_TIME,link:function(b,k,l){b.agentInfoTemplate="features/agentInfo/agentInfoReady.html?v="+G_BUILD_TIME,b.showEventInfo=!1,b.showDetail=!1,b.selectTime=-1;var m,n=null,o=!1,p=new d,q=new e,r=null,s=function(c){null===r&&(r=a("#target-picker"),r.datetimepicker({dateFormat:"yy-mm-dd",timeFormat:"HH:mm:ss",controlType:"select",showButtonPanel:!0,onSelect:function(){},onClose:function(a){var c=moment(a,"YYYY-MM-DD HH:mm:ss").valueOf();b.selectTime!==c&&n.setSelectTime(c)}}),a("#ui-datepicker-div").addClass("inspector-datepicker")),t(c)},t=function(a){r.datetimepicker("setDate",new Date(a))},u=function(c,d){null!==n?n.emptyData():n=new TimeSlider("timeSlider",{width:a("#timeSlider").get(0).getBoundingClientRect().width,height:90,handleSrc:"images/handle.png",timeSeries:d?d:A(c),handleTimeSeries:c,selectTime:c[1],eventData:[]}).addEvent("clickEvent",function(a){z(a[2])}).addEvent("selectTime",function(a){b.selectTime=a,y(a),w(),t(a)}).addEvent("changeSelectionZone",function(a){x(b.agent.agentId,a,v(a[0],a[1]),function(){})}).addEvent("changeSliderTimeSeries",function(a){})},v=function(a,b){return(b-a)/1e3/60},w=function(){n.setDefaultStateLineColor(TimeSlider.EventColor[100==b.agent.status.state.code?"10100":"10200"])},x=function(a,d,e,h){q.startLoading(),q.setLoading(40),g.getAgentStateForChart({agentId:a,from:d[0],to:d[1],sampleRate:f.getSampleRate(e)},function(a){return a.errorCode||a.status?(q.stopLoading(),void p.showError("There is some error.")):(b.agentStat=a,angular.isDefined(a.type)&&a.type&&(b.agent.jvmGcType=a.type),q.setLoading(80),D(a),c(function(){q.setLoading(100),q.stopLoading()},700),void h())})},y=function(a){q.startLoading(),q.setLoading(40),g.getAgentInfo({agentId:b.agent.agentId,timestamp:a},function(a){var c=b.agent.jvmGcType;q.setLoading(80),b.agent=a,b.agent.jvmGcType=c,b.currentServiceInfo=C(a),q.setLoading(100),q.stopLoading()})},z=function(a){g.getEvent({agentId:b.agent.agentId,eventTimestamp:a.eventTimestamp,eventTypeCode:a.eventTypeCode},function(a){a.errorCode||a.status?p.showError("There is some error."):(b.eventInfo=a,b.showEventInfo=!0)})},A=function(a){var b=a[0],c=a[1],d=1728e5,e=c-b;return e>d?[c-d,c]:[c-3*e,c]},B=function(){o===!1&&(h.init("heap"),h.init("permGen"),h.init("cpuUsage"),h.init("tps"),o=!0)},C=function(a){if(a.serverMetaData&&a.serverMetaData.serviceInfos)for(var b=a.serverMetaData.serviceInfos,c=0;c0)return b[c]},D=function(a){var c={id:"heap",title:"Heap Usage",span:"span12",line:[{id:"JVM_MEMORY_HEAP_USED",key:"Used",values:[],isFgc:!1},{id:"JVM_MEMORY_HEAP_MAX",key:"Max",values:[],isFgc:!1},{id:"fgc",key:"FGC",values:[],bar:!0,isFgc:!0}]},d={id:"nonheap",title:"PermGen Usage",span:"span12",line:[{id:"JVM_MEMORY_NON_HEAP_USED",key:"Used",values:[],isFgc:!1},{id:"JVM_MEMORY_NON_HEAP_MAX",key:"Max",values:[],isFgc:!1},{id:"fgc",key:"FGC",values:[],bar:!0,isFgc:!0}]},e={id:"cpuLoad",title:"JVM/System Cpu Usage",span:"span12",isAvailable:!1},g={id:"tps",title:"Transactions Per Second",span:"span12",isAvailable:!1};b.memoryGroup=[c,d],b.cpuLoadChart=e,b.tpsChart=g,b.$broadcast("jvmMemoryChartDirective.initAndRenderWithData.forHeap",f.parseMemoryChartDataForAmcharts(c,a),"100%","270px"),b.$broadcast("jvmMemoryChartDirective.initAndRenderWithData.forNonHeap",f.parseMemoryChartDataForAmcharts(d,a),"100%","270px"),b.$broadcast("cpuLoadChartDirective.initAndRenderWithData.forCpuLoad",f.parseCpuLoadChartDataForAmcharts(e,a),"100%","270px"),b.$broadcast("tpsChartDirective.initAndRenderWithData.forTps",f.parseTpsChartDataForAmcharts(g,a),"100%","270px")},E=function(a,b){g.getEventList({agentId:a,from:b[0],to:b[1]},function(a){a.errorCode||a.status?p.showError("There is some error."):n.addEventData(a)})},F=function(a,c){b.cpuLoadChart.isAvailable&&b.$broadcast("cpuLoadChartDirective.showCursorAt.forCpuLoad",c.index)},G=function(a,c){b.tpsChart.isAvailable&&b.$broadcast("tpsChartDirective.showCursorAt.forTps",c.index)};b.toggleHelp=function(){a("._wrongApp").popover({title:""+m.getApplicationName()+" "+b.agent.applicationName+"",content:j.inspector.wrongApp.replace(/\{\{application1\}\}/g,m.getApplicationName()).replace(/\{\{application2\}\}/g,b.agent.applicationName).replace(/\{\{agentId\}\}/g,b.agent.agentId),html:!0}).popover("toggle")},b.isSameApplication=function(){return b.agent.applicationName===m.getApplicationName()},b.formatDate=function(a){return moment(a).format("YYYY.MM.DD HH:mm:ss")},b.hideEventInfo=function(){b.showEventInfo=!1},b.zoomInTimeSlider=function(){n.zoomIn()},b.zoomOutTimeSlider=function(){n.zoomOut();var a=n.getSliderTimeSeries();E(b.agent.agentId,a)},b.toggleShowDetail=function(){i.send(i.CONST.INSPECTOR,i.CONST.CLK_SHOW_SERVER_TYPE_DETAIL),b.showDetail=!b.showDetail},b.hasDuplicate=function(a,c){for(var d=b.currentServiceInfo.serviceLibs.length,e=!1,f=0;d>f;f++)if(b.currentServiceInfo.serviceLibs[f]==a&&f!=c){e=!0;break}return e?"color:red":""},b.selectServiceInfo=function(a){a.serviceLibs.length>0&&(b.currentServiceInfo=a)},b.$on("agentInfoDirective.initialize",function(a,d,e){m=d,b.agentInfoTemplate="features/agentInfo/agentInfoMain.html?v="+G_BUILD_TIME,b.agent=e,b.chartGroup=null,b.currentServiceInfo=C(e);var f,g,h=[];null===n?(h[0]=m.getQueryStartTime(),h[1]=m.getQueryEndTime(),g=m.getPeriod()):(h=n.getSelectionTimeSeries(),f=n.getSliderTimeSeries(),g=v(h[0],h[1])),-1===b.selectTime?b.selectTime=m.getQueryEndTime():b.selectTime!==m.getQueryEndTime()&&y(b.selectTime),c(function(){x(e.agentId,h,g,function(){s(b.selectTime),B(),u(h,f),w(),E(e.agentId,f||A(h))}),b.$apply()})}),b.$on("jvmMemoryChartDirective.cursorChanged.forHeap",function(a,c){b.$broadcast("jvmMemoryChart.showCursorAt.forNonHeap",c.index),F(a,c),G(a,c)}),b.$on("jvmMemoryChartDirective.cursorChanged.forNonHeap",function(a,c){b.$broadcast("jvmMemoryChartDirective.showCursorAt.forHeap",c.index),F(a,c),G(a,c)}),b.$on("cpuLoadChartDirective.cursorChanged.forCpuLoad",function(a,c){b.$broadcast("jvmMemoryChartDirective.showCursorAt.forHeap",c.index),b.$broadcast("jvmMemoryChartDirective.showCursorAt.forNonHeap",c.index),G(a,c)}),b.$on("tpsChartDirective.cursorChanged.forTps",function(a,c){b.$broadcast("jvmMemoryChartDirective.showCursorAt.forHeap",c.index),b.$broadcast("jvmMemoryChartDirective.showCursorAt.forNonHeap",c.index),F(a,c)})}}}])}(jQuery),function(){"use strict";pinpointApp.constant("timeSliderDirectiveConfig",{scaleCount:10}),pinpointApp.directive("timeSliderDirective",["timeSliderDirectiveConfig","$timeout","AnalyticsService",function(a,b,c){return{restrict:"EA",replace:!0,templateUrl:"features/timeSlider/timeSlider.html?v="+G_BUILD_TIME,link:function(d,e,f){var g,h,i,j,k,l,m;g=e.find(".timeslider_input"),d.oTimeSliderVoService=null,d.disableMore=!1,d.done=!1,h=function(a){d.oTimeSliderVoService=a,d.oTimeSliderVoService.getReady()!==!1&&(b(function(){g.jslider({from:d.oTimeSliderVoService.getFrom(),to:d.oTimeSliderVoService.getTo(),scale:j(i()),skin:"round_plastic",calculate:function(a){return k(a)},beforeMouseDown:function(a,b){return!1},beforeMouseMove:function(a,b){return!1}}),e.find(".jslider-pointer-from").addClass("jslider-transition"),e.find(".jslider-bg .v").addClass("jslider-transition")},100),m())},m=function(){d.oTimeSliderVoService.getCount()&&d.oTimeSliderVoService.getTotal()&&d.oTimeSliderVoService.getCount()>=d.oTimeSliderVoService.getTotal()&&(d.disableMore=!0)},i=function(){var b=d.oTimeSliderVoService.getFrom(),c=d.oTimeSliderVoService.getTo(),e=c-b,f=e/(a.scaleCount-1),g=[];return _.times(a.scaleCount,function(a){g.push(b+f*a)}),g},j=function(a){var b=[];return _.each(a,function(a){b.push(k(a))}),b},k=function(a){return moment(a).format("HH:mm")},l=function(a,b){g.jslider("value",a,b)},d.more=function(){c.send(c.CONST.CALLSTACK,c.CONST.CLK_MORE),d.$emit("timeSliderDirective.moreClicked",d.oTimeSliderVoService)},d.$on("timeSliderDirective.initialize",function(a,b){h(b),m()}),d.$on("timeSliderDirective.setInnerFromTo",function(a,b){d.oTimeSliderVoService=b,l(b.getInnerFrom(),b.getInnerTo()),m()}),d.$on("timeSliderDirective.enableMore",function(a){d.disableMore=!1}),d.$on("timeSliderDirective.disableMore",function(a){d.disableMore=!0}),d.$on("timeSliderDirective.changeMoreToDone",function(a){d.done=!0}),d.$on("timeSliderDirective.changeDoneToMore",function(a){d.done=!1})}}}])}(),function(){"use strict";pinpointApp.directive("transactionTableDirective",["$window","helpContentTemplate","helpContentService","AnalyticsService",function(a,b,c,d){return{restrict:"EA",replace:!0,templateUrl:"features/transactionTable/transactionTable.html?v="+G_BUILD_TIME,link:function(e,f,g){var h,i,j;e.transactionList=[],e.currentTransaction=null,e.transactionReverse=!1,h=function(){e.transactionList=[]},i=function(a){e.transactionList.length>0?(e.transactionOrderBy="",e.transactionReverse=!1,f.find("table tbody tr:last-child")[0].scrollIntoView(!0)):(e.transactionOrderBy="elapsed",e.transactionReverse=!0),e.transactionList=e.transactionList.concat(a),j(),f.find('[data-toggle="tooltip"]').tooltip("destroy").tooltip()},j=function(){var a=1;angular.forEach(e.transactionList,function(b,c){b.index=a++})},e.traceByApplication=function(a){d.send(d.CONST.CALLSTACK,d.CONST.CLK_TRANSACTION),e.currentTransaction=a,e.$emit("transactionTableDirective.applicationSelected",a)},e.openTransactionView=function(b){a.open("#/transactionView/"+b.agentId+"/"+b.traceId+"/"+b.collectorAcceptTime)},e.transactionOrder=function(a){e.transactionOrderBy===a?e.transactionReverse=!e.transactionReverse:e.transactionReverse=!1,d.send(d.CONST.CALLSTACK,d.CONST.ST_+a.charAt(0).toUpperCase()+a.substring(1),e.transactionReverse?d.CONST.DESCENDING:d.CONST.ASCENDING),e.transactionOrderBy=a},e.$on("transactionTableDirective.appendTransactionList",function(a,b){i(b)}),e.$on("transactionTableDirective.clear",function(a){h()}),e.initTooltipster=function(){ +jQuery(".neloTooltip").tooltipster({content:function(){return b(c.transactionTable.log)},position:"bottom",trigger:"click",interactive:!0})}}}}])}(),function(a){"use strict";pinpointApp.directive("timelineDirective",["AnalyticsService",function(b){return{restrict:"EA",replace:!0,templateUrl:"features/timeline/timeline.html?v="+G_BUILD_TIME,link:function(c,d,e){var f,g,h,i,j,k=["#66CCFF","#FFCCFF","#66CC00","#FFCC33","#669999","#FF9999","#6666FF","#FF6633","#66FFCC","#006666","#FFFF00","#66CCCC","#FFCCCC","#6699FF","#FF99FF","#669900","#FF9933","#66FFFF","#996600","#66FF00"],l=[],m=new InfiniteCircularScroll({scroller:a(d),wrapper:a(d).find("div"),elementHeight:21,template:['
','
','
',"",'','','',"","
","
","
"].join("")});m.renderFunc(function(a,b,d){var e=o(d);a[b==this._selectedRow?"addClass":"removeClass"]("timeline-bar-selected").find("div.clickable-bar").css({width:p(d)+"px",backgroundColor:n(d[c.key.applicationName]),marginLeft:e+"px"}).find("span.nameType").html(d[c.key.applicationName]+"/"+d[c.key.apiType]+"("+(d[c.key.end]-d[c.key.begin])+"ms)"),e>=68?a.find("span.before").show().end().find("span.after").hide().end().find("span.before .startTime").html(q(d)):a.find("span.before").hide().end().find("span.after").show().end().find("span.after .startTime").html(q(d))}),g=function(){var a=[];return angular.forEach(c.timeline.callStack,function(b){b[c.key.isMethod]&&!b[c.key.excludeFromTimeline]&&""!==b[c.key.service]&&a.push(b)}),a},f=function(b){c.timeline=b,c.key=b.callStackIndex,c.barRatio=1e3/(b.callStack[0][c.key.end]-b.callStack[0][c.key.begin]),c.newCallStacks=g(),m.source(c.newCallStacks).viewAreaHeight(a(d).parentsUntil("div.wrapper").height()-70).selectedRow(-1,angular.noop).reset(),c.maxHeight=m.contentsAreaHeight(),i=0,c.$digest()};var n=function(a){var b=l.indexOf(a);return-1==b&&(l.push(a),b=l.length-1),k[b>=k.length?0:b]},o=function(a){return(a[c.key.begin]-c.timeline.callStackStart)*c.barRatio+.9},p=function(a){return(a[c.key.end]-a[c.key.begin])*c.barRatio+.9},q=function(a){return a[c.key.begin]-c.timeline.callStackStart};a(d).on("click",".clickable-bar",function(){b.send(b.CONST.CALLSTACK,b.CONST.CLK_CALL),c.$emit("transactionDetail.selectDistributedCallFlowRow",c.newCallStacks[parseInt(a(this).parent().attr("data-index"))][6])}),a(d).on("mouseenter",".timeline-bar-frame",function(b){a(this).parent().css({"box-shadow":"6px 6px 2px -2px rgba(0,0,0,0.75)","font-weight":"bold"})}),a(d).on("mouseleave",".timeline-bar-frame",function(b){a(this).parent().css({"box-shadow":"none","font-weight":"normal"})}),c.$on("timelineDirective.initialize",function(a,b){f(b)}),c.$on("timelineDirective.resize",function(b){m.resize(a(d).parentsUntil("div.wrapper").height()-70)}),c.$on("timelineDirective.searchCall",function(a,b,d){var e=h(i,-1,b);-1==e?0===i?c.$emit("transactionDetail.timelineSearchCallResult","No call took longer than {time}ms."):(e=h(0,i,b),-1==e?c.$emit("transactionDetail.timelineSearchCallResult","No call took longer than {time}ms."):j(e,"Loop")):j(e,"")}),h=function(a,b,d){return m.searchRow(a,b,function(a){return a[c.key.end]-a[c.key.begin]>=d})},j=function(a,b){m.selectedRow(a,function(a){this.$wrapper.find("div[data-index="+this._selectedRow+"]").removeClass("timeline-bar-selected"),this.$wrapper.find("div[data-index="+a+"]").addClass("timeline-bar-selected")}).moveByRow(a),i=a+1,c.$emit("transactionDetail.timelineSearchCallResult",b)}}}}])}(jQuery),function(){"use strict";pinpointApp.constant("agentChartGroupConfig",{POINTS_TIMESTAMP:0,POINTS_MIN:1,POINTS_MAX:2,POINTS_AVG:3}),pinpointApp.directive("agentChartGroupDirective",["agentChartGroupConfig","$timeout","AgentDaoService","AnalyticsService",function(a,b,c,d){return{restrict:"EA",replace:!0,templateUrl:"features/agentChartGroup/agentChartGroup.html?v="+G_BUILD_TIME,scope:{namespace:"@"},link:function(a,b,e){var f,g,h,i,j,k,l,m;a.showChartGroup=!1,h=function(e){f={Heap:!1,PermGen:!1,CpuLoad:!1},g=null,a.showChartGroup=!0,a.$digest(),c.getAgentStat(e,function(a,b){return a?void console.log("error",a):(f.Heap===!1&&i(b),void(g=b))}),b.tabs({activate:function(b,c){var e=c.newTab.text();return"Heap"==e?(d.send(d.CONST.MIXEDVIEW,d.CONST.CLK_HEAP),void(f.Heap===!1?i(g):a.$broadcast("jvmMemoryChartDirective.resize.forHeap_"+a.namespace))):"PermGen"==e?(d.send(d.CONST.MIXEDVIEW,d.CONST.CLK_PERM_GEN),void(f.PermGen===!1?j(g):a.$broadcast("jvmMemoryChartDirective.resize.forNonHeap_"+a.namespace))):"CpuLoad"==e?(d.send(d.CONST.MIXEDVIEW,d.CONST.CLK_CPU_LOAD),void(f.CpuLoad===!1?k(g):a.$broadcast("cpuLoadChartDirective.resize.forCpuLoad_"+a.namespace))):void 0}}),b.tabs("paging")},i=function(b){f.Heap=!0;var d={id:"heap",title:"Heap",span:"span12",line:[{id:"JVM_MEMORY_HEAP_USED",key:"Used",values:[],isFgc:!1},{id:"JVM_MEMORY_HEAP_MAX",key:"Max",values:[],isFgc:!1},{id:"fgc",key:"FGC",values:[],isFgc:!0}]};a.$broadcast("jvmMemoryChartDirective.initAndRenderWithData.forHeap_"+a.namespace,c.parseMemoryChartDataForAmcharts(d,b),"100%","100%")},j=function(b){f.PermGen=!0;var d={id:"nonheap",title:"PermGen",span:"span12",line:[{id:"JVM_MEMORY_NON_HEAP_USED",key:"Used",values:[],isFgc:!1},{id:"JVM_MEMORY_NON_HEAP_MAX",key:"Max",values:[],isFgc:!1},{id:"fgc",key:"FGC",values:[],isFgc:!0}]};a.$broadcast("jvmMemoryChartDirective.initAndRenderWithData.forNonHeap_"+a.namespace,c.parseMemoryChartDataForAmcharts(d,b),"100%","100%")},k=function(b){f.CpuLoad=!0;var d={id:"cpuLoad",title:"JVM/System Cpu Usage",span:"span12",isAvailable:!1};a.$broadcast("cpuLoadChartDirective.initAndRenderWithData.forCpuLoad_"+a.namespace,c.parseCpuLoadChartDataForAmcharts(d,b),"100%","100%")},l=function(b){f.Heap&&a.$broadcast("jvmMemoryChartDirective.showCursorAt.forHeap_"+a.namespace,b),f.PermGen&&a.$broadcast("jvmMemoryChartDirective.showCursorAt.forNonHeap_"+a.namespace,b),f.CpuLoad&&a.$broadcast("cpuLoadChartDirective.showCursorAt.forCpuLoad_"+a.namespace,b)},m=function(){f.Heap&&a.$broadcast("jvmMemoryChartDirective.resize.forHeap_"+a.namespace),f.PermGen&&a.$broadcast("jvmMemoryChartDirective.resize.forNonHeap_"+a.namespace),f.CpuLoad&&a.$broadcast("cpuLoadChartDirective.resize.forCpuLoad_"+a.namespace)},a.$on("agentChartGroupDirective.initialize."+a.namespace,function(a,b){h(b)}),a.$on("agentChartGroupDirective.showCursorAt."+a.namespace,function(a,b){l(b)}),a.$on("agentChartGroupDirective.resize."+a.namespace,function(a){m()})}}}])}(),function(){"use strict";pinpointApp.directive("sidebarTitleDirective",["$timeout","$rootScope","PreferenceService",function(a,b,c){return{restrict:"E",replace:!0,templateUrl:"features/sidebar/title/sidebarTitle.html?v="+G_BUILD_TIME,scope:{namespace:"@"},link:function(d,e,f){function g(a){if(d.currentAgent=c.getAgentAllStr(),"undefined"==typeof a)return void(d.agentList=[]);var b=[];if(a.serverList)for(var e in a.serverList){var f=a.serverList[e].instanceList;for(var g in f)b.push(g)}d.agentList=b}function h(b,c){d.isWas=angular.isDefined(c)&&angular.isDefined(c.isWas)?c.isWas:!1,d.stImage=b.getImage(),d.stImageShow=!!b.getImage(),d.stTitle=b.getTitle(),d.stImage2=b.getImage2(),d.stImage2Show=!!b.getImage2(),d.stTitle2=b.getTitle2(),a(function(){e.find('[data-toggle="tooltip"]').tooltip("destroy").tooltip()})}function i(){d.currentAgent=c.getAgentAllStr(),d.stImage=!1,d.stImageShow=!1,d.stTitle=!1,d.stImage2=!1,d.stTitle2=!1,d.stImage2Show=!1,d.isWas=!1,d.agentList=[]}d.agentList=[],a(function(){i()}),d.changeAgent=function(){b.$broadcast("changedCurrentAgent",d.currentAgent)},d.$on("sidebarTitleDirective.initialize."+d.namespace,function(a,b,c){h(b,c),g(c)}),d.$on("sidebarTitleDirective.empty."+d.namespace,function(a){i()})}}}])}(),function(){"use strict";pinpointApp.directive("filterInformationDirective",["$filter","$base64",function(a,b){return{restrict:"EA",replace:!0,templateUrl:"features/sidebar/filter/filterInformation.html?v="+G_BUILD_TIME,scope:{namespace:"@"},link:function(c,d,e){var f,g;f=function(d){if(g(),oServerMapFilterVo.getRequestUrlPattern()&&(c.urlPattern=b.decode(d.getRequestUrlPattern())),c.includeException=v.getIncludeException()?"Failed Only":"Success + Failed",angular.isNumber(d.getResponseFrom())&&oServerMapFilterVo.getResponseTo()){var e=[];e.push(a("number")(d.getResponseFrom())),e.push("ms"),e.push("~"),"max"===d.getResponseTo()?e.push("30,000+"):e.push(a("number")(d.getResponseTo())),e.push("ms"),c.responseTime=e.join(" ")}var f=d.getFromAgentName(),h=d.getToAgentName();f||h?c.agentFilterInfo=(f||"all")+" -> "+(h||"all"):c.agentFilterInfo=!1},g=function(){c.urlPattern="none",c.responseTime="none",c.includeException="none"},c.$on("filterInformationDirective.initialize."+c.namespace,function(a,b){f(b)})}}}])}(),function(){"use strict";pinpointApp.directive("distributedCallFlowDirective",["$filter","$timeout","CommonAjaxService",function(a,b,c){return{restrict:"E",replace:!0,templateUrl:"features/distributedCallFlow/distributedCallFlow.html?v=${buildTime}",scope:{namespace:"@"},link:function(d,e,f){var g,h,i,j,k,l,m,n,o,p,q,r,s,t,u;window.callStacks=[],o=function(a){var b=0,c=0,d="#";for(b=0,c=0;bb;d+=("00"+(c>>8*b++&255).toString(16)).slice(-2));return d},k=function(a,b,c,d,e){var f=[];c=c.replace(/&/g,"&").replace(//g,">");var g=h.getItemById(e.id);i=g.agent?g.agent:i;var j=o(i),k=h.getIdxById(e.id),l="dcf-popover";if(g.hasException?l+=" has-exception":g.isMethod||(l+=" not-method"),f.push('
'),f.push("
"),f.push(""),window.callStacks[k+1]&&window.callStacks[k+1].indent>window.callStacks[k].indent?e._collapsed?f.push("  "):f.push("  "):f.push("  "),g.hasException)f.push(' ');else if(g.isMethod){var m=parseInt(g.methodType);switch(m){case 100:f.push(' ');break;case 200:f.push(' ');break;case 900:f.push(' ')}}else"SQL"===g.method?f.push(' '):f.push(' ');return f.push(c),f.push("
"),f.join("")},l=function(a){var b=!0;if(angular.isDefined(a.parent)&&null!==a.parent)for(var c=window.callStacks[a.parent];c;)c._collapsed&&(b=!1),c=window.callStacks[c.parent];return b},q=function(a,b,c,d,e){var f=[];return f.push('
'),f.push(c),f.push("
"),f.join("")},r=function(a,b,c,d,e){if(c&&0!==c.length){var f=[];f.push('');var g=h.getItemById(e.id),i=g.logButtonName;return f.push(i),f.push(""),f.join("")}},n=function(b,c,d,e,f){return a("date")(d,"HH:mm:ss sss")},p=function(a,b,c,d,e){if(angular.isUndefined(c)||null===c||""===c||0===c)return"";var f;return f="#5bc0de",""},m=function(a,b){var c=[],d=100/(b[0][a.end]-b[0][a.begin]);return angular.forEach(b,function(b,e){c.push({id:"id_"+e,parent:b[a.parentId]?b[a.parentId]-1:null,indent:b[a.tab],method:b[a.title],argument:b[a.arguments],execTime:b[a.begin]>0?b[a.begin]:null,gapMs:b[a.gap],timeMs:b[a.elapsedTime],timePer:b[a.elapsedTime]?(b[a.end]-b[a.begin])*d+.9:null,"class":b[a.simpleClassName],methodType:b[a.methodType],apiType:b[a.apiType],agent:b[a.agent],applicationName:b[a.applicationName],hasException:b[a.hasException],isMethod:b[a.isMethod],logLink:b[a.logPageUrl],logButtonName:b[a.logButtonName],isFocused:b[a.isFocused],execMilli:b[a.executionMilliseconds],execPer:b[a.elapsedTime]&&b[a.executionMilliseconds]?parseInt(b[a.executionMilliseconds].replace(/,/gi,""))/parseInt(b[a.elapsedTime].replace(/,/gi,""))*100:0})}),c},j=function(a){window.callStacks=m(a.callStackIndex,a.callStack);var f={enableCellNavigation:!0,enableColumnReorder:!0,enableTextSelectionOnCells:!0,topPanelHeight:30,rowHeight:25};h=new Slick.Data.DataView({inlineFilters:!0}),h.beginUpdate(),h.setItems(window.callStacks),h.setFilter(l),h.getItemMetadata=function(a){var b=h.getItemByIdx(a),c={cssClasses:""};return b.hasException===!0&&(c.cssClasses+=" error-point"),b.isFocused===!0&&(c.cssClasses+=" entry-point"),null!==b.execTime&&(c.cssClasses+=" id_"+(a+1)),c},h.endUpdate();var i=[{id:"method",name:"Method",field:"method",width:400,formatter:k},{id:"argument",name:"Argument",field:"argument",width:300,formatter:q},{id:"exec-time",name:"Start Time",field:"execTime",width:90,formatter:n},{id:"gap-ms",name:"Gap(ms)",field:"gapMs",width:70,cssClass:"right-align"},{id:"time-ms",name:"Exec(ms)",field:"timeMs",width:70,cssClass:"right-align"},{id:"time-per",name:"Exec(%)",field:"timePer",width:100,formatter:p},{id:"exec-milli",name:"Self(ms)",field:"execMilli",width:75,cssClass:"right-align"},{id:"class",name:"Class",field:"class",width:120},{id:"api-type",name:"API",field:"apiType",width:90},{id:"agent",name:"Agent",field:"agent",width:130},{id:"application-name",name:"Application",field:"applicationName",width:150}];g=new Slick.Grid(e.get(0),h,i,f),g.setSelectionModel(new Slick.RowSelectionModel);var j=!0,o=!1;g.onClick.subscribe(function(a,d){var f;if($(a.target).hasClass("toggle")&&(f=h.getItem(d.row),f&&(f._collapsed?f._collapsed=!1:f._collapsed=!0,h.updateItem(f.id,f)),a.stopImmediatePropagation()),$(a.target).hasClass("sql")){f=h.getItem(d.row);var g=h.getItem(d.row+1),i="sql="+encodeURIComponent(f.argument);angular.isDefined(g)&&"SQL-BindValue"===g.method?(i+="&bind="+encodeURIComponent(g.argument),c.getSQLBind("/sqlBind.pinpoint",i,function(a){$("#customLogPopup").find("h4").html("SQL").end().find("div.modal-body").html('

Binded SQL

'+a+'
'+a.replace(/\t\t/g,"")+'

Original SQL

'+f.argument+'
'+f.argument.replace(/\t\t/g,"")+'

SQL Bind Value

'+g.argument+'
'+g.argument+"
").end().modal("show"),prettyPrint()})):($("#customLogPopup").find("h4").html("SQL").end().find("div.modal-body").html('

Original SQL

'+f.argument+'
'+f.argument.replace(/\t\t/g,"")+"
").end().modal("show"),prettyPrint())}o||(o=b(function(){j&&e.find(".dcf-popover").popover("hide"),j=!0,o=!1},300))}),g.onDblClick.subscribe(function(a,b){j=!1,$(a.target).popover("toggle")}),g.onCellChange.subscribe(function(a,b){h.updateItem(b.item.id,b.item)}),g.onActiveCellChanged.subscribe(function(a,b){d.$emit("distributedCallFlowDirective.rowSelected."+d.namespace,b.grid.getDataItem(b.row))}),s=function(a){var b=h.getItem(a+1);return!(!b||a!==b.parent)},g.onKeyDown.subscribe(function(a,b){var c=h.getItem(b.row);if(37==a.which)if(s(b.row))c._collapsed=!0,h.updateItem(c.id,c);else{var d=h.getItem(b.row-1);d&&g.setActiveCell(b.row-1,0)}else if(39==a.which){if(c._collapsed)c._collapsed=!1;else{var e=h.getItem(b.row+1);e&&g.setActiveCell(b.row+1,0)}h.updateItem(c.id,c)}}),h.onRowCountChanged.subscribe(function(a,b){g.updateRowCount(),g.render()}),h.onRowsChanged.subscribe(function(a,b){g.invalidateRows(b.rows),g.render()})},$("#customLogPopup").on("click","button",function(){var a=document.createRange();a.selectNode($(this).parent().next().get(0)),window.getSelection().addRange(a);try{document.execCommand("copy")}catch(b){console.log("unable to copy :",b)}window.getSelection().removeAllRanges()}),d.$on("distributedCallFlowDirective.initialize."+d.namespace,function(a,b){j(b)}),d.$on("distributedCallFlowDirective.resize."+d.namespace,function(a){g&&g.resizeCanvas()}),d.$on("distributedCallFlowDirective.selectRow."+d.namespace,function(a,b){var c=b-1;g.setSelectedRows([c]),g.setActiveCell(c,0),g.scrollRowToTop(c)}),d.$on("distributedCallFlowDirective.searchCall."+d.namespace,function(a,b,c){var e=t(b,c);-1==e?c>0?(u(t(b,0)),d.$emit("transactionDetail.calltreeSearchCallResult","Loop")):d.$emit("transactionDetail.calltreeSearchCallResult","No call took longer than {time}ms."):(u(e),d.$emit("transactionDetail.calltreeSearchCallResult",""))}),t=function(a,b){for(var c=0,d=-1,e=0;e=a){if(c==b){d=e;break}c++}return d},u=function(a){g.setSelectedRows([a]),g.setActiveCell(a,0),g.scrollRowIntoView(a,!0)}}}}])}(),function(){"use strict";pinpointApp.constant("responseTimeChartDirectiveConfig",{myColors:["#2ca02c","#3c81fa","#f8c731","#f69124","#f53034"]}),pinpointApp.directive("responseTimeChartDirective",["responseTimeChartDirectiveConfig","$timeout","AnalyticsService","PreferenceService",function(a,b,c,d){var e=d.getResponseTypeColor();return{template:"
",replace:!0,restrict:"EA",scope:{namespace:"@"},link:function(a,f,g){var h,i,j,k,l,m,n,o;j=function(){h="responseTimeId-"+a.namespace,f.attr("id",h)},k=function(a,b){f.css("width",a||"100%"),f.css("height",b||"150px")},l=function(d,e,f){b(function(){var b={type:"serial",theme:"none",dataProvider:d,startDuration:0,valueAxes:[{gridAlpha:.1,usePrefixes:!0}],graphs:[{balloonText:e?"[[category]] filtering":"",colorField:"color",labelText:"[[value]]",fillAlphas:.3,alphaField:"alpha",lineAlpha:.8,lineColor:"#787779",type:"column",valueField:"count"}],categoryField:"responseTime",categoryAxis:{gridAlpha:0}};f&&(b.chartCursor={fullWidth:!0,categoryBalloonAlpha:.7,cursorColor:"#000000",cursorAlpha:0,zoomable:!1}),i=AmCharts.makeChart(h,b),i.addListener("clickGraphItem",function(b){c.send(c.CONST.MAIN,c.CONST.CLK_RESPONSE_GRAPH),"Error"==b.item.category&&a.$emit("responseTimeChartDirective.showErrorTransacitonList",b.item.category),e&&a.$emit("responseTimeChartDirective.itemClicked."+a.namespace,b.item.serialDataItem.dataContext)}),e&&(i.addListener("clickGraphItem",m),i.addListener("rollOverGraphItem",function(a){a.event.target.style.cursor="pointer"}))})},m=function(b){a.$emit("responseTimeChartDirective.itemClicked."+a.namespace,b.item.serialDataItem.dataContext)},n=function(a){i.dataProvider=a,b(function(){i.validateData()})},o=function(a){angular.isUndefined(a)&&(a=d.getResponseTypeFormat());var b=[],c=[.2,.3,.4,.6,.6],f=0;for(var g in a)b.push({responseTime:g,count:a[g],color:e[f],alpha:c[f++]});return b},a.$on("responseTimeChartDirective.initAndRenderWithData."+a.namespace,function(a,b,c,d,e,f){j(),k(c,d),l(o(b),e,f)}),a.$on("responseTimeChartDirective.updateData."+a.namespace,function(a,b){n(o(b))})}}}])}(),function(){"use strict";pinpointApp.constant("loadChartDirectiveConfig",{}),pinpointApp.directive("loadChartDirective",["loadChartDirectiveConfig","$timeout","AnalyticsService","PreferenceService",function(a,b,c,d){var e=d.getResponseTypeColor();return{template:'
',replace:!0,restrict:"EA",scope:{namespace:"@"},link:function(a,d,f){var g,h,i,j,k,l,m,n,o,p;j=function(){g="loadId-"+a.namespace,d.attr("id",g)},k=function(a,b){a&&d.css("width",a),b&&d.css("height",b)},l=function(a,d){b(function(){var b={type:"serial",theme:"light",legend:{autoMargins:!1,align:"right",borderAlpha:0,equalWidths:!0,horizontalGap:0,verticalGap:0,markerSize:10,useGraphSettings:!1,valueWidth:0,spacing:0,markerType:"circle",position:"top"},dataProvider:a,valueAxes:[{stackType:"regular",axisAlpha:1,usePrefixes:!0,gridAlpha:.1}],categoryField:"time",categoryAxis:{startOnAxis:!0,gridPosition:"start",labelFunction:function(a,b,c){var d=a.indexOf("-"),e=a.indexOf(" ");return a.substring(d+1,e)+"\n"+a.substring(e+1)}},balloon:{fillAlpha:1,borderThickness:1},graphs:[{balloonText:"[[title]] : [[value]]",fillAlphas:.2,fillColors:e[0],lineAlpha:.8,lineColor:"#787779",title:h[0],type:"step",legendColor:e[0],valueField:h[0]},{balloonText:"[[title]] : [[value]]",fillAlphas:.3,fillColors:e[1],lineAlpha:.8,lineColor:"#787779",title:h[1],type:"step",legendColor:e[1],valueField:h[1]},{balloonText:"[[title]] : [[value]]",fillAlphas:.4,fillColors:e[2],lineAlpha:.8,lineColor:"#787779",title:h[2],type:"step",legendColor:e[2],valueField:h[2]},{balloonText:"[[title]] : [[value]]",fillAlphas:.6,fillColors:e[3],lineAlpha:.8,lineColor:"#787779",title:h[3],type:"step",legendColor:e[3],valueField:h[3]},{balloonText:"[[title]] : [[value]]",fillAlphas:.6,fillColors:e[4],lineAlpha:.8,lineColor:"#787779",title:h[4],type:"step",legendColor:e[4],valueField:h[4]}]};d&&(b.chartCursor={cursorPosition:"mouse",categoryBalloonAlpha:.7,categoryBalloonDateFormat:"H:NN"}),i=AmCharts.makeChart(g,b),i.addListener("clickGraph",function(a){c.send(c.CONST.MAIN,c.CONST.CLK_LOAD_GRAPH)})})},o=function(a,c){b(function(){var b={type:"serial",pathToImages:"./components/amcharts/images/",theme:"light",dataProvider:a,valueAxes:[{stackType:"regular",axisAlpha:0,gridAlpha:0,labelsEnabled:!1}],categoryField:"time",categoryAxis:{startOnAxis:!0,gridPosition:"start",labelFunction:function(a,b,c){return moment(a).format("HH:mm")}},chartScrollbar:{graph:"AmGraph-1"},graphs:[{id:"AmGraph-1",fillAlphas:.2,fillColors:e[0],lineAlpha:.8,lineColor:"#787779",type:"step",valueField:h[0]},{id:"AmGraph-2",fillAlphas:.3,fillColors:e[1],lineAlpha:.8,lineColor:"#787779",type:"step",valueField:h[1]},{id:"AmGraph-3",fillAlphas:.4,fillColors:e[2],lineAlpha:.8,lineColor:"#787779",type:"step",valueField:h[2]},{id:"AmGraph-4",fillAlphas:.6,fillColors:e[3],lineAlpha:.8,lineColor:"#787779",type:"step",valueField:h[3]},{id:"AmGraph-5",fillAlphas:.6,fillColors:e[4],lineAlpha:.8,lineColor:"#787779",type:"step",valueField:h[4]}]};c&&(b.chartCursor={avoidBalloonOverlapping:!1}),i=AmCharts.makeChart(g,b),i.addListener("changed",function(a){})})},p=function(){d.append("

No Data

")},n=function(a){angular.isDefined(i)&&i.clear(),d.empty(),b(function(){0===a.length?p():l(a,!0)})},m=function(a){function b(a){for(var b in c)if(moment(a).format("YYYY-MM-DD HH:mm")===c[b].time)return b;return-1}if(angular.isUndefined(a))return[];h=[];for(var c=[],d=0;d-1)c[i][e.key]=g[1];else{var j={time:moment(g[0]).format("YYYY-MM-DD HH:mm")};j[e.key]=g[1],c.push(j)}}}return c},a.$on("loadChartDirective.initAndRenderWithData."+a.namespace,function(a,b,c,d,e){j(),k(c,d);var f=m(b);0===f.length?p():l(f,e)}),a.$on("loadChartDirective.updateData."+a.namespace,function(a,b){n(m(b))}),a.$on("loadChartDirective.initAndSimpleRenderWithData."+a.namespace,function(a,b,c,d,e){j(),k(c,d);var f=m(b);0===f.length?p():o(f,e)})}}}])}(),function(){"use strict";angular.module("pinpointApp").directive("jvmMemoryChartDirective",["$timeout",function(a){return{template:"
",replace:!0,restrict:"E",scope:{namespace:"@"},link:function(b,c,d){var e,f,g,h,i,j,k;g=function(){e="multipleValueAxesId-"+b.namespace,c.attr("id",e)},h=function(a,b){a&&c.css("width",a),b&&c.css("height",b)},i=function(c){var d={type:"serial",theme:"light",autoMargins:!1,marginTop:10,marginLeft:70,marginRight:70,marginBottom:30,legend:{useGraphSettings:!0,autoMargins:!1,align:"right",position:"top",valueWidth:70},usePrefixes:!0,dataProvider:c,valueAxes:[{id:"v1",gridAlpha:0,axisAlpha:1,position:"right",title:"Full GC (ms)",minimum:0},{id:"v2",gridAlpha:0,axisAlpha:1,position:"left",title:"Memory (bytes)",minimum:0}],graphs:[{valueAxis:"v2",balloonText:"[[value]]B",legendValueText:"[[value]]B",lineColor:"rgb(174, 199, 232)",title:"Max",valueField:"Max",fillAlphas:0,connect:!1},{valueAxis:"v2",balloonText:"[[value]]B",legendValueText:"[[value]]B",lineColor:"rgb(31, 119, 180)",fillColor:"rgb(31, 119, 180)",title:"Used",valueField:"Used",fillAlphas:.4,connect:!1},{valueAxis:"v1",balloonFunction:function(a,b){var c=a.serialDataItem.dataContext,d=c.FGCTime+"ms",e=c.FGCCount;return e>1&&(d+=" ("+e+")"),d},legendValueText:"[[value]]ms",lineColor:"#FF6600",title:"FGC",valueField:"FGCTime",type:"column",fillAlphas:.3,connect:!1}],chartCursor:{categoryBalloonAlpha:.7,fullWidth:!0,cursorAlpha:.1},categoryField:"time",categoryAxis:{axisColor:"#DADADA",startOnAxis:!0,gridPosition:"start",labelFunction:function(a,b,c){return a.substring(a.indexOf(" ")+1)}}};a(function(){f=AmCharts.makeChart(e,d),f.chartCursor.addListener("changed",function(a){b.$emit("jvmMemoryChartDirective.cursorChanged."+b.namespace,a)})})},j=function(a){a?(angular.isNumber(a)&&(a=f.dataProvider[a].time),f.chartCursor.showCursorAt(a)):f.chartCursor.hideCursor()},k=function(){f&&(f.validateNow(),f.validateSize())},b.$on("jvmMemoryChartDirective.initAndRenderWithData."+b.namespace,function(a,b,c,d){g(),h(c,d),i(b)}),b.$on("jvmMemoryChartDirective.showCursorAt."+b.namespace,function(a,b){j(b)}),b.$on("jvmMemoryChartDirective.resize."+b.namespace,function(a){k()})}}}])}(),function(){"use strict";angular.module("pinpointApp").directive("cpuLoadChartDirective",["$timeout",function(a){return{template:"
",replace:!0,restrict:"E",scope:{namespace:"@"},link:function(b,c,d){var e,f,g,h,i,j,k;g=function(){e="multipleValueAxesId-"+b.namespace,c.attr("id",e)},h=function(a,b){a&&c.css("width",a),b&&c.css("height",b)},i=function(c){var d={type:"serial",theme:"light",autoMargins:!1,marginTop:10,marginLeft:70,marginRight:70,marginBottom:30,legend:{useGraphSettings:!0,autoMargins:!0,align:"right",position:"top",valueWidth:70},usePrefixes:!0,dataProvider:c,valueAxes:[{id:"v1",gridAlpha:0,axisAlpha:1,position:"left",title:"Cpu Usage (%)",maximum:100,minimum:0}],graphs:[{valueAxis:"v1",balloonText:"[[value]]%",legendValueText:"[[value]]%",lineColor:"rgb(31, 119, 180)",fillColor:"rgb(31, 119, 180)",title:"JVM",valueField:"jvmCpuLoad",fillAlphas:.4,connect:!1},{valueAxis:"v1",balloonText:"[[value]]%",legendValueText:"[[value]]%",lineColor:"rgb(174, 199, 232)",fillColor:"rgb(174, 199, 232)",title:"System",valueField:"systemCpuLoad",fillAlphas:.4,connect:!1},{valueAxis:"v1",showBalloon:!1,lineColor:"#FF6600",title:"Max",valueField:"maxCpuLoad",fillAlphas:0,visibleInLegend:!1}],chartCursor:{categoryBalloonAlpha:.7,fullWidth:!0,cursorAlpha:.1},categoryField:"time",categoryAxis:{axisColor:"#DADADA",startOnAxis:!0,gridPosition:"start",labelFunction:function(a,b,c){return moment(a).format("HH:mm:ss")}}};a(function(){f=AmCharts.makeChart(e,d),f.chartCursor.addListener("changed",function(a){b.$emit("cpuLoadChartDirective.cursorChanged."+b.namespace,a)})})},j=function(a){a?(angular.isNumber(a)&&(a=f.dataProvider[a].time),f.chartCursor.showCursorAt(a)):f.chartCursor.hideCursor()},k=function(){f&&(f.validateNow(),f.validateSize())},b.$on("cpuLoadChartDirective.initAndRenderWithData."+b.namespace,function(a,b,c,d){g(),h(c,d),i(b)}),b.$on("cpuLoadChartDirective.showCursorAt."+b.namespace,function(a,b){j(b)}),b.$on("cpuLoadChartDirective.resize."+b.namespace,function(a){k()})}}}])}(),function(){"use strict";angular.module("pinpointApp").directive("tpsChartDirective",["$timeout",function(a){return{template:"
",replace:!0,restrict:"E",scope:{namespace:"@"},link:function(b,c,d){var e,f,g,h,i,j,k;g=function(){e="multipleValueAxesId-"+b.namespace,c.attr("id",e)},h=function(a,b){a&&c.css("width",a),b&&c.css("height",b)},i=function(c){var d={type:"serial",theme:"light",autoMargins:!1,marginTop:10,marginLeft:70,marginRight:70,marginBottom:30,legend:{useGraphSettings:!0,autoMargins:!0,align:"right",position:"top",valueWidth:70},usePrefixes:!0,dataProvider:c,valueAxes:[{stackType:"regular",gridAlpha:0,axisAlpha:1,position:"left",title:"TPS",minimum:0}],graphs:[{balloonText:"Sampled Continuation : [[value]]",legendValueText:"[[value]]",lineColor:"rgb(214, 141, 8)",fillColor:"rgb(214, 141, 8)",title:"S.C",valueField:"sampledContinuationTps",fillAlphas:.4,connect:!0},{balloonText:"Sampled New : [[value]]",legendValueText:"[[value]]",lineColor:"rgb(252, 178, 65)",fillColor:"rgb(252, 178, 65)",title:"S.N",valueField:"sampledNewTps",fillAlphas:.4,connect:!0},{balloonText:"Unsampled Continuation : [[value]]",legendValueText:"[[value]]",lineColor:"rgb(90, 103, 166)",fillColor:"rgb(90, 103, 166)",title:"U.C",valueField:"unsampledContinuationTps",fillAlphas:.4,connect:!0},{balloonText:"Unsampled New : [[value]]",legendValueText:"[[value]]",lineColor:"rgb(160, 153, 255)",fillColor:"rgb(160, 153, 255)",title:"U.N",valueField:"unsampledNewTps",fillAlphas:.4,connect:!0},{balloonText:"Total : [[value]]",legendValueText:"[[value]]",lineColor:"rgba(31, 119, 180, 0)",fillColor:"rgba(31, 119, 180, 0)",valueField:"totalTps",fillAlphas:.4,connect:!0}],chartCursor:{categoryBalloonAlpha:.7,fullWidth:!0,cursorAlpha:.1},categoryField:"time",categoryAxis:{axisColor:"#DADADA",startOnAxis:!0,gridPosition:"start",labelFunction:function(a,b,c){return moment(a).format("HH:mm:ss")}}};a(function(){f=AmCharts.makeChart(e,d),f.chartCursor.addListener("changed",function(a){b.$emit("tpsChartDirective.cursorChanged."+b.namespace,a)})})},j=function(a){a?(angular.isNumber(a)&&(a=f.dataProvider[a].time),f.chartCursor.showCursorAt(a)):f.chartCursor.hideCursor()},k=function(){f&&(f.validateNow(),f.validateSize())},b.$on("tpsChartDirective.initAndRenderWithData."+b.namespace,function(a,b,c,d){g(),h(c,d),i(b)}),b.$on("tpsChartDirective.showCursorAt."+b.namespace,function(a,b){j(b)}),b.$on("tpsChartDirective.resize."+b.namespace,function(a){k()})}}}])}(),function(){"use strict";pinpointApp.directive("loadingDirective",["$timeout","$templateCache","$compile",function(a,b,c){return{restrict:"A",scope:{showLoading:"=loadingDirective",loadingMessage:"@"},link:function(a,d,e){a.loadingMessage||(a.loadingMessage="Please Wait...");var f=b.get(e.loadingDirective);"static"===d.css("position")&&d.css("position","relative"),d.append(c(f)(a))}}}])}(),function(a){"use strict";pinpointApp.constant("ConfigurationConfig",{menu:{GENERAL:"general",ALARM:"alarm",HELP:"help"}}),pinpointApp.controller("ConfigurationCtrl",["$scope","$element","ConfigurationConfig","AnalyticsService",function(b,c,d,e){var f=c.find(".modal-body");b.descriptionOfCurrentTab="Set your option",b.currentTab=d.menu.GENERAL;for(var g in d.menu)!function(a){var c="is"+a.substring(0,1).toUpperCase()+a.substring(1).toLowerCase();b[c]=function(){return b.currentTab==d.menu[a]}}(g);a(c).on("hidden.bs.modal",function(a){b.currentTab=d.menu.GENERAL, +b.$broadcast("configuration.alarm.initClose")}),b.setCurrentTab=function(a){if(b.currentTab!=a)switch(b.currentTab=a,a){case d.menu.GENERAL:e.send(e.CONST.MAIN,e.CONST.CLK_GENERAL),f.css("background-color","#e9eaed"),b.descriptionOfCurrentTab="Set your option",b.$broadcast("general.configuration.show");break;case d.menu.ALARM:e.send(e.CONST.MAIN,e.CONST.CLK_ALARM),f.css("background-color","#e9eaed"),b.descriptionOfCurrentTab="Set your alarm rules",b.$broadcast("alarmUserGroup.configuration.show");break;case d.menu.HELP:e.send(e.CONST.MAIN,e.CONST.CLK_HELP),f.css("background-color","#FFF"),b.descriptionOfCurrentTab=""}},b.$on("configuration.show",function(){e.send(e.CONST.MAIN,e.CONST.CLK_CONFIGURATION),c.modal("show")})}])}(jQuery),function(a){"use strict";pinpointApp.controller("HelpCtrl",["$scope","$element",function(a,b){a.enHelpList=[{title:"Quick start guide",link:"https://github.com/naver/pinpoint/blob/master/quickstart/README.md"},{title:"Technical Overview of Pinpoint",link:"https://github.com/naver/pinpoint/wiki/Technical-Overview-Of-Pinpoint"},{title:"Using Pinpont with Docker",link:"http://yous.be/2015/05/05/using-pinpoint-with-docker/"},{title:"Notes on Jetty Plugin for Pinpoint ",link:"https://github.com/cijung/Docs/blob/master/JettyPluginNotes.md"},{title:"About Alarm",link:"https://github.com/naver/pinpoint/blob/master/doc/alarm.md#alarm"}],a.koHelpList=[{title:"Pinpoint 개발자가 작성한 Pinpoint 기술문서",link:"http://helloworld.naver.com/helloworld/1194202"},{title:"소개 및 설치 가이드",link:"http://dev2.prompt.co.kr/33"},{title:"Pinpoint 사용 경험",link:"http://www.barney.pe.kr/blog/category/development/page/2/"},{title:"설치 가이드 동영상 강좌 1",link:"https://www.youtube.com/watch?v=hrvKaEaDEGs"},{title:"설치 가이드 동영상 강좌 2",link:"https://www.youtube.com/watch?v=fliKPGHGXK4"},{title:"AWS Ubuntu 14.04 설치 가이드 ",link:"http://lky1001.tistory.com/132"},{title:"Alarm 가이드",link:"https://github.com/naver/pinpoint/blob/master/doc/alarm.md#alarm-1"}]}])}(jQuery),function(a){"use strict";pinpointApp.constant("GeneralConfig",{menu:{GENERAL:"general",ALRAM:"alram"}}),pinpointApp.controller("GeneralCtrl",["GeneralConfig","$scope","$rootScope","$element","$document","PreferenceService","AnalyticsService","helpContentService",function(a,b,c,d,e,f,g,h){function i(a){g.send(g.CONST.MAIN,g.CONST.CLK_GENERAL_SET_FAVORITE),f.addFavorite(a),b.$apply(function(){b.favoriteList=f.getFavoriteList(),c.$broadcast("navbarDirective.changedFavorite")})}function j(a){if(!a.id)return a.text;var b=a.text.split("@");if(b.length>1){var c=e.get(0).createElement("img");return c.src="/images/icons/"+b[1]+".png",c.style.height="25px",c.style.paddingRight="3px",c.outerHTML+b[0]}return a.text}function k(){var a=!1;l.select2({placeholder:"Select an application.",searchInputPlaceholder:"Input your application name.",allowClear:!1,formatResult:j,formatSelection:j,escapeMarkup:function(a){return a}}).on("select2-selecting",function(b){a=!0}).on("select2-close",function(b){a===!0&&setTimeout(function(){i(l.select2("val"))},0),a=!1})}d.find("span.general-warning").html(h.configuration.general.warning),d.find("div.favorite-empty").html(h.configuration.general.empty),b.$on("general.configuration.show",function(){}),b.depthList=f.getDepthList(),b.periodTypes=f.getPeriodTypes(),b.caller=f.getCaller(),b.callee=f.getCallee(),b.period=f.getPeriod(),b.favoriteList=f.getFavoriteList(),b.changeCaller=function(){g.send(g.CONST.MAIN,g.CONST.CLK_GENERAL_SET_DEPTH,b.caller),f.setCaller(b.caller)},b.changeCallee=function(){g.send(g.CONST.MAIN,g.CONST.CLK_GENERAL_SET_DEPTH,b.callee),f.setCallee(b.callee)},b.changePeriod=function(){g.send(g.CONST.MAIN,g.CONST.CLK_GENERAL_SET_PERIOD,b.period),f.setPeriod(b.period)},b.removeFavorite=function(a){g.send(g.CONST.MAIN,g.CONST.CLK_GENERAL_SET_FAVORITE),f.removeFavorite(a),b.favoriteList=f.getFavoriteList(),c.$broadcast("navbarDirective.changedFavorite")};var l=d.find(".applicationList");b.$on("configuration.general.applications.set",function(a,c){b.applications=c,k()})}])}(jQuery),function(a){"use strict";pinpointApp.directive("alarmUserGroupDirective",["$rootScope","$timeout","helpContentTemplate","helpContentService","AlarmUtilService","AlarmBroadcastService","AnalyticsService","globalConfig",function(b,c,d,e,f,g,h,i){return{restrict:"EA",replace:!0,templateUrl:"features/configuration/alarm/alarmUserGroup.html?v="+G_BUILD_TIME,scope:!0,link:function(b,d){function e(c){""!==r&&a("#"+b.prefix+r).removeClass("selected"),a("#"+b.prefix+c).addClass("selected"),r=c}function j(){f.unsetFilterBackground(x),B.val("")}function k(a){f.showLoading(z,!1),p(f.extractID(a),a.find("span.contents").html())}function l(a){a.find("span.right").remove().end().find("span.remove").show().end().removeClass("remove"),t=!1}function m(a){t!==!0&&(e(f.extractID(a)),g.sendReloadWithUserGroupID(a.find("span.contents").html()))}function n(a){f.sendCRUD("createUserGroup",{id:a},function(b){v.push({number:b.number,id:a}),i.userId?g.sendInit(a,{userId:i.userId,name:i.userName,department:i.userDepartment}):g.sendInit(a),c(function(){e(b.number)}),f.setTotal(y,v.length),f.hide(z,C)},function(a){},A)}function o(a,b){f.sendCRUD("updateUserGroup",{number:a,id:b},function(c){for(var d=0;d0?(c(function(){e(v[0].number)}),g.sendReloadWithUserGroupID(v[0].id)):g.sendSelectionEmpty()}),f.setTotal(y,v.length),f.hide(z),t=!1},function(a){},A)}function q(a,d){f.sendCRUD("getUserGroupList",angular.isUndefined(d)||""===d?{userId:i.userId||""}:{userGroupId:d},function(d){u=!0,v=b.userGroupList=d,f.setTotal(y,v.length),f.hide(z),v.length>0&&(a&&(g.sendInit(v[0].id),r=v[0].number),c(function(){e(r)})),i.userId&&g.sendLoadPinpointUser(i.userDepartment)},function(a){},A)}b.prefix="alarmUserGroup_";var r="",s=!0,t=!1,u=!1,v=b.userGroupList=[],w=d,x=w.find(".wrapper"),y=w.find(".total"),z=w.find(".some-loading"),A=w.find(".some-alert"),B=w.find("div.filter-input input"),C=(w.find("div.filter-input button.trash"),w.find(".some-edit-content")),D=C.find("input"),E=C.find(".title-message"),F=a(['','','',""].join("")),G=w.find(".some-list-content ul");G.on("click",function(c){var d=a(c.toElement||c.target),e=d.get(0).tagName.toLowerCase(),f=d.parents("li");if("button"===e)d.hasClass("edit")?b.onUpdate(c):d.hasClass("confirm-remove")?k(f):d.hasClass("confirm-cancel")&&revmoeCancel(f);else if("span"===e)if(d.hasClass("remove")){if(t===!0)return;t=!0,f.addClass("remove").find("span.remove").hide().end().append(F)}else d.hasClass("contents")?m(f):d.hasClass("glyphicon-edit")?b.onUpdate(c):d.hasClass("glyphicon-remove")?l(f):d.hasClass("glyphicon-ok")&&k(f);else"li"===e&&m(d)}),b.onRefresh=function(){t!==!0&&(h.send(h.CONST.MAIN,h.CONST.CLK_ALARM_REFRESH_USER_GROUP),j(),f.showLoading(z,!1),q(!1,a.trim(B.val())))},b.onCreate=function(){t!==!0&&(s=!0,E.html("Create new alarm group"),D.val(""),f.show(C),D.focus())},b.onUpdate=function(b){if(t!==!0){s=!1;var c=a(b.toElement||b.target).parents("li"),d=f.extractID(c),e=c.find("span.contents").html();E.html('Input new name of "'+e+'".'),D.val(e).prop("id","updateUserGroup_"+d),f.show(C),D.focus().select()}},b.onSearch=function(){if(t!==!0){var b=a.trim(B.val());if(0!==b.length&&b.length<3)return f.showLoading(z,!1),void f.showAlert(A,"You must enter at least three characters.");h.send(h.CONST.MAIN,h.CONST.CLK_ALARM_FILTER_USER_GROUP),f.showLoading(z,!1),q(!1,b)}},b.onInputEdit=function(a){13==a.keyCode?b.onApplyEdit():27==a.keyCode&&(b.onCancelEdit(),a.stopPropagation())},b.onCancelEdit=function(){f.hide(C)},b.onApplyEdit=function(){var b=a.trim(D.val());return""===b?(f.showLoading(z,!0),void f.showAlert(A,"Input group id.")):(f.showLoading(z,!0),f.hasDuplicateItem(v,function(a){return a.id==b})&&s===!0?void f.showAlert(A,"Exist a same group name in the lists."):void(s?(h.send(h.CONST.MAIN,h.CONST.CLK_ALARM_CREATE_USER_GROUP),n(b)):o(f.extractID(D),b)))},b.onCloseAlert=function(){f.closeAlert(A,z)},b.$on("alarmUserGroup.configuration.show",function(){u===!1&&q(!0)})}}}])}(jQuery),function(a){"use strict";pinpointApp.directive("alarmGroupMemberDirective",["$rootScope","$timeout","helpContentTemplate","helpContentService","AlarmUtilService","AlarmBroadcastService","AnalyticsService",function(b,c,d,e,f,g,h){return{restrict:"EA",replace:!0,templateUrl:"features/configuration/alarm/alarmGroupMember.html?v="+G_BUILD_TIME,scope:!0,link:function(b,c){function d(a){f.showLoading(t,!1),m(f.extractID(a))}function e(a){a.find("span.right").remove().end().find("span.remove").show().end().removeClass("remove"),A=!1}function i(a){var c=0;if(b.groupMemberList!=B)for(c=0;c0}function p(){return""===y?(f.showLoading(t,!1),f.showAlert(u,"Not selected User Group.",!0),!1):!0}var q=a(c),r=q.find(".wrapper"),s=q.find(".total"),t=q.find(".some-loading"),u=q.find(".some-alert"),v=q.find("div.filter-input input"),w=q.find("div.filter-input button.trash"),x=a(['','','',""].join("")),y="",z=!1,A=!1,B=b.groupMemberList=[],C=q.find(".some-list-content ul");C.on("click",function(b){var c=a(b.toElement||b.target),f=c.get(0).tagName.toLowerCase(),g=c.parents("li");if("button"==f)c.hasClass("confirm-cancel")?e(g):c.hasClass("confirm-remove")&&d(g);else if("span"==f)if(c.hasClass("remove")){if(A===!0)return;A=!0,g.addClass("remove").find("span.remove").hide().end().append(x)}else c.hasClass("glyphicon-remove")?e(g):c.hasClass("glyphicon-ok")&&d(g)}),b.prefix="alarmGroupMember_",b.onRefresh=function(){A!==!0&&p()!==!1&&(h.send(h.CONST.MAIN,h.CONST.CLK_ALARM_REFRESH_USER),v.val(""),f.showLoading(t,!1),n())},b.onInputFilter=function(c){return A!==!0?13==c.keyCode?void b.onFilterGroup():void(a.trim(v.val()).length>=3?w.removeClass("disabled"):w.addClass("disabled")):void 0},b.onFilterGroup=function(){if(A!==!0&&p()!==!1){var c=a.trim(v.val());if(0!==c.length&&c.length<3)return f.showLoading(t,!1),void f.showAlert(u,"You must enter at least three characters.");if(h.send(h.CONST.MAIN,h.CONST.CLK_ALARM_FILTER_USER),""===c)b.groupMemberList.length!=B.length&&(b.groupMemberList=B,f.unsetFilterBackground(r)),w.addClass("disabled");else{for(var d=[],e=(B.length,0);ed;d++)if(I[d].userId==a){b=I[d];break}return b}function l(a,c,d,e,g){var h={userId:a,name:c,department:d,phoneNumber:e,email:g};f.sendCRUD("createPinpointUser",h,function(a){f.hide(t,x),v.val("userName"),w.val(c),b.onSearch()},function(a){},u)}function m(a,b,c,d,e){var h={userId:a,name:b,department:c,phoneNumber:d,email:e};f.sendCRUD("updatePinpointUser",h,function(i){for(var j=0;j()[\]\.,;:\s@\"]+(\.[^<>()[\]\.,;:\s@\"]+)*)|(\".+\"))@(([^<>()[\]\.,;:\s@\"]+\.)+[^<>()[\]\.,;:\s@\"]{2,})$/i;return b.test(a)}function q(a){var b=/^\d+$/;return b.test(a)}var r=a(c),s=(r.find(".some-list-header button"),r.find(".wrapper"),r.find(".empty-list"),r.find(".total")),t=r.find(".some-loading"),u=r.find(".some-alert"),v=r.find("select"),w=r.find("div.filter-input input"),x=r.find(".some-edit-content"),y=x.find("input[name=userID]"),z=x.find("input[name=name]"),A=x.find("input[name=department]"),B=x.find("input[name=phone]"),C=x.find("input[name=email]"),D=x.find(".title-message"),E=a(['','','',""].join("")),F=!1,G=!0,H=!1,I=b.pinpointUserList=[],J=r.find(".some-list-content ul");J.on("click",function(c){var f=a(c.toElement||c.target),g=f.get(0).tagName.toLowerCase(),h=f.parents("li");if("button"==g)f.hasClass("confirm-cancel")?j(h):f.hasClass("confirm-cancel")?e(h):f.hasClass("move")?d(h):f.hasClass("edit-user")&&b.onUpdate(c);else if("span"==g)if(f.hasClass("remove")){if(H===!0)return;H=!0,h.addClass("remove").find("span.remove").hide().end().find("button.move").addClass("disabled").end().append(E)}else f.hasClass("contents")||(f.hasClass("glyphicon-edit")?b.onUpdate(c):f.hasClass("glyphicon-remove")?j(h):f.hasClass("glyphicon-ok")?e(h):f.hasClass("glyphicon-chevron-left")&&d(h))}),b.isAllowedCreate=i.editUserInfo,b.onCreate=function(){H!==!0&&(G=!0,D.html("Create new pinpoint user"),y.prop("disabled",""),y.val(""),z.val(""),A.val(""),B.val(""),C.val(""),f.show(x),y.focus())},b.onUpdate=function(b){if(H!==!0){G=!1;var c=a(b.toElement||b.target).parents("li"),d=k(f.extractID(c));D.html("Update pinpoint user data."),y.prop("disabled","disabled"),y.val(d.userId),z.val(d.name),A.val(d.department),B.val(d.phoneNumber),C.val(d.email),f.show(x),z.focus().select()}},b.onInputSearch=function(a){return H!==!0&&13==a.keyCode?void b.onSearch():void 0},b.onSearch=function(){if(H!==!0){var b=v.val(),c=a.trim(w.val());if(0!==c.length&&c.length<3)return f.showLoading(t,!1),void f.showAlert(u,"You must enter at least three characters.");h.send(h.CONST.MAIN,h.CONST.CLK_ALARM_FILTER_PINPOINT_USER),f.showLoading(t,!1);var d={};d[b]=c,o(d)}},b.onInputEdit=function(a){13==a.keyCode?b.onApplyEdit():27==a.keyCode&&(b.onCancelEdit(),a.stopPropagation())},b.onCancelEdit=function(){f.hide(x)},b.onApplyEdit=function(){var b=a.trim(y.val()),c=a.trim(z.val()),d=a.trim(A.val()),e=a.trim(B.val()),g=a.trim(C.val());return""===b||""===c?(f.showLoading(t,!0),void f.showAlert(u,"You must input user id and user name.")):(f.showLoading(t,!0),f.hasDuplicateItem(I,function(a){return a.userId==b})&&G===!0?void f.showAlert(u,"Exist a same user id in the lists."):q(e)===!1?void f.showAlert(u,"You can only input numbers."):p(g)===!1?void f.showAlert(u,"Invalid email format."):void(G?(h.send(h.CONST.MAIN,h.CONST.CLK_ALARM_CREATE_PINPOINT_USER),l(b,c,d,e,g)):m(b,c,d,e,g)))},b.onCloseAlert=function(){f.closeAlert(u,t)},b.$on("alarmPinpointUser.configuration.load",function(a,b){F===!1&&o(""===b?{}:{department:b})}),b.$on("alarmPinpointUser.configuration.addUserCallback",function(a){f.hide(t)})}}}])}(jQuery),function(a){"use strict";pinpointApp.directive("alarmRuleDirective",["$rootScope","$document","$timeout","AlarmUtilService","AnalyticsService","TooltipService",function(b,c,d,e,f,g){return{restrict:"EA",replace:!0,templateUrl:"features/configuration/alarm/alarmRule.html?v="+G_BUILD_TIME,scope:!0,link:function(b,h){function i(){O===!0&&u.find("tr.remove").each(function(){k(a(this))}),b.onCancelEdit(),e.unsetFilterBackground(v),z.val(""),A.val("")}function j(a){e.showLoading(x,!1),r(e.extractID(a))}function k(a){a.removeClass("remove").find("span.removeTemplate").remove().end().find("span.remove").show().end().find("td").removeClass("remove"),O=!1}function l(){a('[data-toggle="alarm-popover"]').popover()}function m(a){if(!a.id)return a.text;var b=a.text.split("@");if(b.length>1){var d=c.get(0).createElement("img");return d.src="/images/icons/"+b[1]+".png",d.style.height="25px",d.style.paddingRight="3px",d.outerHTML+b[0]}return a.text}function n(){D.select2({placeholder:"Select an application.",searchInputPlaceholder:"Input your application name.",allowClear:!1,formatResult:m,formatSelection:m,escapeMarkup:function(a){return a}}).on("change",function(a){}),E.select2({searchInputPlaceholder:"Input your rule name.",placeholder:"Select an rule.",allowClear:!1,formatResult:m,formatSelection:m,escapeMarkup:function(a){return a}}).on("change",function(a){})}function o(a){for(var b,c=P.length,d=0;c>d;d++)if(P[d].ruleId==a){b=P[d];break}return b}function p(a,b,c,f,g,h,i){var j={applicationId:a,serviceType:b,userGroupId:L,checkerName:c,threshold:f,smsSend:g,emailSend:h,notes:i};e.sendCRUD("createRule",j,function(a){j.ruleId=a.ruleId,P.push(j),e.setTotal(w,P.length),d(function(){l()}),e.hide(x,C)},function(a){},y)}function q(a,b,c,f,g,h,i,j){var k={ruleId:a,applicationId:b,serviceType:c,userGroupId:L,checkerName:f,threshold:parseInt(g,10),smsSend:h,emailSend:i,notes:j};e.sendCRUD("updateRule",k,function(k){for(var m=0;m1||e.sendCRUD("getRuleSet",{},function(a){for(var c=0;c','','',""].join("")),L="",M=!1,N=!0,O=!1,P=b.ruleList=[],Q=u.find(".some-list-content .wrapper tbody");Q.on("click",function(c){var d=a(c.toElement||c.target),e=d.get(0).tagName.toLowerCase(),f=d.parents("tr");if("button"==e)d.hasClass("edit")?b.onUpdate(c):d.hasClass("confirm-remove")?j(f):d.hasClass("confirm-cancel")&&k(f);else if("span"==e)if(d.hasClass("remove")){if(O===!0)return;O=!0,f.addClass("remove").find("td:last-child").addClass("remove").find("span.remove").hide().end().append(K)}else d.hasClass("glyphicon-edit")?b.onUpdate(c):d.hasClass("glyphicon-remove")?k(f):d.hasClass("glyphicon-ok")&&j(f)}),g.init("alarmRules"),b.ruleSets=[{text:""}],b.onRefresh=function(){O!==!0&&(f.send(f.CONST.MAIN,f.CONST.CLK_ALARM_REFRESH_RULE),i(),e.showLoading(x,!1),s(!1))},b.onCreate=function(){O!==!0&&(N=!0,J.html("Create new pinpoint user"),D.select2("val",""),E.select2("val",""),F.val("0"),G.prop("checked",""),H.prop("checked",""),I.val(""),e.show(C))},b.onUpdate=function(b){if(O!==!0){N=!1;var c=a(b.toElement||b.target).parents("tr"),d=e.extractID(c),f=o(d);J.html("Update rule data."),D.select2("val",f.applicationId+"@"+f.serviceType).parent().prop("id","updateRule_"+d),E.select2("val",f.checkerName),F.val(f.threshold),G.prop("checked",f.smsSend),H.prop("checked",f.emailSend),I.val(f.notes),e.show(C)}},b.onInputFilter=function(c){return O!==!0?13==c.keyCode?void b.onFilterGroup():void(a.trim(z.val()).length>=3||a.trim(A.val()).length?B.removeClass("disabled"):B.addClass("disabled")):void 0},b.onFilterGroup=function(){if(O!==!0){var c=a.trim(z.val()),d=a.trim(A.val());if(0!==c.length&&c.length<3||0!==d.length&&d.length<3)return e.showLoading(x,!1),void e.showAlert(y,"You must enter at least three characters.");if(f.send(f.CONST.MAIN,f.CONST.CLK_ALARM_FILTER_RULE),""===c&&""===d)b.ruleList.length!=P.length&&(b.ruleList=P,e.unsetFilterBackground(v)),B.addClass("disabled");else{for(var g=[],h=(P.length,0);h
',chartDirective:Handlebars.compile('')},css:{borderWidth:2,height:180,navbarHeight:70,titleHeight:30},sumChart:{width:260,height:120},otherChart:{width:120,height:60},"const":{MIN_Y:10}}),pinpointApp.controller("RealtimeChartCtrl",["RealtimeChartCtrlConfig","$scope","$element","$rootScope","$compile","$timeout","$window","globalConfig","$location","RealtimeWebsocketService","AnalyticsService","TooltipService",function(b,c,d,e,f,g,h,i,j,k,l,m){function n(){p("sum")===!1&&(Q.append(f(b.template.chartDirective({width:b.sumChart.width,height:b.sumChart.height,namespace:"sum",chartColor:"sumChartColor",xAxisCount:O,showExtraInfo:"true",timeoutMaxCount:N}))(c)),$.sum=-1)}function o(){angular.isDefined($.sum)?($={},$.sum=-1):$={}}function p(a){return angular.isDefined($[a])}function q(d){var e=a(b.template.agentChart).append(f(b.template.chartDirective({width:b.otherChart.width,height:b.otherChart.height,namespace:Z.length,chartColor:"agentChartColor",xAxisCount:O,showExtraInfo:"false",timeoutMaxCount:N}))(c));T.append(e),w(d,Z.length),Z.push(e)}function r(){var a=k.open({onopen:function(a){D()},onmessage:function(a){s(a)},onclose:function(a){c.$apply(function(){H()})},ondelay:function(){k.close()},retry:function(){c.retryConnection()}});a&&n()}function s(a){switch(U.hide(),a[b.keys.TYPE]){case b.values.PING:k.send(fa);break;case b.values.RESPONSE:var c=a[b.keys.RESULT];if(c[b.keys.APPLICATION_NAME]!==Y)return;var d=c[b.keys.ACTIVE_THREAD_COUNTS],e=A(d);B(e),t(d,e,c[b.keys.TIME_STAMP])}}function t(a,d,e){var f=Math.max(C(),b["const"].MIN_Y),g=0,h=!0;for(var i in a)v(i,g),a[i][b.keys.CODE]===P?(h=!1,c.$broadcast("realtimeChartDirective.onData."+$[i],a[i][b.keys.STATUS],e,f,h)):c.$broadcast("realtimeChartDirective.onError."+$[i],a[i],e,f),y(g),g++;c.$broadcast("realtimeChartDirective.onData.sum",d,e,f,h),S.html(g)}function u(a){return ga[b.keys.PARAMETERS][b.keys.APPLICATION_NAME]=a,JSON.stringify(ga)}function v(a,b){p(a)===!1&&(x(b)?w(a,b):q(a)),z(b,a)}function w(a,b){$[a]=b}function x(a){return Z.length>a}function y(a){Z[a].show()}function z(a,b){Z[a].find("div").html(b)}function A(a){var c=[0,0,0,0];for(var d in a)a[d][b.keys.CODE]===P&&jQuery.each(a[d][b.keys.STATUS],function(a,b){c[a]+=b});return c}function B(a){_.push(a.reduce(function(a,b){return a+b})),_.length>O&&_.shift()}function C(){return d3.max(_,function(a){return a})}function D(){k.send(u(Y))}function E(){k.isOpened()===!1?r():D(),da=!0}function F(){da=!1,k.stopReceive(u(""))}function G(){e.$broadcast("realtimeChartDirective.clear.sum"),a.each(Z,function(a,b){e.$broadcast("realtimeChartDirective.clear."+a),b.hide()})}function H(){U.css("background-color","rgba(200, 200, 200, 0.9)"),U.find("h4").css("color","red").html("Closed connection.

Select node again."),U.find("button").show(),U.show()}function I(){U.css("background-color","rgba(138, 171, 136, 0.5)"),U.find("h4").css("color","blue").html("Waiting Connection..."),U.find("button").hide(),U.show()}function J(){d.animate({bottom:-ea,left:0},500,function(){V.removeClass("glyphicon-chevron-down").addClass("glyphicon-chevron-up")})}function K(){d.animate({bottom:0,left:0},500,function(){V.removeClass("glyphicon-chevron-up").addClass("glyphicon-chevron-down")})}function L(){d.innerWidth(d.parent().width()-b.css.borderWidth+"px")}function M(){W.css("color",aa?"red":"")}d=a(d);var N=10,O=10,P=0,Q=d.find("div.agent-sum-chart"),R=d.find("div.agent-sum-chart div:first-child span:first-child"),S=d.find("div.agent-sum-chart div:first-child span:last-child"),T=d.find("div.agent-chart-list"),U=d.find(".connection-message"),V=d.find(".handle .glyphicon"),W=d.find(".glyphicon-pushpin"),X="",Y="",Z=[],$={},_=[0],aa=!0,ba=!1,ca=!1,da=!0,ea=b.css.height,fa=function(){var a={};return a[b.keys.TYPE]=b.values.PONG,JSON.stringify(a)}(),ga=function(){var a={};return a[b.keys.TYPE]=b.values.REQUEST,a[b.keys.COMMAND]=b.values.ACTIVE_THREAD_COUNT,a[b.keys.PARAMETERS]={},a}(),ha=null;m.init("realtime"),c.sumChartColor=["rgba(44, 160, 44, 1)","rgba(60, 129, 250, 1)","rgba(248, 199, 49, 1)","rgba(246, 145, 36, 1)"],c.agentChartColor=["rgba(44, 160, 44, .8)","rgba(60, 129, 250, .8)","rgba(248, 199, 49, .8)","rgba(246, 145, 36, .8)"],c.requestLabelNames=["1s","3s","5s","Slow"],c.bInitialized=!1,U.hide(),R.html(""),S.html("0"),a(document).on("visibilitychange",function(){switch(document.visibilityState){case"hidden":ha=g(function(){k.close(),ha=null},6e4);break;case"visible":null!==ha?g.cancel(ha):c.retryConnection(),ha=null}}),c.$on("realtimeChartController.close",function(){J();var a=da;c.closePopup(),da=a,M()}),c.$on("realtimeChartController.initialize",function(a,b,d,e){if((aa!==!0||X!==e)&&/^\/main/.test(j.path())!==!1&&(ba=angular.isUndefined(b)?!1:b,d=angular.isUndefined(d)?"":d,X=e,R.html(Y=d),i.useRealTime!==!1&&da!==!1)){if(ba===!1)return void J();o(),L(),c.bInitialized=!0,K(),c.closePopup(),R.html(Y=d),I(),E(),M()}}),c.retryConnection=function(){I(),E()},c.pin=function(){aa=!aa,M()},c.resizePopup=function(){l.send(l.CONST.MAIN,l.CONST.TG_REALTIME_CHART_RESIZE),ca?(ea=b.css.height,d.css({height:b.css.height+"px",bottom:"0px"}),T.css("height","150px")):(ea=h.innerHeight-b.css.navbarHeight,d.css({height:ea+"px",bottom:"0px"}),T.css("height",ea-b.css.titleHeight+"px")),ca=!ca},c.toggleRealtime=function(){ba!==!1&&(da===!0?(l.send(l.CONST.MAIN,l.CONST.CLK_REALTIME_CHART_HIDE),J(),F(),G(),da=!1):(l.send(l.CONST.MAIN,l.CONST.CLK_REALTIME_CHART_SHOW),K(),I(),E(),da=!0))},c.closePopup=function(){F(),G(),U.hide(),R.html(Y=""),S.html("0")},a(h).on("resize",function(){L()})}])}(jQuery),function(){"use strict";pinpointApp.controller("MainCtrl",["filterConfig","$scope","$timeout","$routeParams","locationService","NavbarVoService","$window","SidebarTitleVoService","filteredMapUtilService","$rootElement","AnalyticsService",function(a,b,c,d,e,f,g,h,i,j,k){k.send(k.CONST.MAIN_PAGE);var l,m,n,o,p,q;b.hasScatter=!1,g.htoScatter={},m=!0,n=!1,b.sidebarLoading=!0,c(function(){l=new f,d.application&&l.setApplication(d.application),d.readablePeriod&&l.setReadablePeriod(d.readablePeriod),d.queryEndDateTime&&l.setQueryEndDateTime(d.queryEndDateTime),l.isRealtime()?b.$broadcast("navbarDirective.initialize.realtime.andReload",l):angular.isDefined(d.application)&&angular.isUndefined(d.readablePeriod)&&angular.isUndefined(d.readablePeriod)?b.$broadcast("navbarDirective.initialize.andReload",l):(g.$routeParams=d, +l.autoCalculateByQueryEndDateTimeAndReadablePeriod(),b.$broadcast("navbarDirective.initialize",l),b.$broadcast("scatterDirective.initialize",l),b.$broadcast("serverMapDirective.initialize",l))},500),o=function(){return e.path().split("/")[1]||"main"},p=function(){var a="/"+o()+"/"+l.getApplication()+"/";l.isRealtime()?(a+=l.getPeriodType(),g.$routeParams={application:l.getApplication(),readablePeriod:l.getPeriodType()}):a+=l.getReadablePeriod()+"/"+l.getQueryEndDateTime(),e.path()!==a&&("/main"===e.path()?e.path(a).replace():e.skipReload().path(a).replace(),g.$routeParams={application:l.getApplication(),readablePeriod:l.getReadablePeriod().toString(),queryEndDateTime:l.getQueryEndDateTime().toString()},b.$$phase||b.$apply())},q=function(a,b){var c=i.getFilteredMapUrlWithFilterVo(l,a,b);g.open(c,"")},b.getMainContainerClass=function(){return n?"no-data":""},b.getInfoDetailsClass=function(){var a=[];return b.hasScatter&&a.push("has-scatter"),b.hasFilter&&a.push("has-filter"),a.join(" ")},b.$on("serverMapDirective.hasData",function(a){n=!1,b.sidebarLoading=!1}),b.$on("serverMapDirective.hasNoData",function(a){n=!0,b.sidebarLoading=!1}),b.$on("navbarDirective.changed",function(a,c){n=!1,l=c,p(l),g.htoScatter={},b.hasScatter=!1,b.sidebarLoading=!0,b.$broadcast("sidebarTitleDirective.empty.forMain"),b.$broadcast("nodeInfoDetailsDirective.hide"),b.$broadcast("linkInfoDetailsDirective.hide"),b.$broadcast("scatterDirective.initialize",l),b.$broadcast("serverMapDirective.initialize",l),b.$broadcast("sidebarTitleDirective.empty.forMain")}),b.$on("serverMapDirective.passingTransactionResponseToScatterChart",function(a,c){b.$broadcast("scatterDirective.initializeWithNode",c)}),b.$on("serverMapDirective.nodeClicked",function(a,c,d,e,f,g){m=!0;var i=new h;i.setImageType(e.serviceType),e.isWas===!0?(b.hasScatter=!0,i.setTitle(e.applicationName),b.$broadcast("scatterDirective.initializeWithNode",e)):e.unknownNodeGroup?(i.setTitle(e.serviceType.replace("_"," ")),b.hasScatter=!1):(i.setTitle(e.applicationName),b.hasScatter=!1),b.hasFilter=!1,b.$broadcast("sidebarTitleDirective.initialize.forMain",i,e),b.$broadcast("nodeInfoDetailsDirective.initialize",c,d,e,f,l,null,g),b.$broadcast("linkInfoDetailsDirective.hide")}),b.$on("serverMapDirective.linkClicked",function(a,c,d,e,f){m=!1;var g=new h;e.unknownLinkGroup?g.setImageType(e.sourceInfo.serviceType).setTitle("Unknown Group from "+e.sourceInfo.applicationName):g.setImageType(e.sourceInfo.serviceType).setTitle(e.sourceInfo.applicationName).setImageType2(e.targetInfo.serviceType).setTitle2(e.targetInfo.applicationName),b.hasScatter=!1;var j=i.findFilterInNavbarVo(e.sourceInfo.applicationName,e.sourceInfo.serviceType,e.targetInfo.applicationName,e.targetInfo.serviceType,l);j?(b.hasFilter=!0,b.$broadcast("filterInformationDirective.initialize.forMain",j.oServerMapFilterVoService)):b.hasFilter=!1,b.$broadcast("sidebarTitleDirective.initialize.forMain",g),b.$broadcast("nodeInfoDetailsDirective.hide"),b.$broadcast("linkInfoDetailsDirective.initialize",c,d,e,f,l)}),b.$on("serverMapDirective.openFilteredMap",function(a,b,c){q(b,c)}),b.$on("linkInfoDetailsDirective.openFilteredMap",function(a,b,c){q(b,c)}),b.$on("linkInfoDetailsDirective.openFilterWizard",function(a,c,d){b.$broadcast("serverMapDirective.openFilterWizard",c,d)}),b.$on("linkInfoDetailsDirective.ResponseSummary.barClicked",function(a,b){q(b)}),b.$on("linkInfoDetailsDirective.showDetailInformationClicked",function(a,c,d){b.hasScatter=!1;var e=new h;e.setImageType(d.sourceInfo.serviceType).setTitle(d.sourceInfo.applicationName).setImageType2(d.targetInfo.serviceType).setTitle2(d.targetInfo.applicationName),b.$broadcast("sidebarTitleDirective.initialize.forMain",e),b.$broadcast("nodeInfoDetailsDirective.hide")}),b.$on("nodeInfoDetailDirective.showDetailInformationClicked",function(a,c,d){b.hasScatter=!1;var e=new h;e.setImageType(d.serviceType),d.unknownNodeGroup?(e.setTitle(d.serviceType.replace("_"," ")),b.hasScatter=!1):(e.setTitle(d.applicationName),b.hasScatter=!1),b.$broadcast("sidebarTitleDirective.initialize.forMain",e),b.$broadcast("linkInfoDetailsDirective.hide")}),b.loadingOption={hideTip:"init"},b.$watch("loadingOption.hideTip",function(a){if("init"!=a&&g.localStorage){var b=new Date;b.setDate(b.getDate()+30),g.localStorage.setItem("__HIDE_LOADING_TIP",a?b.valueOf():"-")}})}])}(),function(){"use strict";pinpointApp.controller("InspectorCtrl",["$scope","$timeout","$routeParams","locationService","NavbarVoService","AnalyticsService",function(a,b,c,d,e,f){f.send(f.CONST.INSPECTOR_PAGE);var g,h,i,j,k,l;b(function(){g=new e,c.application&&g.setApplication(c.application),c.readablePeriod&&g.setReadablePeriod(c.readablePeriod),c.queryEndDateTime&&g.setQueryEndDateTime(c.queryEndDateTime),c.agentId&&g.setAgentId(c.agentId),g.autoCalculateByQueryEndDateTimeAndReadablePeriod(),a.$emit("navbarDirective.initializeWithStaticApplication",g),a.$emit("agentListDirective.initialize",g)},500),a.$on("navbarDirective.changed",function(a,b){g=b,j()}),a.$on("agentListDirective.agentChanged",function(b,c){h=c,g.setAgentId(c.agentId),l()&&j(),h&&a.$emit("agentInfoDirective.initialize",g,h)}),i=function(){var a=d.path().split("/");return a[1]||"inspector"},j=function(){var b=k();l()&&("/inspector"===d.path()||d.skipReload().path(b).replace(),a.$emit("navbarDirective.initializeWithStaticApplication",g),a.$emit("agentListDirective.initialize",g))},k=function(){var a="/"+i()+"/"+g.getApplication()+"/"+g.getReadablePeriod()+"/"+g.getQueryEndDateTime();return g.getAgentId()&&(a+="/"+g.getAgentId()),a},l=function(){var a=k();return d.path()!==a}}])}(),function(){"use strict";pinpointApp.constant("TransactionListConfig",{applicationUrl:"/transactionmetadata.pinpoint",MAX_FETCH_BLOCK_SIZE:100}),pinpointApp.controller("TransactionListCtrl",["TransactionListConfig","$scope","$location","$routeParams","$rootScope","$timeout","$window","$http","webStorage","TimeSliderVoService","TransactionDaoService","AnalyticsService","helpContentService",function(a,b,c,d,e,f,g,h,i,j,k,l,m){l.send(l.CONST.TRANSACTION_LIST_PAGE);var n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H;f(function(){n=1,o=0,b.transactionDetailUrl="index.html#/transactionDetail",b.sidebarLoading=!0;var a=E(),c=F(),e=!angular.isUndefined(d.transactionInfo);if(e){var h=d.transactionInfo.lastIndexOf("-"),i=d.transactionInfo.lastIndexOf("-",h-1);s=[d.transactionInfo.substring(0,i),d.transactionInfo.substring(i+1,h),d.transactionInfo.substring(h+1)]}a&&c?(p=A(g.name),B(p.applicationName)?(q=C(p),G(e)):H(m.transactionList.openError.noData.replace(/\{\{application\}\}/,p.applicationName))):e===!1?H(m.transactionList.openError.noParent):(p=D(),q=[[s[1],s[2],s[0]]],G(e)),f(function(){$("#main-container").layout({north__minSize:20,north__size:(window.innerHeight-40)/2,center__maskContents:!0})},100)},100),H=function(a){alert(a),g.location.replace(g.location.href.replace("transactionList","main"))},G=function(a){r=new j,r.setTotal(q.length),t(a)},E=function(){return angular.isDefined(g.opener)},F=function(){if(angular.isUndefined(g.opener)||null===g.opener)return!1;var a=g.opener.$routeParams;if(angular.isDefined(d)&&angular.isDefined(a))if("realtime"===a.readablePeriod){if(angular.equals(d.application,a.application))return!0}else if(angular.equals(d.application,a.application)&&angular.equals(d.readablePeriod,a.readablePeriod)&&angular.equals(d.queryEndDateTime,a.queryEndDateTime))return!0;return!1},A=function(a){var b=a.split("|");return 4===b.length?{applicationName:b[0],type:b[1],min:b[2],max:b[3]}:{applicationName:b[0],nXFrom:b[1],nXTo:b[2],nYFrom:b[3],nYTo:b[4]}},D=function(){return{applicationName:d.application.split("@")[0],nXFrom:parseInt(s[1])-1e3,nXTo:parseInt(s[1])+1e3,nYFrom:0,nYTo:0}},B=function(a){return angular.isDefined(g.opener.htoScatter[a])},C=function(a){var b=g.opener.htoScatter[a.applicationName];return a.type?b.getDataByRange(a.type,a.min,a.max):b.getDataByXY(a.nXFrom,a.nXTo,a.nYFrom,a.nYTo)},w=function(a){b.$emit("transactionTableDirective.appendTransactionList",a.metadata)},x=function(){if(!q)return g.alert("Query failed - Query parameter cache deleted.\n\nPossibly due to scatter chart being refreshed."),!1;for(var b=[],c=o,d=0;c0&&b.push("&"),b=b.concat(["I",d,"=",q[c][0]]),b=b.concat(["&T",d,"=",q[c][1]]),b=b.concat(["&R",d,"=",q[c][2]]),o++;return n++,b},u=function(){y(x(),function(c){return 0===c.metadata.length?(b.$emit("timeSliderDirective.disableMore"),b.$emit("timeSliderDirective.changeMoreToDone"),!1):(c.metadata.length