From 9949b9d203fcbeca1a09126c7b15ea3e0ba1fb66 Mon Sep 17 00:00:00 2001
From: huoyo <1729913829@qq.com>
Date: Tue, 8 Nov 2022 23:24:28 +0800
Subject: [PATCH] add refresh
---
src/main/resources/kotime-en.html | 314 ++++++++++++++++--------------
src/main/resources/kotime.html | 210 +++++++++++---------
2 files changed, 285 insertions(+), 239 deletions(-)
diff --git a/src/main/resources/kotime-en.html b/src/main/resources/kotime-en.html
index 8fac6a0..ff339e6 100644
--- a/src/main/resources/kotime-en.html
+++ b/src/main/resources/kotime-en.html
@@ -18,151 +18,9 @@
var d = 180;
var globalThreshold = globalThresholdValue;
var globalNeedLogin = globalNeedLoginValue;
- var globalToken = sessionStorage.getItem("kotimeToken")
- $(document).ready(function () {
- let globalIsLogin = false;
- $.ajaxSettings.async = false;
- $.get('contextPath/koTime/isLogin?token='+globalToken, function (data) {
- globalIsLogin = data['isLogin']==1?true:false;
- });
- $.ajaxSettings.async = true;
- if (globalNeedLogin==true && globalIsLogin == false) {
- UIkit.modal(document.getElementById("modal-login")).show();
- return;
- };
- $.get('contextPath/koTime/getConfig?token='+globalToken, function (data) {
- let versionNoticeEnable = data['versionNotice'];
- if (versionNoticeEnable) {
- loadLatestVersion();
- }
- let exceptionEnable = data['exceptionEnable'];
+ var globalToken = sessionStorage.getItem("kotimeToken");
+ let globalIsLogin = false;
- let exceptionEnableDom = document.getElementById('exceptionEnable');
- exceptionEnableDom.checked = exceptionEnable;
-
-
- let kotimeEnable = data['enable'];
- let kotimeEnableDom = document.getElementById('kotimeEnable');
- kotimeEnableDom.checked = kotimeEnable;
-
- let apiTip = document.getElementById('apiTip');
- apiTip.innerHTML = kotimeEnable==true?"We can see interfaces after invoking methods!":"KoTime switch was closed!";
-
-
- let threshold = data['threshold'];
- let timeThresholdDom = document.getElementById('timeThreshold');
- timeThresholdDom.value = threshold;
-
- let logEnable = data['logEnable'];
- let logEnableDom = document.getElementById('logEnable');
- logEnableDom.checked = logEnable;
-
- let language = data['language'];
- $("#languageSwitch").val(language)
- });
-
- document.getElementById('kotimeEnable').onclick = function(){
- $.ajax({type:'POST',url:'contextPath/koTime/updateConfig?token='+globalToken,data:JSON.stringify({enable:document.getElementById('kotimeEnable').checked}),dataType:'json', headers: {'Content-Type': 'application/json' }});
- };
-
- document.getElementById('exceptionEnable').onclick = function(){
- $.ajax({type:'POST',url:'contextPath/koTime/updateConfig?token='+globalToken,data:JSON.stringify({exceptionEnable:document.getElementById('exceptionEnable').checked}),dataType:'json', headers: {'Content-Type': 'application/json' }});
-
- };
-
- document.getElementById('logEnable').onclick = function(){
- $.ajax({type:'POST',url:'contextPath/koTime/updateConfig?token='+globalToken,data:JSON.stringify({logEnable:document.getElementById('logEnable').checked}),dataType:'json', headers: {'Content-Type': 'application/json' }});
- };
-
- document.getElementById('languageSwitch').onchange = function(){
- let selectedObj = document.getElementById('languageSwitch');
- $.ajax({type:'POST',url:'contextPath/koTime/updateConfig?token='+globalToken,data:JSON.stringify({language:selectedObj.options[selectedObj.selectedIndex].value}),dataType:'json', headers: {'Content-Type': 'application/json' }});
- };
-
-
- document.getElementById("timeThresholdYes").onclick = function(){
- $.ajax({type:'POST',url:'contextPath/koTime/updateConfig?token='+globalToken,data:JSON.stringify({threshold:document.getElementById('timeThreshold').value}),dataType:'json', headers: {'Content-Type': 'application/json' }});
- };
-
- $.get('contextPath/koTime/getStatistic?token='+globalToken, function (data) {
- let totalNum = data['totalNum'];
- let systemTotalNum = document.getElementById("systemTotalNum");
- systemTotalNum.innerHTML=totalNum;
-
- let normalNum = data['normalNum'];
- let systemNormalNum = document.getElementById("systemNormalNum");
- systemNormalNum.innerHTML=normalNum;
-
- let delayNum = data['delayNum'];
- let systemDelayNum = document.getElementById("systemDelayNum");
- systemDelayNum.innerHTML=delayNum;
-
- let avgRunTime = data['avgRunTime'];
- let systemAvgRunTime = document.getElementById("systemAvgRunTime");
- systemAvgRunTime.innerHTML=avgRunTime;
- if (avgRunTime>globalThreshold) {
- document.getElementById("systemAvgRunTime").style.color='#cc0c0c';
- }else {
- document.getElementById("systemAvgRunTime").style.color='#29da93';
- };
-
- let maxRunTime = data['maxRunTime'];
- let systemMaxRunTime = document.getElementById("systemMaxRunTime");
- systemMaxRunTime.innerHTML=maxRunTime;
- if (maxRunTime>globalThreshold) {
- document.getElementById("systemMaxRunTime").style.color='#cc0c0c';
- }else {
- document.getElementById("systemMaxRunTime").style.color='#29da93';
- };
-
-
- let minRunTime = data['minRunTime'];
- let systemMinRunTime = document.getElementById("systemMinRunTime");
- systemMinRunTime.innerHTML=minRunTime;
- if (minRunTime>globalThreshold) {
- document.getElementById("systemMinRunTime").style.color='#cc0c0c';
- }else {
- document.getElementById("systemMinRunTime").style.color='#29da93';
- };
- });
- $.ajaxSettings.async = false;
- let searchText = $("#searchText").val();
- $.get('contextPath/koTime/getApis?question='+searchText+'&token='+globalToken, function (data) {
- let element = document.getElementById('apiList');
- html = '';
- for (let i = 0; i < data.length; i++) {
- let className = data[i]['className'];
- let methodName = data[i]['methodName'];
- let avgRunTime = data[i]['avgRunTime'];
- let methodType = data[i]['methodType'];
- let routeName = data[i]['routeName'];
-
- let apiId = className+"."+methodName;
- let color = avgRunTime>globalThreshold?'danger':'success';
- if (methodType=='Controller' && routeName!=null && routeName!='') {
- html += "
"+ className+"#"+methodName+" ("+routeName+")   avg "+avgRunTime+" ms
";
- }else{
- html += "
"+ className+"#"+methodName+"   avg "+avgRunTime+" ms
";
- }
- };
- element.innerHTML = html;
- });
- $.get('contextPath/koTime/getExceptions?token='+globalToken, function (data) {
- let element = document.getElementById('exceptionList');
- html = '';
- for (let i = 0; i < data.length; i++) {
- let id = data[i]['id'];
- let className = data[i]['className'];
- let message = data[i]['message'];
- html += "
"+className+"   "+message+"
";
- };
- element.innerHTML = html;
- });
- $.ajaxSettings.async = true;
- loadCpuInfo();
- loadHeapMemoryInfo();
- loadPhysicalMemoryInfo();
- });
let methodParamMap = new Map();
function paramGraph(e) {
@@ -466,6 +324,172 @@
physicalUsedRateDom.innerHTML = `${usedRate.toFixed(2)}%`;
});
}
+
+ function loadConfig() {
+ $.get('contextPath/koTime/getConfig?token='+globalToken, function (data) {
+ let versionNoticeEnable = data['versionNotice'];
+ if (versionNoticeEnable) {
+ loadLatestVersion();
+ }
+ let exceptionEnable = data['exceptionEnable'];
+
+ let exceptionEnableDom = document.getElementById('exceptionEnable');
+ exceptionEnableDom.checked = exceptionEnable;
+
+
+ let kotimeEnable = data['enable'];
+ let kotimeEnableDom = document.getElementById('kotimeEnable');
+ kotimeEnableDom.checked = kotimeEnable;
+
+ let apiTip = document.getElementById('apiTip');
+ apiTip.innerHTML = kotimeEnable==true?"We can see interfaces after invoking methods!":"KoTime switch was closed!";
+
+
+ let threshold = data['threshold'];
+ let timeThresholdDom = document.getElementById('timeThreshold');
+ timeThresholdDom.value = threshold;
+
+ let logEnable = data['logEnable'];
+ let logEnableDom = document.getElementById('logEnable');
+ logEnableDom.checked = logEnable;
+
+ let language = data['language'];
+ $("#languageSwitch").val(language)
+ });
+ }
+
+ function addConfigEvent() {
+
+ document.getElementById('kotimeEnable').onclick = function(){
+ $.ajax({type:'POST',url:'contextPath/koTime/updateConfig?token='+globalToken,data:JSON.stringify({enable:document.getElementById('kotimeEnable').checked}),dataType:'json', headers: {'Content-Type': 'application/json' }});
+ };
+
+ document.getElementById('exceptionEnable').onclick = function(){
+ $.ajax({type:'POST',url:'contextPath/koTime/updateConfig?token='+globalToken,data:JSON.stringify({exceptionEnable:document.getElementById('exceptionEnable').checked}),dataType:'json', headers: {'Content-Type': 'application/json' }});
+
+ };
+
+ document.getElementById('logEnable').onclick = function(){
+ $.ajax({type:'POST',url:'contextPath/koTime/updateConfig?token='+globalToken,data:JSON.stringify({logEnable:document.getElementById('logEnable').checked}),dataType:'json', headers: {'Content-Type': 'application/json' }});
+ };
+
+ document.getElementById('languageSwitch').onchange = function(){
+ let selectedObj = document.getElementById('languageSwitch');
+ $.ajax({type:'POST',url:'contextPath/koTime/updateConfig?token='+globalToken,data:JSON.stringify({language:selectedObj.options[selectedObj.selectedIndex].value}),dataType:'json', headers: {'Content-Type': 'application/json' }});
+ };
+
+
+ document.getElementById("timeThresholdYes").onclick = function(){
+ $.ajax({type:'POST',url:'contextPath/koTime/updateConfig?token='+globalToken,data:JSON.stringify({threshold:document.getElementById('timeThreshold').value}),dataType:'json', headers: {'Content-Type': 'application/json' }});
+ };
+ }
+
+ function loadStatistic() {
+ $.get('contextPath/koTime/getStatistic?token='+globalToken, function (data) {
+ let totalNum = data['totalNum'];
+ let systemTotalNum = document.getElementById("systemTotalNum");
+ systemTotalNum.innerHTML=totalNum;
+
+ let normalNum = data['normalNum'];
+ let systemNormalNum = document.getElementById("systemNormalNum");
+ systemNormalNum.innerHTML=normalNum;
+
+ let delayNum = data['delayNum'];
+ let systemDelayNum = document.getElementById("systemDelayNum");
+ systemDelayNum.innerHTML=delayNum;
+
+ let avgRunTime = data['avgRunTime'];
+ let systemAvgRunTime = document.getElementById("systemAvgRunTime");
+ systemAvgRunTime.innerHTML=avgRunTime;
+ if (avgRunTime>globalThreshold) {
+ document.getElementById("systemAvgRunTime").style.color='#cc0c0c';
+ }else {
+ document.getElementById("systemAvgRunTime").style.color='#29da93';
+ };
+
+ let maxRunTime = data['maxRunTime'];
+ let systemMaxRunTime = document.getElementById("systemMaxRunTime");
+ systemMaxRunTime.innerHTML=maxRunTime;
+ if (maxRunTime>globalThreshold) {
+ document.getElementById("systemMaxRunTime").style.color='#cc0c0c';
+ }else {
+ document.getElementById("systemMaxRunTime").style.color='#29da93';
+ };
+
+
+ let minRunTime = data['minRunTime'];
+ let systemMinRunTime = document.getElementById("systemMinRunTime");
+ systemMinRunTime.innerHTML=minRunTime;
+ if (minRunTime>globalThreshold) {
+ document.getElementById("systemMinRunTime").style.color='#cc0c0c';
+ }else {
+ document.getElementById("systemMinRunTime").style.color='#29da93';
+ };
+ });
+ }
+
+ function loadApis() {
+ let searchText = $("#searchText").val();
+ $.get('contextPath/koTime/getApis?question='+searchText+'&token='+globalToken, function (data) {
+ let element = document.getElementById('apiList');
+ html = '';
+ for (let i = 0; i < data.length; i++) {
+ let className = data[i]['className'];
+ let methodName = data[i]['methodName'];
+ let avgRunTime = data[i]['avgRunTime'];
+ let methodType = data[i]['methodType'];
+ let routeName = data[i]['routeName'];
+
+ let apiId = className+"."+methodName;
+ let color = avgRunTime>globalThreshold?'danger':'success';
+ if (methodType=='Controller' && routeName!=null && routeName!='') {
+ html += "
"+ className+"#"+methodName+" ("+routeName+")   avg "+avgRunTime+" ms
";
+ }else{
+ html += "
"+ className+"#"+methodName+"   avg "+avgRunTime+" ms
";
+ }
+ };
+ element.innerHTML = html;
+ });
+
+ }
+
+ function loadExceptions() {
+ $.get('contextPath/koTime/getExceptions?token='+globalToken, function (data) {
+ let element = document.getElementById('exceptionList');
+ html = '';
+ for (let i = 0; i < data.length; i++) {
+ let id = data[i]['id'];
+ let className = data[i]['className'];
+ let message = data[i]['message'];
+ html += "
"+className+"   "+message+"
";
+ };
+ element.innerHTML = html;
+ });
+
+ }
+
+ function refreshData() {
+ $.get('contextPath/koTime/isLogin?token='+globalToken, function (data) {
+ globalIsLogin = data['isLogin']==1?true:false;
+ if (globalNeedLogin==true && globalIsLogin == false) {
+ UIkit.modal(document.getElementById("modal-login")).show();
+ return;
+ }else {
+ loadStatistic();
+ loadConfig();
+ addConfigEvent();
+ loadApis();
+ loadExceptions();
+ loadCpuInfo();
+ loadHeapMemoryInfo();
+ loadPhysicalMemoryInfo();
+ }
+ });
+ }
+ $(document).ready(function () {
+ refreshData();
+ });
+
@@ -474,7 +498,7 @@
diff --git a/src/main/resources/kotime.html b/src/main/resources/kotime.html
index 31ebf32..d6952cc 100644
--- a/src/main/resources/kotime.html
+++ b/src/main/resources/kotime.html
@@ -18,71 +18,68 @@
var d = 180;
var globalThreshold = globalThresholdValue;
var globalNeedLogin = globalNeedLoginValue;
- var globalToken = sessionStorage.getItem("kotimeToken")
- $(document).ready(function () {
- let globalIsLogin = false;
- $.ajaxSettings.async = false;
+ var globalToken = sessionStorage.getItem("kotimeToken");
+ let globalIsLogin = false;
+
+ function refreshData() {
$.get('contextPath/koTime/isLogin?token='+globalToken, function (data) {
globalIsLogin = data['isLogin']==1?true:false;
- });
- $.ajaxSettings.async = true;
- if (globalNeedLogin==true && globalIsLogin == false) {
- UIkit.modal(document.getElementById("modal-login")).show();
- return;
- };
- $.get('contextPath/koTime/getConfig?token='+globalToken, function (data) {
- let versionNoticeEnable = data['versionNotice'];
- if (versionNoticeEnable) {
- loadLatestVersion();
+ if (globalNeedLogin==true && globalIsLogin == false) {
+ UIkit.modal(document.getElementById("modal-login")).show();
+ return;
+ }else {
+ loadStatistic();
+ loadConfig();
+ addConfigEvent();
+ loadApis();
+ loadExceptions();
+ loadCpuInfo();
+ loadHeapMemoryInfo();
+ loadPhysicalMemoryInfo();
}
-
- let exceptionEnable = data['exceptionEnable'];
-
- let exceptionEnableDom = document.getElementById('exceptionEnable');
- exceptionEnableDom.checked = exceptionEnable;
-
- let kotimeEnable = data['enable'];
- let kotimeEnableDom = document.getElementById('kotimeEnable');
- kotimeEnableDom.checked = kotimeEnable;
-
- let apiTip = document.getElementById('apiTip');
- apiTip.innerHTML = kotimeEnable==true?"接口根据调用情况统计,未调用的接口无法被统计到,请先调用接口":"方法调用监测已关闭,数据将不会更新,需要开启请到配置面板";
-
-
- let threshold = data['threshold'];
- let timeThresholdDom = document.getElementById('timeThreshold');
- timeThresholdDom.value = threshold;
-
- let logEnable = data['logEnable'];
- let logEnableDom = document.getElementById('logEnable');
- logEnableDom.checked = logEnable;
-
- let language = data['language'];
- $("#languageSwitch").val(language)
});
- document.getElementById('kotimeEnable').onclick = function(){
- $.ajax({type:'POST',url:'contextPath/koTime/updateConfig?token='+globalToken,data:JSON.stringify({enable:document.getElementById('kotimeEnable').checked}),dataType:'json', headers: {'Content-Type': 'application/json' }});
- };
+ }
- document.getElementById('exceptionEnable').onclick = function(){
- $.ajax({type:'POST',url:'contextPath/koTime/updateConfig?token='+globalToken,data:JSON.stringify({exceptionEnable:document.getElementById('exceptionEnable').checked}),dataType:'json', headers: {'Content-Type': 'application/json' }});
+ function loadExceptions() {
+ $.get('contextPath/koTime/getExceptions?token='+globalToken, function (data) {
+ let element = document.getElementById('exceptionList');
+ html = '';
+ for (let i = 0; i < data.length; i++) {
+ let id = data[i]['id'];
+ let className = data[i]['className'];
+ let message = data[i]['message'];
+ html += "
"+className+"   "+message+"
";
+ };
+ element.innerHTML = html;
+ });
+ }
- };
+ function loadApis() {
+ let searchText = $("#searchText").val();
+ $.get('contextPath/koTime/getApis?question='+searchText+'&token='+globalToken, function (data) {
+ let element = document.getElementById('apiList');
+ html = '';
+ for (let i = 0; i < data.length; i++) {
+ let className = data[i]['className'];
+ let methodName = data[i]['methodName'];
+ let avgRunTime = data[i]['avgRunTime'];
+ let methodType = data[i]['methodType'];
+ let routeName = data[i]['routeName'];
- document.getElementById('logEnable').onclick = function(){
- $.ajax({type:'POST',url:'contextPath/koTime/updateConfig?token='+globalToken,data:JSON.stringify({logEnable:document.getElementById('logEnable').checked}),dataType:'json', headers: {'Content-Type': 'application/json' }});
- };
-
- document.getElementById('languageSwitch').onchange = function(){
- let selectedObj = document.getElementById('languageSwitch');
- $.ajax({type:'POST',url:'contextPath/koTime/updateConfig?token='+globalToken,data:JSON.stringify({language:selectedObj.options[selectedObj.selectedIndex].value}),dataType:'json', headers: {'Content-Type': 'application/json' }});
- };
-
- document.getElementById("timeThresholdYes").onclick = function(){
- $.ajax({type:'POST',url:'contextPath/koTime/updateConfig?token='+globalToken,data:JSON.stringify({threshold:document.getElementById('timeThreshold').value}),dataType:'json', headers: {'Content-Type': 'application/json' }});
- };
+ let apiId = className+"."+methodName;
+ let color = avgRunTime>globalThreshold?'danger':'success';
+ if (methodType=='Controller' && routeName!=null && routeName!='') {
+ html += "
"+ className+"#"+methodName+" ("+routeName+")   平均响应 "+avgRunTime+" ms
";
+ }else{
+ html += "
"+ className+"#"+methodName+"   平均响应 "+avgRunTime+" ms
";
+ }
+ };
+ element.innerHTML = html;
+ });
+ }
+ function loadStatistic() {
$.get('contextPath/koTime/getStatistic?token='+globalToken, function (data) {
let totalNum = data['totalNum'];
let systemTotalNum = document.getElementById("systemTotalNum");
@@ -125,44 +122,64 @@
};
});
- $.ajaxSettings.async = false;
- let searchText = $("#searchText").val();
- $.get('contextPath/koTime/getApis?question='+searchText+'&token='+globalToken, function (data) {
- let element = document.getElementById('apiList');
- html = '';
- for (let i = 0; i < data.length; i++) {
- let className = data[i]['className'];
- let methodName = data[i]['methodName'];
- let avgRunTime = data[i]['avgRunTime'];
- let methodType = data[i]['methodType'];
- let routeName = data[i]['routeName'];
+ }
- let apiId = className+"."+methodName;
- let color = avgRunTime>globalThreshold?'danger':'success';
- if (methodType=='Controller' && routeName!=null && routeName!='') {
- html += "
"+ className+"#"+methodName+" ("+routeName+")   平均响应 "+avgRunTime+" ms
";
- }else{
- html += "
"+ className+"#"+methodName+"   平均响应 "+avgRunTime+" ms
";
- }
- };
- element.innerHTML = html;
+ function addConfigEvent() {
+ document.getElementById('kotimeEnable').onclick = function(){
+ $.ajax({type:'POST',url:'contextPath/koTime/updateConfig?token='+globalToken,data:JSON.stringify({enable:document.getElementById('kotimeEnable').checked}),dataType:'json', headers: {'Content-Type': 'application/json' }});
+ };
+
+ document.getElementById('exceptionEnable').onclick = function(){
+ $.ajax({type:'POST',url:'contextPath/koTime/updateConfig?token='+globalToken,data:JSON.stringify({exceptionEnable:document.getElementById('exceptionEnable').checked}),dataType:'json', headers: {'Content-Type': 'application/json' }});
+
+ };
+
+ document.getElementById('logEnable').onclick = function(){
+ $.ajax({type:'POST',url:'contextPath/koTime/updateConfig?token='+globalToken,data:JSON.stringify({logEnable:document.getElementById('logEnable').checked}),dataType:'json', headers: {'Content-Type': 'application/json' }});
+ };
+
+ document.getElementById('languageSwitch').onchange = function(){
+ let selectedObj = document.getElementById('languageSwitch');
+ $.ajax({type:'POST',url:'contextPath/koTime/updateConfig?token='+globalToken,data:JSON.stringify({language:selectedObj.options[selectedObj.selectedIndex].value}),dataType:'json', headers: {'Content-Type': 'application/json' }});
+ };
+
+ document.getElementById("timeThresholdYes").onclick = function(){
+ $.ajax({type:'POST',url:'contextPath/koTime/updateConfig?token='+globalToken,data:JSON.stringify({threshold:document.getElementById('timeThreshold').value}),dataType:'json', headers: {'Content-Type': 'application/json' }});
+ };
+ }
+
+ function loadConfig() {
+ $.get('contextPath/koTime/getConfig?token='+globalToken, function (data) {
+ let versionNoticeEnable = data['versionNotice'];
+ if (versionNoticeEnable) {
+ loadLatestVersion();
+ }
+
+ let exceptionEnable = data['exceptionEnable'];
+
+ let exceptionEnableDom = document.getElementById('exceptionEnable');
+ exceptionEnableDom.checked = exceptionEnable;
+
+ let kotimeEnable = data['enable'];
+ let kotimeEnableDom = document.getElementById('kotimeEnable');
+ kotimeEnableDom.checked = kotimeEnable;
+
+ let apiTip = document.getElementById('apiTip');
+ apiTip.innerHTML = kotimeEnable==true?"接口根据调用情况统计,未调用的接口无法被统计到,请先调用接口":"方法调用监测已关闭,数据将不会更新,需要开启请到配置面板";
+
+
+ let threshold = data['threshold'];
+ let timeThresholdDom = document.getElementById('timeThreshold');
+ timeThresholdDom.value = threshold;
+
+ let logEnable = data['logEnable'];
+ let logEnableDom = document.getElementById('logEnable');
+ logEnableDom.checked = logEnable;
+
+ let language = data['language'];
+ $("#languageSwitch").val(language)
});
- $.get('contextPath/koTime/getExceptions?token='+globalToken, function (data) {
- let element = document.getElementById('exceptionList');
- html = '';
- for (let i = 0; i < data.length; i++) {
- let id = data[i]['id'];
- let className = data[i]['className'];
- let message = data[i]['message'];
- html += "