summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorlijinyang <[email protected]>2024-06-06 12:41:22 +0800
committerlijinyang <[email protected]>2024-06-06 12:41:22 +0800
commit700637c522d0cc83267c5c40eae3567ec38b028b (patch)
tree87f26371b96f4d4ea503adb9cbc2b53e99088052
parent4dc717911144f3ffcd6e1b07d5afb7ffc24d6d80 (diff)
fix:网络数据统计指标sql过滤条件修改
-rw-r--r--cn-admin/src/main/resources/db/R__AZ_magic_api_file.sql20
1 files changed, 10 insertions, 10 deletions
diff --git a/cn-admin/src/main/resources/db/R__AZ_magic_api_file.sql b/cn-admin/src/main/resources/db/R__AZ_magic_api_file.sql
index 4acd9d6..6a0ff47 100644
--- a/cn-admin/src/main/resources/db/R__AZ_magic_api_file.sql
+++ b/cn-admin/src/main/resources/db/R__AZ_magic_api_file.sql
@@ -49,20 +49,20 @@ INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/ove
INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/drilldown/dimension/clientLocations/country/group.json', '{\n \"properties\" : { },\n \"id\" : \"73ea11c6e3384170ab4f7b7d4dc359b0\",\n \"name\" : \"country\",\n \"type\" : \"api\",\n \"parentId\" : \"6840e4616bf3473d8cd530e3ebd0d8ed\",\n \"path\" : \"/country\",\n \"createTime\" : 1673342896661,\n \"updateTime\" : null,\n \"createBy\" : \"th\",\n \"updateBy\" : null,\n \"paths\" : [ ],\n \"options\" : [ ]\n}');
INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/drilldown/dimension/clientLocations/country/HTTP响应延迟.ms', '{\n \"properties\" : { },\n \"id\" : \"copy1673343010809d51487\",\n \"script\" : null,\n \"groupId\" : \"73ea11c6e3384170ab4f7b7d4dc359b0\",\n \"name\" : \"HTTP响应延迟\",\n \"createTime\" : null,\n \"updateTime\" : 1696848117648,\n \"lock\" : null,\n \"createBy\" : null,\n \"updateBy\" : \"admin\",\n \"path\" : \"/httpResponseDelay\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1673339501\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1673425901\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"params\",\n \"value\" : \"\'Xinjiang\'\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"type\",\n \"value\" : \"ip\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"countryRegion\",\n \"value\" : \"China\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"typeVal\",\n \"value\" : \"116.178.236.216\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"status\\\": 200,\\n \\\"code\\\": 200,\\n \\\"queryKey\\\": \\\"dd926a104b202a98a30e039701d36051\\\",\\n \\\"success\\\": true,\\n \\\"message\\\": null,\\n \\\"statistics\\\": {\\n \\\"elapsed\\\": 208,\\n \\\"rows_read\\\": 2558973,\\n \\\"bytes_read\\\": 211842462,\\n \\\"result_size\\\": 62,\\n \\\"result_rows\\\": 1\\n },\\n \\\"job\\\": null,\\n \\\"formatType\\\": \\\"json\\\",\\n \\\"meta\\\": [{\\n \\\"name\\\": \\\"country\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Dimension\\\"\\n }, {\\n \\\"name\\\": \\\"province\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Dimension\\\"\\n }, {\\n \\\"name\\\": \\\"http_response_latency\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }],\\n \\\"data\\\": {\\n \\\"resultType\\\": \\\"table\\\",\\n \\\"result\\\": [{\\n \\\"country\\\": \\\"China\\\",\\n \\\"province\\\": \\\"Xinjiang\\\",\\n \\\"httpResponseLatency\\\": 62\\n }]\\n },\\n \\\"msg\\\": \\\"OK\\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"status\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"code\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"queryKey\",\n \"value\" : \"dd926a104b202a98a30e039701d36051\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"success\",\n \"value\" : \"true\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Boolean\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"statistics\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"elapsed\",\n \"value\" : \"208\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"rows_read\",\n \"value\" : \"2558973\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"bytes_read\",\n \"value\" : \"211842462\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_size\",\n \"value\" : \"62\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_rows\",\n \"value\" : \"1\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"job\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"formatType\",\n \"value\" : \"json\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"meta\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"name\",\n \"value\" : \"country\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"type\",\n \"value\" : \"string\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"category\",\n \"value\" : \"Dimension\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"data\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"resultType\",\n \"value\" : \"table\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"country\",\n \"value\" : \"China\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"province\",\n \"value\" : \"Xinjiang\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"httpResponseLatency\",\n \"value\" : \"62\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n } ]\n }, {\n \"name\" : \"msg\",\n \"value\" : \"OK\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandle\' as preHandle;\r\nimport \'@/pre/typeHandle4th\' as typeHandle4th;\r\nimport \'@/post/table\' as objHandle\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\n\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"params\":params,\r\n \"type\":type,\r\n \"country\":countryRegion,\r\n \"typeVal\":typeVal\r\n}\r\n\r\npreHandle(parameter);\r\ntypeHandle4th(parameter);\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"SELECT client_country_region AS country_region, client_super_admin_area AS super_admin_area, ROUND(AVG(http_response_latency_ms)) AS http_response_latency FROM session_record_cn WHERE recv_time >= ${startTime} AND recv_time < ${endTime} AND l7_protocol = \'HTTP\' AND http_response_latency_ms != 0 AND client_super_admin_area IN ( <#if params?default(\'\')?trim? length gt 0> ${params} </#if> ) AND client_country_region = \'${country}\' AND ${dimension} = \'${typeVal}\' GROUP BY country_region,super_admin_area\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"applicationPerformanceOverviewDrilldownDimensionClientLocationsCountryHttpResponseDelay\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar galaxyRes = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nvar result = objHandle(galaxyRes);\r\n\r\nreturn result;');
INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/drilldown/dimension/clientLocations/country/SSL握手延迟.ms', '{\n \"properties\" : { },\n \"id\" : \"copy1673342945966d82684\",\n \"script\" : null,\n \"groupId\" : \"73ea11c6e3384170ab4f7b7d4dc359b0\",\n \"name\" : \"SSL握手延迟\",\n \"createTime\" : null,\n \"updateTime\" : 1696846545699,\n \"lock\" : null,\n \"createBy\" : null,\n \"updateBy\" : \"admin\",\n \"path\" : \"/sslConDelay\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1673339501\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1673425901\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"params\",\n \"value\" : \"\'Xinjiang\'\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"type\",\n \"value\" : \"ip\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"countryRegion\",\n \"value\" : \"China\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"typeVal\",\n \"value\" : \"116.178.236.216\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"status\\\": 200,\\n \\\"code\\\": 200,\\n \\\"queryKey\\\": \\\"9a90dba29c63e7ac7123d5970f10d975\\\",\\n \\\"success\\\": true,\\n \\\"message\\\": null,\\n \\\"statistics\\\": {\\n \\\"elapsed\\\": 69,\\n \\\"rows_read\\\": 2558973,\\n \\\"bytes_read\\\": 211842462,\\n \\\"result_size\\\": 55,\\n \\\"result_rows\\\": 1\\n },\\n \\\"job\\\": null,\\n \\\"formatType\\\": \\\"json\\\",\\n \\\"meta\\\": [{\\n \\\"name\\\": \\\"country\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Dimension\\\"\\n }, {\\n \\\"name\\\": \\\"province\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Dimension\\\"\\n }, {\\n \\\"name\\\": \\\"ssl_con_latency\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }],\\n \\\"data\\\": {\\n \\\"resultType\\\": \\\"object\\\",\\n \\\"result\\\": {\\n \\\"country\\\": \\\"China\\\",\\n \\\"province\\\": \\\"Xinjiang\\\",\\n \\\"sslConLatency\\\": 0\\n }\\n },\\n \\\"msg\\\": \\\"OK\\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"status\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"code\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"queryKey\",\n \"value\" : \"9a90dba29c63e7ac7123d5970f10d975\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"success\",\n \"value\" : \"true\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Boolean\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"statistics\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"elapsed\",\n \"value\" : \"69\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"rows_read\",\n \"value\" : \"2558973\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"bytes_read\",\n \"value\" : \"211842462\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_size\",\n \"value\" : \"55\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_rows\",\n \"value\" : \"1\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"job\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"formatType\",\n \"value\" : \"json\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"meta\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"name\",\n \"value\" : \"country\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"type\",\n \"value\" : \"string\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"category\",\n \"value\" : \"Dimension\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"data\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"resultType\",\n \"value\" : \"object\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"country\",\n \"value\" : \"China\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"province\",\n \"value\" : \"Xinjiang\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"sslConLatency\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"msg\",\n \"value\" : \"OK\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandle\' as preHandle;\r\nimport \'@/pre/typeHandle4th\' as typeHandle4th;\r\nimport \'@/post/table\' as objHandle\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\n\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"params\":params,\r\n \"type\":type,\r\n \"country\":countryRegion,\r\n \"typeVal\":typeVal\r\n}\r\n\r\npreHandle(parameter);\r\ntypeHandle4th(parameter);\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"SELECT client_country_region AS country_region, client_super_admin_area AS super_admin_area, ROUND(AVG(ssl_handshake_latency_ms)) AS ssl_con_latency FROM session_record_cn WHERE recv_time >= ${startTime} AND recv_time < ${endTime} AND l7_protocol = \'SSL\' AND ssl_handshake_latency_ms !=0 AND client_super_admin_area IN ( <#if params?default(\'\')?trim? length gt 0> ${params} </#if> ) AND client_country_region = \'${country}\' AND ${dimension} = \'${typeVal}\' GROUP BY country_region,super_admin_area\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"applicationPerformanceOverviewDrilldownDimensionClientLocationsCountrySslConDelay\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar galaxyRes = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nvar result = objHandle(galaxyRes);\r\n\r\nreturn result;');
-INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/drilldown/dimension/clientLocations/country/TCP会话创建延迟.ms', '{\n \"properties\" : { },\n \"id\" : \"copy1673343099401d59675\",\n \"script\" : null,\n \"groupId\" : \"73ea11c6e3384170ab4f7b7d4dc359b0\",\n \"name\" : \"TCP会话创建延迟\",\n \"createTime\" : null,\n \"updateTime\" : 1692872876374,\n \"lock\" : null,\n \"createBy\" : \"th\",\n \"updateBy\" : \"ljy\",\n \"path\" : \"/tcpSessionDelay\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1673339501\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1673425901\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"params\",\n \"value\" : \"\'Xinjiang\'\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"type\",\n \"value\" : \"ip\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"countryRegion\",\n \"value\" : \"China\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"typeVal\",\n \"value\" : \"116.178.236.216\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"status\\\": 200,\\n \\\"code\\\": 200,\\n \\\"queryKey\\\": \\\"75c683c4fbef3887e69866a42d1f2dc0\\\",\\n \\\"success\\\": true,\\n \\\"message\\\": null,\\n \\\"statistics\\\": {\\n \\\"elapsed\\\": 415,\\n \\\"rows_read\\\": 2558973,\\n \\\"bytes_read\\\": 397417728,\\n \\\"result_size\\\": 117,\\n \\\"result_rows\\\": 1\\n },\\n \\\"job\\\": null,\\n \\\"formatType\\\": \\\"json\\\",\\n \\\"meta\\\": [{\\n \\\"name\\\": \\\"country\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Dimension\\\"\\n }, {\\n \\\"name\\\": \\\"province\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Dimension\\\"\\n }, {\\n \\\"name\\\": \\\"establish_latency_ms\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"tcp_lostlen_percent\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"pkt_retrans_percent\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }],\\n \\\"data\\\": {\\n \\\"resultType\\\": \\\"object\\\",\\n \\\"result\\\": {\\n \\\"country\\\": \\\"China\\\",\\n \\\"province\\\": \\\"Xinjiang\\\",\\n \\\"establishLatencyMs\\\": 75,\\n \\\"tcpLostlenPercent\\\": 0.0123,\\n \\\"pktRetransPercent\\\": 0.0226\\n }\\n },\\n \\\"msg\\\": \\\"OK\\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"status\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"code\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"queryKey\",\n \"value\" : \"75c683c4fbef3887e69866a42d1f2dc0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"success\",\n \"value\" : \"true\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Boolean\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"statistics\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"elapsed\",\n \"value\" : \"415\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"rows_read\",\n \"value\" : \"2558973\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"bytes_read\",\n \"value\" : \"397417728\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_size\",\n \"value\" : \"117\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_rows\",\n \"value\" : \"1\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"job\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"formatType\",\n \"value\" : \"json\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"meta\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"name\",\n \"value\" : \"country\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"type\",\n \"value\" : \"string\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"category\",\n \"value\" : \"Dimension\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"data\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"resultType\",\n \"value\" : \"object\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"country\",\n \"value\" : \"China\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"province\",\n \"value\" : \"Xinjiang\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"establishLatencyMs\",\n \"value\" : \"75\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"tcpLostlenPercent\",\n \"value\" : \"0.0123\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Double\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"pktRetransPercent\",\n \"value\" : \"0.0226\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Double\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"msg\",\n \"value\" : \"OK\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandle\' as preHandle;\r\nimport \'@/pre/typeHandle4th\' as typeHandle4th;\r\nimport \'@/post/table\' as objHandle\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\n\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"params\":params,\r\n \"type\":type,\r\n \"country\":countryRegion,\r\n \"typeVal\":typeVal\r\n}\r\n\r\npreHandle(parameter);\r\ntypeHandle4th(parameter);\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"SELECT client_country_region AS country_region, client_super_admin_area AS super_admin_area, ROUND(AVG(tcp_rtt_ms)) AS establish_latency_ms, ROUND(SUM(tcp_c2s_lost_bytes + tcp_s2c_lost_bytes)/SUM(sent_bytes + received_bytes + tcp_c2s_lost_bytes + tcp_s2c_lost_bytes),4) AS tcp_lostlen_percent, ROUND(SUM(tcp_c2s_rtx_pkts + tcp_s2c_rtx_pkts)/ SUM(sent_pkts + received_pkts),4) AS pkt_retrans_percent FROM session_record_cn WHERE recv_time >= ${startTime} AND recv_time < ${endTime} AND decoded_path IN (\'IPv4_TCP\', \'IPv6_TCP\') AND client_super_admin_area IN ( <#if params?default(\'\')?trim? length gt 0> ${params} </#if> ) AND client_country_region = \'${country}\' AND ${dimension} = \'${typeVal}\' GROUP BY country_region,super_admin_area\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"applicationPerformanceOverviewDrilldownDimensionClientLocationsCountryTcpSessionDelay\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar galaxyRes = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nvar result = objHandle(galaxyRes);\r\n\r\nreturn result;');
+INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/drilldown/dimension/clientLocations/country/TCP会话创建延迟.ms', '{\n \"properties\" : { },\n \"id\" : \"copy1673343099401d59675\",\n \"script\" : null,\n \"groupId\" : \"73ea11c6e3384170ab4f7b7d4dc359b0\",\n \"name\" : \"TCP会话创建延迟\",\n \"createTime\" : null,\n \"updateTime\" : 1717647193767,\n \"lock\" : null,\n \"createBy\" : \"th\",\n \"updateBy\" : null,\n \"path\" : \"/tcpSessionDelay\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1673339501\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1673425901\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"params\",\n \"value\" : \"\'Xinjiang\'\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"type\",\n \"value\" : \"ip\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"countryRegion\",\n \"value\" : \"China\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"typeVal\",\n \"value\" : \"116.178.236.216\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"status\\\": 200,\\n \\\"code\\\": 200,\\n \\\"queryKey\\\": \\\"75c683c4fbef3887e69866a42d1f2dc0\\\",\\n \\\"success\\\": true,\\n \\\"message\\\": null,\\n \\\"statistics\\\": {\\n \\\"elapsed\\\": 415,\\n \\\"rows_read\\\": 2558973,\\n \\\"bytes_read\\\": 397417728,\\n \\\"result_size\\\": 117,\\n \\\"result_rows\\\": 1\\n },\\n \\\"job\\\": null,\\n \\\"formatType\\\": \\\"json\\\",\\n \\\"meta\\\": [{\\n \\\"name\\\": \\\"country\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Dimension\\\"\\n }, {\\n \\\"name\\\": \\\"province\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Dimension\\\"\\n }, {\\n \\\"name\\\": \\\"establish_latency_ms\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"tcp_lostlen_percent\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"pkt_retrans_percent\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }],\\n \\\"data\\\": {\\n \\\"resultType\\\": \\\"object\\\",\\n \\\"result\\\": {\\n \\\"country\\\": \\\"China\\\",\\n \\\"province\\\": \\\"Xinjiang\\\",\\n \\\"establishLatencyMs\\\": 75,\\n \\\"tcpLostlenPercent\\\": 0.0123,\\n \\\"pktRetransPercent\\\": 0.0226\\n }\\n },\\n \\\"msg\\\": \\\"OK\\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"status\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"code\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"queryKey\",\n \"value\" : \"75c683c4fbef3887e69866a42d1f2dc0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"success\",\n \"value\" : \"true\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Boolean\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"statistics\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"elapsed\",\n \"value\" : \"415\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"rows_read\",\n \"value\" : \"2558973\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"bytes_read\",\n \"value\" : \"397417728\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_size\",\n \"value\" : \"117\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_rows\",\n \"value\" : \"1\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"job\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"formatType\",\n \"value\" : \"json\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"meta\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"name\",\n \"value\" : \"country\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"type\",\n \"value\" : \"string\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"category\",\n \"value\" : \"Dimension\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"data\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"resultType\",\n \"value\" : \"object\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"country\",\n \"value\" : \"China\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"province\",\n \"value\" : \"Xinjiang\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"establishLatencyMs\",\n \"value\" : \"75\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"tcpLostlenPercent\",\n \"value\" : \"0.0123\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Double\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"pktRetransPercent\",\n \"value\" : \"0.0226\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Double\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"msg\",\n \"value\" : \"OK\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandle\' as preHandle;\r\nimport \'@/pre/typeHandle4th\' as typeHandle4th;\r\nimport \'@/post/table\' as objHandle\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\n\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"params\":params,\r\n \"type\":type,\r\n \"country\":countryRegion,\r\n \"typeVal\":typeVal\r\n}\r\n\r\npreHandle(parameter);\r\ntypeHandle4th(parameter);\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"SELECT client_country_region AS country_region, client_super_admin_area AS super_admin_area, ROUND(AVG(tcp_rtt_ms)) AS establish_latency_ms, ROUND(SUM(tcp_c2s_lost_bytes + tcp_s2c_lost_bytes)/SUM(sent_bytes + received_bytes + tcp_c2s_lost_bytes + tcp_s2c_lost_bytes),4) AS tcp_lostlen_percent, ROUND(SUM(tcp_c2s_rtx_pkts + tcp_s2c_rtx_pkts)/ SUM(sent_pkts + received_pkts),4) AS pkt_retrans_percent FROM session_record_cn WHERE recv_time >= ${startTime} AND recv_time < ${endTime} AND ip_protocol IN (\'tcp\') AND client_super_admin_area IN ( <#if params?default(\'\')?trim? length gt 0> ${params} </#if> ) AND client_country_region = \'${country}\' AND ${dimension} = \'${typeVal}\' GROUP BY country_region,super_admin_area\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"applicationPerformanceOverviewDrilldownDimensionClientLocationsCountryTcpSessionDelay\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar galaxyRes = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nvar result = objHandle(galaxyRes);\r\n\r\nreturn result;');
INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/drilldown/dimension/clientLocations/country/流量统计.ms', '{\n \"properties\" : { },\n \"id\" : \"copy1673343172377d62204\",\n \"script\" : null,\n \"groupId\" : \"73ea11c6e3384170ab4f7b7d4dc359b0\",\n \"name\" : \"流量统计\",\n \"createTime\" : null,\n \"updateTime\" : 1692872855835,\n \"lock\" : null,\n \"createBy\" : \"th\",\n \"updateBy\" : \"ljy\",\n \"path\" : \"/trafficAnalysis\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1692854020\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1692857620\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"params\",\n \"value\" : null,\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"type\",\n \"value\" : \"ip\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"countryRegion\",\n \"value\" : \"China\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"typeVal\",\n \"value\" : \"192.0.2.3\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"orderBy\",\n \"value\" : \"totalBytes\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"status\\\": 200,\\n \\\"code\\\": 200,\\n \\\"queryKey\\\": \\\"e4f4e9efdb58a582c1a5ff1ca3028761\\\",\\n \\\"success\\\": true,\\n \\\"message\\\": null,\\n \\\"statistics\\\": {\\n \\\"elapsed\\\": 0,\\n \\\"rows_read\\\": 0,\\n \\\"bytes_read\\\": 0,\\n \\\"result_size\\\": 0,\\n \\\"result_rows\\\": 0\\n },\\n \\\"job\\\": null,\\n \\\"formatType\\\": \\\"json\\\",\\n \\\"meta\\\": [{\\n \\\"name\\\": \\\"country_region\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Dimension\\\"\\n }, {\\n \\\"name\\\": \\\"super_admin_area\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Dimension\\\"\\n }, {\\n \\\"name\\\": \\\"total_bytes\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"total_packets\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"sessions\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"inbound_bytes\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"inbound_packets\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"outbound_bytes\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"outbound_packets\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"internal_bytes\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"internal_packets\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"through_bytes\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"through_packets\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }],\\n \\\"data\\\": {\\n \\\"resultType\\\": \\\"table\\\",\\n \\\"result\\\": []\\n },\\n \\\"originalUrl\\\": \\\"http://192.168.44.55:9999/?query=SELECT client_country_region AS country_region, client_super_admin_area AS super_admin_area, SUM(received_bytes + sent_bytes) AS total_bytes, SUM(received_pkts + sent_pkts) AS total_packets, SUM(sessions) AS sessions, IF(client_zone = \'internal\' AND server_zone = \'external\' , SUM(received_bytes), IF(client_zone = \'external\' AND server_zone = \'internal\', SUM(sent_bytes), 0)) AS inbound_bytes, IF(client_zone = \'internal\' AND server_zone = \'external\' , SUM(received_pkts), IF(client_zone = \'external\' AND server_zone = \'internal\', SUM(sent_pkts), 0)) AS inbound_packets, IF(client_zone = \'external\' AND server_zone = \'internal\' , SUM(received_bytes), IF(client_zone = \'internal\' AND server_zone = \'external\', SUM(sent_bytes), 0)) AS outbound_bytes, IF(client_zone = \'external\' AND server_zone = \'internal\' , SUM(received_pkts), IF(client_zone = \'internal\' AND server_zone = \'external\', SUM(sent_pkts), 0)) AS outbound_packets, IF(client_zone = \'internal\' AND server_zone = \'internal\' , SUM(received_bytes + sent_bytes),0) AS internal_bytes, IF(client_zone = \'internal\' AND server_zone = \'internal\' , SUM(received_pkts + sent_pkts), 0) AS internal_packets, IF(client_zone = \'external\' AND server_zone = \'external\' , SUM(received_bytes + sent_bytes),0) AS through_bytes, IF(client_zone = \'external\' AND server_zone = \'external\' , SUM(received_pkts + sent_pkts), 0) AS through_packets FROM session_record_cn WHERE recv_time >= toDateTime(1692854020) AND recv_time < toDateTime(1692857620) AND notEmpty(client_super_admin_area) AND client_country_region = \'China\' AND server_ip = \'192.0.2.3\' GROUP BY country_region,super_admin_area,client_zone,server_zone ORDER BY total_bytes desc &format=json&option=real_time\\\",\\n \\\"msg\\\": \\\"OK\\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"status\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"code\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"queryKey\",\n \"value\" : \"e4f4e9efdb58a582c1a5ff1ca3028761\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"success\",\n \"value\" : \"true\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Boolean\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"statistics\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"elapsed\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"rows_read\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"bytes_read\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_size\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_rows\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"job\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"formatType\",\n \"value\" : \"json\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"meta\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"name\",\n \"value\" : \"country_region\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"type\",\n \"value\" : \"string\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"category\",\n \"value\" : \"Dimension\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"data\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"resultType\",\n \"value\" : \"table\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"originalUrl\",\n \"value\" : \"http://192.168.44.55:9999/?query=SELECT client_country_region AS country_region, client_super_admin_area AS super_admin_area, SUM(received_bytes + sent_bytes) AS total_bytes, SUM(received_pkts + sent_pkts) AS total_packets, SUM(sessions) AS sessions, IF(client_zone = \'internal\' AND server_zone = \'external\' , SUM(received_bytes), IF(client_zone = \'external\' AND server_zone = \'internal\', SUM(sent_bytes), 0)) AS inbound_bytes, IF(client_zone = \'internal\' AND server_zone = \'external\' , SUM(received_pkts), IF(client_zone = \'external\' AND server_zone = \'internal\', SUM(sent_pkts), 0)) AS inbound_packets, IF(client_zone = \'external\' AND server_zone = \'internal\' , SUM(received_bytes), IF(client_zone = \'internal\' AND server_zone = \'external\', SUM(sent_bytes), 0)) AS outbound_bytes, IF(client_zone = \'external\' AND server_zone = \'internal\' , SUM(received_pkts), IF(client_zone = \'internal\' AND server_zone = \'external\', SUM(sent_pkts), 0)) AS outbound_packets, IF(client_zone = \'internal\' AND server_zone = \'internal\' , SUM(received_bytes + sent_bytes),0) AS internal_bytes, IF(client_zone = \'internal\' AND server_zone = \'internal\' , SUM(received_pkts + sent_pkts), 0) AS internal_packets, IF(client_zone = \'external\' AND server_zone = \'external\' , SUM(received_bytes + sent_bytes),0) AS through_bytes, IF(client_zone = \'external\' AND server_zone = \'external\' , SUM(received_pkts + sent_pkts), 0) AS through_packets FROM session_record_cn WHERE recv_time >= toDateTime(1692854020) AND recv_time < toDateTime(1692857620) AND notEmpty(client_super_admin_area) AND client_country_region = \'China\' AND server_ip = \'192.0.2.3\' GROUP BY country_region,super_admin_area,client_zone,server_zone ORDER BY total_bytes desc &format=json&option=real_time\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"msg\",\n \"value\" : \"OK\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandle\' as preHandle;\r\nimport \'@/pre/typeHandle4th\' as typeHandle4th;\r\nimport \'@/public/toHump\' as toHump\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\nimport \'@/public/orderHandle\' as orderHandle\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"params\":params,\r\n \"type\":type,\r\n \"country\":countryRegion,\r\n \"typeVal\":typeVal\r\n}\r\nparameter.orderBy = orderHandle(parameter.orderBy);\r\npreHandle(parameter);\r\ntypeHandle4th(parameter);\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"SELECT client_country_region AS country_region, client_super_admin_area AS super_admin_area, SUM(received_bytes + sent_bytes) AS total_bytes, SUM(received_pkts + sent_pkts) AS total_packets, SUM(sessions) AS sessions, IF(client_zone = \'internal\' AND server_zone = \'external\' , SUM(received_bytes), IF(client_zone = \'external\' AND server_zone = \'internal\', SUM(sent_bytes), 0)) AS inbound_bytes, IF(client_zone = \'internal\' AND server_zone = \'external\' , SUM(received_pkts), IF(client_zone = \'external\' AND server_zone = \'internal\', SUM(sent_pkts), 0)) AS inbound_packets, IF(client_zone = \'external\' AND server_zone = \'internal\' , SUM(received_bytes), IF(client_zone = \'internal\' AND server_zone = \'external\', SUM(sent_bytes), 0)) AS outbound_bytes, IF(client_zone = \'external\' AND server_zone = \'internal\' , SUM(received_pkts), IF(client_zone = \'internal\' AND server_zone = \'external\', SUM(sent_pkts), 0)) AS outbound_packets, IF(client_zone = \'internal\' AND server_zone = \'internal\' , SUM(received_bytes + sent_bytes),0) AS internal_bytes, IF(client_zone = \'internal\' AND server_zone = \'internal\' , SUM(received_pkts + sent_pkts), 0) AS internal_packets, IF(client_zone = \'external\' AND server_zone = \'external\' , SUM(received_bytes + sent_bytes),0) AS through_bytes, IF(client_zone = \'external\' AND server_zone = \'external\' , SUM(received_pkts + sent_pkts), 0) AS through_packets FROM session_record_cn WHERE recv_time >= ${startTime} AND recv_time < ${endTime} AND notEmpty(client_super_admin_area) AND client_country_region = \'${country}\' AND ${dimension} = \'${typeVal}\' GROUP BY country_region,super_admin_area,client_zone,server_zone <#if orderBy?default(\'\')?trim? length gt 0> ORDER BY ${orderBy} desc <#else> ORDER BY total_bytes desc </#if> <#if limit?default(\'\')?trim? length gt 0> LIMIT ${limit} </#if>\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"applicationPerformanceOverviewDrilldownDimensionClientLocationsCountryTrafficAnalysis\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar result = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nif(result.success){\r\n var o={};\r\n o.resultType=\"table\";\r\n o.result=result.data;\r\n if(o.result.length > 0){\r\n for(i,j in o.result){\r\n var pojo = o.result[i];\r\n var tempObj= {};\r\n for (key,value in pojo){\r\n var tempKey = toHump(key);\r\n tempObj[tempKey] = pojo[key];\r\n if(key.indexOf(\"total_bytes\") != -1){\r\n tempObj[\'totalBitsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2).asDouble() * 8\r\n }else if(key.indexOf(\"total_packets\") != -1){\r\n tempObj[\'totalPacketsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }else if(key.indexOf(\"total_sessions\") != -1){\r\n tempObj[\'totalSessionsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }else if(key.indexOf(\"inbound_bytes\") != -1){\r\n tempObj[\'inboundBitsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2).asDouble() * 8\r\n }else if(key.indexOf(\"inbound_packets\") != -1){\r\n tempObj[\'inboundPacketsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }else if(key.indexOf(\"outbound_bytes\") != -1){\r\n tempObj[\'outboundBitsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2).asDouble() * 8\r\n }else if(key.indexOf(\"outbound_packets\") != -1){\r\n tempObj[\'outboundPacketsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }else if(key.indexOf(\"internal_bytes\") != -1){\r\n tempObj[\'internalBitsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2).asDouble() * 8\r\n }else if(key.indexOf(\"internal_packets\") != -1){\r\n tempObj[\'internalPacketsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }else if(key.indexOf(\"through_bytes\") != -1){\r\n tempObj[\'throughBitsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2).asDouble() * 8\r\n }else if(key.indexOf(\"through_packets\") != -1){\r\n tempObj[\'throughPacketsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }else if(key.indexOf(\"sessions\") != -1){\r\n tempObj[\'sessionsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }\r\n }\r\n var config1 = \"\"\"\r\n select value from sys_dict where type = \'areaMapping\' and code = \'1\'\r\n \"\"\"\r\n var json = db.select(config1);\r\n var str1 = json.value;\r\n var index = str1.indexOf(\"{\");\r\n str1 = str1.substring(index-1);\r\n var countryCodeMap = str1::json;\r\n tempObj.serverId = countryCodeMap[tempObj.countryRegion];\r\n \r\n if(!tempObj.serverId) {\r\n tempObj.serverId = \"\";\r\n }else{\r\n // 存在地区 \r\n var config1 = \"\"\"\r\n select value from sys_dict where type = \'areaMapping\' and code = \'2\'\r\n \"\"\"\r\n var json = db.select(config1);\r\n var str2 = json.value;\r\n var index = str2.indexOf(\"{\");\r\n str2 = str2.substring(index-1);\r\n var countCityMap = str2::json;\r\n if(tempObj.superAdminArea){\r\n var regionCode = countCityMap[tempObj.serverId][tempObj.superAdminArea];\r\n if(regionCode){\r\n tempObj.serverId = regionCode;\r\n }\r\n }\r\n }\r\n o.result[i] = tempObj;\r\n }\r\n }\r\n result.code=200;\r\n result.data=o;\r\n result.msg = result.message;\r\n result.message=null;\r\n}\r\n\r\nreturn result;');
INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/drilldown/dimension/clientLocations/group.json', '{\n \"properties\" : { },\n \"id\" : \"6840e4616bf3473d8cd530e3ebd0d8ed\",\n \"name\" : \"clientLocations\",\n \"type\" : \"api\",\n \"parentId\" : \"972eeb1e071d495bae979b454ef98340\",\n \"path\" : \"/clientLocations\",\n \"createTime\" : 1673341947866,\n \"updateTime\" : null,\n \"createBy\" : \"th\",\n \"updateBy\" : null,\n \"paths\" : [ ],\n \"options\" : [ ]\n}');
INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/drilldown/dimension/clientLocations/province/', 'this is directory');
INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/drilldown/dimension/clientLocations/province/group.json', '{\n \"properties\" : { },\n \"id\" : \"e1ee981f9a3a4e9aacc8beea19e013bb\",\n \"name\" : \"province\",\n \"type\" : \"api\",\n \"parentId\" : \"6840e4616bf3473d8cd530e3ebd0d8ed\",\n \"path\" : \"/province\",\n \"createTime\" : 1673341958423,\n \"updateTime\" : null,\n \"createBy\" : \"th\",\n \"updateBy\" : null,\n \"paths\" : [ ],\n \"options\" : [ ]\n}');
INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/drilldown/dimension/clientLocations/province/HTTP响应延迟.ms', '{\n \"properties\" : { },\n \"id\" : \"copy1673342546214d97292\",\n \"script\" : null,\n \"groupId\" : \"e1ee981f9a3a4e9aacc8beea19e013bb\",\n \"name\" : \"HTTP响应延迟\",\n \"createTime\" : null,\n \"updateTime\" : 1696848163518,\n \"lock\" : null,\n \"createBy\" : \"th\",\n \"updateBy\" : \"admin\",\n \"path\" : \"/httpResponseDelay\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1673339501\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1673425901\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"params\",\n \"value\" : \"\'吐鲁番\',\'伊犁\'\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"type\",\n \"value\" : \"ip\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"countryRegion\",\n \"value\" : \"China\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"superAdminArea\",\n \"value\" : \"Xinjiang\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"typeVal\",\n \"value\" : \"116.178.236.216\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"status\\\": 200,\\n \\\"code\\\": 200,\\n \\\"queryKey\\\": \\\"8ebb5a83f32d214d68f8ee44eb9aa161\\\",\\n \\\"success\\\": true,\\n \\\"message\\\": null,\\n \\\"statistics\\\": {\\n \\\"elapsed\\\": 0,\\n \\\"rows_read\\\": 0,\\n \\\"bytes_read\\\": 0,\\n \\\"result_size\\\": 0,\\n \\\"result_rows\\\": 0\\n },\\n \\\"job\\\": null,\\n \\\"formatType\\\": \\\"json\\\",\\n \\\"meta\\\": [{\\n \\\"name\\\": \\\"country_region\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Dimension\\\"\\n }, {\\n \\\"name\\\": \\\"super_admin_area\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Dimension\\\"\\n }, {\\n \\\"name\\\": \\\"admin_area\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Dimension\\\"\\n }, {\\n \\\"name\\\": \\\"http_response_latency\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }],\\n \\\"data\\\": {\\n \\\"resultType\\\": \\\"table\\\",\\n \\\"result\\\": []\\n },\\n \\\"originalUrl\\\": \\\"http://192.168.44.55:9999/?query=SELECT client_country_region AS country_region, client_super_admin_area AS super_admin_area, client_admin_area AS admin_area, ROUND(AVG(http_response_latency_ms)) AS http_response_latency FROM session_record_cn WHERE recv_time >= 1673339501 AND recv_time < 1673425901 AND decoded_as = \'HTTP\' AND client_super_admin_area IN ( \'Xinjiang\',\'Beijing\' ) AND client_country_region = \'China\' AND client_super_admin_area = \'Xinjiang\' AND server_ip = \'116.178.236.216\' GROUP BY country_region,super_admin_area,admin_area&format=json&option=real_time\\\",\\n \\\"msg\\\": \\\"OK\\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"status\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"code\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"queryKey\",\n \"value\" : \"8ebb5a83f32d214d68f8ee44eb9aa161\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"success\",\n \"value\" : \"true\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Boolean\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"statistics\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"elapsed\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"rows_read\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"bytes_read\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_size\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_rows\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"job\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"formatType\",\n \"value\" : \"json\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"meta\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"name\",\n \"value\" : \"country_region\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"type\",\n \"value\" : \"string\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"category\",\n \"value\" : \"Dimension\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"data\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"resultType\",\n \"value\" : \"table\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"originalUrl\",\n \"value\" : \"http://192.168.44.55:9999/?query=SELECT client_country_region AS country_region, client_super_admin_area AS super_admin_area, client_admin_area AS admin_area, ROUND(AVG(http_response_latency_ms)) AS http_response_latency FROM session_record_cn WHERE recv_time >= 1673339501 AND recv_time < 1673425901 AND decoded_as = \'HTTP\' AND client_super_admin_area IN ( \'Xinjiang\',\'Beijing\' ) AND client_country_region = \'China\' AND client_super_admin_area = \'Xinjiang\' AND server_ip = \'116.178.236.216\' GROUP BY country_region,super_admin_area,admin_area&format=json&option=real_time\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"msg\",\n \"value\" : \"OK\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandleNone\' as preHandle;\r\nimport \'@/pre/typeHandle4th\' as typeHandle4th;\r\nimport \'@/post/table\' as objHandle\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\n\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"params\":params,\r\n \"type\":type,\r\n \"country\":countryRegion,\r\n \"province\":superAdminArea,\r\n \"typeVal\":typeVal\r\n}\r\n\r\npreHandle(parameter);\r\ntypeHandle4th(parameter);\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"SELECT client_country_region AS country_region, client_super_admin_area AS super_admin_area, client_admin_area AS admin_area, ROUND(AVG(http_response_latency_ms)) AS http_response_latency FROM session_record_cn WHERE recv_time >= ${startTime} AND recv_time < ${endTime} AND l7_protocol = \'HTTP\' AND http_response_latency_ms != 0 AND client_admin_area IN ( <#if params?default(\'\')?trim? length gt 0> ${params} </#if> ) AND client_country_region = \'${country}\' AND client_super_admin_area = \'${province}\' AND ${dimension} = \'${typeVal}\' GROUP BY country_region,super_admin_area,admin_area\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"applicationPerformanceOverviewDrilldownDimensionClientLocationsProvinceHttpResponseDelay\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar galaxyRes = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nvar result = objHandle(galaxyRes);\r\n\r\nreturn result;');
INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/drilldown/dimension/clientLocations/province/SSL握手延迟.ms', '{\n \"properties\" : { },\n \"id\" : \"56808c29dc3845e590c521feb33fb1a0\",\n \"script\" : null,\n \"groupId\" : \"e1ee981f9a3a4e9aacc8beea19e013bb\",\n \"name\" : \"SSL握手延迟\",\n \"createTime\" : null,\n \"updateTime\" : 1696846513953,\n \"lock\" : null,\n \"createBy\" : null,\n \"updateBy\" : \"admin\",\n \"path\" : \"/sslConDelay\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1673339501\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1673425901\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"params\",\n \"value\" : \"\'吐鲁番\',\'伊犁\'\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"type\",\n \"value\" : \"ip\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"countryRegion\",\n \"value\" : \"China\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"superAdminArea\",\n \"value\" : \"Xinjiang\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"typeVal\",\n \"value\" : \"116.178.236.216\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"status\\\": 200,\\n \\\"code\\\": 200,\\n \\\"queryKey\\\": \\\"f8592e39833276c1aa898e946a7c98cb\\\",\\n \\\"success\\\": true,\\n \\\"message\\\": null,\\n \\\"statistics\\\": {\\n \\\"elapsed\\\": 123,\\n \\\"rows_read\\\": 2563196,\\n \\\"bytes_read\\\": 253560819,\\n \\\"result_size\\\": 0,\\n \\\"result_rows\\\": 0\\n },\\n \\\"job\\\": null,\\n \\\"formatType\\\": \\\"json\\\",\\n \\\"meta\\\": [{\\n \\\"name\\\": \\\"country\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Dimension\\\"\\n }, {\\n \\\"name\\\": \\\"province\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Dimension\\\"\\n }, {\\n \\\"name\\\": \\\"city\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Dimension\\\"\\n }, {\\n \\\"name\\\": \\\"ssl_con_latency\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }],\\n \\\"data\\\": {\\n \\\"resultType\\\": \\\"table\\\",\\n \\\"result\\\": []\\n },\\n \\\"msg\\\": \\\"OK\\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"status\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"code\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"queryKey\",\n \"value\" : \"f8592e39833276c1aa898e946a7c98cb\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"success\",\n \"value\" : \"true\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Boolean\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"statistics\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"elapsed\",\n \"value\" : \"123\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"rows_read\",\n \"value\" : \"2563196\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"bytes_read\",\n \"value\" : \"253560819\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_size\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_rows\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"job\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"formatType\",\n \"value\" : \"json\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"meta\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"name\",\n \"value\" : \"country\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"type\",\n \"value\" : \"string\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"category\",\n \"value\" : \"Dimension\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"data\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"resultType\",\n \"value\" : \"table\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"msg\",\n \"value\" : \"OK\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandleNone\' as preHandle;\r\nimport \'@/pre/typeHandle4th\' as typeHandle4th;\r\nimport \'@/post/table\' as objHandle\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\n\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"params\":params,\r\n \"type\":type,\r\n \"country\":countryRegion,\r\n \"province\":superAdminArea,\r\n \"typeVal\":typeVal\r\n}\r\n\r\npreHandle(parameter);\r\ntypeHandle4th(parameter);\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"SELECT client_country_region AS country_region, client_super_admin_area AS super_admin_area, client_admin_area AS admin_area, ROUND(AVG(ssl_handshake_latency_ms)) AS ssl_con_latency FROM session_record_cn WHERE recv_time >= ${startTime} AND recv_time < ${endTime} AND l7_protocol = \'SSL\' AND ssl_handshake_latency_ms != 0 AND client_admin_area IN ( <#if params?default(\'\')?trim? length gt 0> ${params} </#if> ) AND client_country_region = \'${country}\' AND client_super_admin_area = \'${province}\' AND ${dimension} = \'${typeVal}\' GROUP BY country_region,super_admin_area,admin_area\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"applicationPerformanceOverviewDrilldownDimensionClientLocationsProvinceSslConDelay\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar galaxyRes = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nvar result = objHandle(galaxyRes);\r\n\r\nreturn result;');
-INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/drilldown/dimension/clientLocations/province/TCP会话创建延迟.ms', '{\n \"properties\" : { },\n \"id\" : \"copy1673342623476d24306\",\n \"script\" : null,\n \"groupId\" : \"e1ee981f9a3a4e9aacc8beea19e013bb\",\n \"name\" : \"TCP会话创建延迟\",\n \"createTime\" : null,\n \"updateTime\" : 1692931602733,\n \"lock\" : null,\n \"createBy\" : \"th\",\n \"updateBy\" : \"ljy\",\n \"path\" : \"/tcpSessionDelay\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1673339501\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1673425901\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"params\",\n \"value\" : \"\'吐鲁番\',\'伊犁\'\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"type\",\n \"value\" : \"ip\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"countryRegion\",\n \"value\" : \"China\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"superAdminArea\",\n \"value\" : \"Xinjiang\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"typeVal\",\n \"value\" : \"116.178.236.216\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"status\\\": 200,\\n \\\"code\\\": 200,\\n \\\"queryKey\\\": \\\"312b32877ea4b685af0f7fa1187ebaf6\\\",\\n \\\"success\\\": true,\\n \\\"message\\\": null,\\n \\\"statistics\\\": {\\n \\\"elapsed\\\": 88,\\n \\\"rows_read\\\": 2558973,\\n \\\"bytes_read\\\": 438718916,\\n \\\"result_size\\\": 128,\\n \\\"result_rows\\\": 1\\n },\\n \\\"job\\\": null,\\n \\\"formatType\\\": \\\"json\\\",\\n \\\"meta\\\": [{\\n \\\"name\\\": \\\"country\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Dimension\\\"\\n }, {\\n \\\"name\\\": \\\"province\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Dimension\\\"\\n }, {\\n \\\"name\\\": \\\"city\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Dimension\\\"\\n }, {\\n \\\"name\\\": \\\"establish_latency_ms\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"tcp_lostlen_percent\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"pkt_retrans_percent\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }],\\n \\\"data\\\": {\\n \\\"resultType\\\": \\\"object\\\",\\n \\\"result\\\": {\\n \\\"country\\\": \\\"China\\\",\\n \\\"province\\\": \\\"Xinjiang\\\",\\n \\\"city\\\": \\\"克拉玛依\\\",\\n \\\"establishLatencyMs\\\": 28,\\n \\\"tcpLostlenPercent\\\": 0.0077,\\n \\\"pktRetransPercent\\\": 0.0206\\n }\\n },\\n \\\"msg\\\": \\\"OK\\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"status\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"code\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"queryKey\",\n \"value\" : \"312b32877ea4b685af0f7fa1187ebaf6\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"success\",\n \"value\" : \"true\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Boolean\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"statistics\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"elapsed\",\n \"value\" : \"88\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"rows_read\",\n \"value\" : \"2558973\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"bytes_read\",\n \"value\" : \"438718916\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_size\",\n \"value\" : \"128\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_rows\",\n \"value\" : \"1\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"job\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"formatType\",\n \"value\" : \"json\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"meta\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"name\",\n \"value\" : \"country\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"type\",\n \"value\" : \"string\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"category\",\n \"value\" : \"Dimension\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"data\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"resultType\",\n \"value\" : \"object\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"country\",\n \"value\" : \"China\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"province\",\n \"value\" : \"Xinjiang\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"city\",\n \"value\" : \"克拉玛依\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"establishLatencyMs\",\n \"value\" : \"28\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"tcpLostlenPercent\",\n \"value\" : \"0.0077\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Double\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"pktRetransPercent\",\n \"value\" : \"0.0206\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Double\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"msg\",\n \"value\" : \"OK\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandle\' as preHandle;\r\nimport \'@/pre/typeHandle4th\' as typeHandle4th;\r\nimport \'@/post/table\' as objHandle\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\n\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"params\":params,\r\n \"type\":type,\r\n \"country\":countryRegion,\r\n \"province\":superAdminArea,\r\n \"typeVal\":typeVal\r\n}\r\n\r\npreHandle(parameter);\r\ntypeHandle4th(parameter);\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"SELECT client_country_region AS country_region, client_super_admin_area AS super_admin_area, client_admin_area AS admin_area, ROUND(AVG(tcp_rtt_ms)) AS establish_latency_ms, ROUND(SUM(tcp_c2s_lost_bytes + tcp_s2c_lost_bytes)/SUM(sent_bytes + received_bytes + tcp_c2s_lost_bytes + tcp_s2c_lost_bytes),4) AS tcp_lostlen_percent, ROUND(SUM(tcp_c2s_rtx_pkts + tcp_s2c_rtx_pkts)/ SUM(sent_pkts + received_pkts),4) AS pkt_retrans_percent FROM session_record_cn WHERE recv_time >= ${startTime} AND recv_time < ${endTime} AND decoded_path IN (\'IPv4_TCP\', \'IPv6_TCP\') <#if params?default(\'\')?trim? length gt 0>AND client_admin_area IN ( ${params} )</#if> AND client_country_region = \'${country}\' AND client_super_admin_area = \'${province}\' AND ${dimension} = \'${typeVal}\' GROUP BY country_region,super_admin_area,admin_area\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"applicationPerformanceOverviewDrilldownDimensionClientLocationsProvinceTcpSessionDelay\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar galaxyRes = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nvar result = objHandle(galaxyRes);\r\n\r\nreturn result;');
+INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/drilldown/dimension/clientLocations/province/TCP会话创建延迟.ms', '{\n \"properties\" : { },\n \"id\" : \"copy1673342623476d24306\",\n \"script\" : null,\n \"groupId\" : \"e1ee981f9a3a4e9aacc8beea19e013bb\",\n \"name\" : \"TCP会话创建延迟\",\n \"createTime\" : null,\n \"updateTime\" : 1717647065233,\n \"lock\" : null,\n \"createBy\" : \"th\",\n \"updateBy\" : null,\n \"path\" : \"/tcpSessionDelay\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1717639552\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1717643152\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"params\",\n \"value\" : \"\'吐鲁番\',\'伊犁\'\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"type\",\n \"value\" : \"ip\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"countryRegion\",\n \"value\" : \"China\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"superAdminArea\",\n \"value\" : \"Xinjiang\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"typeVal\",\n \"value\" : \"116.178.236.216\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"status\\\": 200,\\n \\\"code\\\": 200,\\n \\\"queryKey\\\": \\\"312b32877ea4b685af0f7fa1187ebaf6\\\",\\n \\\"success\\\": true,\\n \\\"message\\\": null,\\n \\\"statistics\\\": {\\n \\\"elapsed\\\": 88,\\n \\\"rows_read\\\": 2558973,\\n \\\"bytes_read\\\": 438718916,\\n \\\"result_size\\\": 128,\\n \\\"result_rows\\\": 1\\n },\\n \\\"job\\\": null,\\n \\\"formatType\\\": \\\"json\\\",\\n \\\"meta\\\": [{\\n \\\"name\\\": \\\"country\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Dimension\\\"\\n }, {\\n \\\"name\\\": \\\"province\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Dimension\\\"\\n }, {\\n \\\"name\\\": \\\"city\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Dimension\\\"\\n }, {\\n \\\"name\\\": \\\"establish_latency_ms\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"tcp_lostlen_percent\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"pkt_retrans_percent\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }],\\n \\\"data\\\": {\\n \\\"resultType\\\": \\\"object\\\",\\n \\\"result\\\": {\\n \\\"country\\\": \\\"China\\\",\\n \\\"province\\\": \\\"Xinjiang\\\",\\n \\\"city\\\": \\\"克拉玛依\\\",\\n \\\"establishLatencyMs\\\": 28,\\n \\\"tcpLostlenPercent\\\": 0.0077,\\n \\\"pktRetransPercent\\\": 0.0206\\n }\\n },\\n \\\"msg\\\": \\\"OK\\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"status\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"code\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"queryKey\",\n \"value\" : \"312b32877ea4b685af0f7fa1187ebaf6\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"success\",\n \"value\" : \"true\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Boolean\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"statistics\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"elapsed\",\n \"value\" : \"88\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"rows_read\",\n \"value\" : \"2558973\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"bytes_read\",\n \"value\" : \"438718916\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_size\",\n \"value\" : \"128\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_rows\",\n \"value\" : \"1\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"job\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"formatType\",\n \"value\" : \"json\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"meta\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"name\",\n \"value\" : \"country\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"type\",\n \"value\" : \"string\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"category\",\n \"value\" : \"Dimension\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"data\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"resultType\",\n \"value\" : \"object\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"country\",\n \"value\" : \"China\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"province\",\n \"value\" : \"Xinjiang\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"city\",\n \"value\" : \"克拉玛依\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"establishLatencyMs\",\n \"value\" : \"28\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"tcpLostlenPercent\",\n \"value\" : \"0.0077\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Double\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"pktRetransPercent\",\n \"value\" : \"0.0206\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Double\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"msg\",\n \"value\" : \"OK\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandle\' as preHandle;\r\nimport \'@/pre/typeHandle4th\' as typeHandle4th;\r\nimport \'@/post/table\' as objHandle\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\n\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"params\":params,\r\n \"type\":type,\r\n \"country\":countryRegion,\r\n \"province\":superAdminArea,\r\n \"typeVal\":typeVal\r\n}\r\n\r\npreHandle(parameter);\r\ntypeHandle4th(parameter);\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"SELECT client_country_region AS country_region, client_super_admin_area AS super_admin_area, client_admin_area AS admin_area, ROUND(AVG(tcp_rtt_ms)) AS establish_latency_ms, ROUND(SUM(tcp_c2s_lost_bytes + tcp_s2c_lost_bytes)/SUM(sent_bytes + received_bytes + tcp_c2s_lost_bytes + tcp_s2c_lost_bytes),4) AS tcp_lostlen_percent, ROUND(SUM(tcp_c2s_rtx_pkts + tcp_s2c_rtx_pkts)/ SUM(sent_pkts + received_pkts),4) AS pkt_retrans_percent FROM session_record_cn WHERE recv_time >= ${startTime} AND recv_time < ${endTime} AND ip_protocol IN (\'tcp\') <#if params?default(\'\')?trim? length gt 0>AND client_admin_area IN ( ${params} )</#if> AND client_country_region = \'${country}\' AND client_super_admin_area = \'${province}\' AND ${dimension} = \'${typeVal}\' GROUP BY country_region,super_admin_area,admin_area\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"applicationPerformanceOverviewDrilldownDimensionClientLocationsProvinceTcpSessionDelay\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar galaxyRes = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nvar result = objHandle(galaxyRes);\r\n\r\nreturn result;');
INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/drilldown/dimension/clientLocations/province/流量统计.ms', '{\n \"properties\" : { },\n \"id\" : \"copy1673342688883d42162\",\n \"script\" : null,\n \"groupId\" : \"e1ee981f9a3a4e9aacc8beea19e013bb\",\n \"name\" : \"流量统计\",\n \"createTime\" : null,\n \"updateTime\" : 1692931650603,\n \"lock\" : null,\n \"createBy\" : \"th\",\n \"updateBy\" : \"ljy\",\n \"path\" : \"/trafficAnalysis\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1692854020\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1692857620\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"type\",\n \"value\" : \"ip\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"countryRegion\",\n \"value\" : \"China\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"superAdminArea\",\n \"value\" : \"Beijing\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"typeVal\",\n \"value\" : \"116.178.236.216\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"orderBy\",\n \"value\" : \"totalBytes\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"status\\\": 200,\\n \\\"code\\\": 200,\\n \\\"queryKey\\\": \\\"9c1b3732bdae7c988012c6e354625cc8\\\",\\n \\\"success\\\": true,\\n \\\"message\\\": null,\\n \\\"statistics\\\": {\\n \\\"elapsed\\\": 0,\\n \\\"rows_read\\\": 0,\\n \\\"bytes_read\\\": 0,\\n \\\"result_size\\\": 0,\\n \\\"result_rows\\\": 0\\n },\\n \\\"job\\\": null,\\n \\\"formatType\\\": \\\"json\\\",\\n \\\"meta\\\": [{\\n \\\"name\\\": \\\"country_region\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Dimension\\\"\\n }, {\\n \\\"name\\\": \\\"super_admin_area\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Dimension\\\"\\n }, {\\n \\\"name\\\": \\\"admin_area\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Dimension\\\"\\n }, {\\n \\\"name\\\": \\\"total_bytes\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"total_packets\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"sessions\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"inbound_bytes\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"inbound_packets\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"outbound_bytes\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"outbound_packets\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"internal_bytes\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"internal_packets\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"through_bytes\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"through_packets\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }],\\n \\\"data\\\": {\\n \\\"resultType\\\": \\\"table\\\",\\n \\\"result\\\": []\\n },\\n \\\"originalUrl\\\": \\\"http://192.168.44.55:9999/?query=SELECT client_country_region AS country_region, client_super_admin_area AS super_admin_area, client_admin_area AS admin_area, SUM(received_bytes + sent_bytes) AS total_bytes, SUM(received_pkts + sent_pkts) AS total_packets, SUM(sessions) AS sessions, IF(client_zone = \'internal\' AND server_zone = \'external\' , SUM(received_bytes), IF(client_zone = \'external\' AND server_zone = \'internal\', SUM(sent_bytes), 0)) AS inbound_bytes, IF(client_zone = \'internal\' AND server_zone = \'external\' , SUM(received_pkts), IF(client_zone = \'external\' AND server_zone = \'internal\', SUM(sent_pkts), 0)) AS inbound_packets, IF(client_zone = \'external\' AND server_zone = \'internal\' , SUM(received_bytes), IF(client_zone = \'internal\' AND server_zone = \'external\', SUM(sent_bytes), 0)) AS outbound_bytes, IF(client_zone = \'external\' AND server_zone = \'internal\' , SUM(received_pkts), IF(client_zone = \'internal\' AND server_zone = \'external\', SUM(sent_pkts), 0)) AS outbound_packets, IF(client_zone = \'internal\' AND server_zone = \'internal\' , SUM(received_bytes + sent_bytes),0) AS internal_bytes, IF(client_zone = \'internal\' AND server_zone = \'internal\' , SUM(received_pkts + sent_pkts), 0) AS internal_packets, IF(client_zone = \'external\' AND server_zone = \'external\' , SUM(received_bytes + sent_bytes),0) AS through_bytes, IF(client_zone = \'external\' AND server_zone = \'external\' , SUM(received_pkts + sent_pkts), 0) AS through_packets FROM session_record_cn WHERE recv_time >= toDateTime(1692854020) AND recv_time < toDateTime(1692857620) AND notEmpty(client_admin_area) AND client_country_region = \'China\' AND client_super_admin_area = \'Beijing\' AND server_ip = \'116.178.236.216\' GROUP BY country_region,super_admin_area,admin_area,client_zone,server_zone ORDER BY total_bytes desc &format=json&option=real_time\\\",\\n \\\"msg\\\": \\\"OK\\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"status\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"code\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"queryKey\",\n \"value\" : \"9c1b3732bdae7c988012c6e354625cc8\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"success\",\n \"value\" : \"true\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Boolean\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"statistics\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"elapsed\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"rows_read\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"bytes_read\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_size\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_rows\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"job\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"formatType\",\n \"value\" : \"json\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"meta\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"name\",\n \"value\" : \"country_region\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"type\",\n \"value\" : \"string\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"category\",\n \"value\" : \"Dimension\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"data\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"resultType\",\n \"value\" : \"table\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"originalUrl\",\n \"value\" : \"http://192.168.44.55:9999/?query=SELECT client_country_region AS country_region, client_super_admin_area AS super_admin_area, client_admin_area AS admin_area, SUM(received_bytes + sent_bytes) AS total_bytes, SUM(received_pkts + sent_pkts) AS total_packets, SUM(sessions) AS sessions, IF(client_zone = \'internal\' AND server_zone = \'external\' , SUM(received_bytes), IF(client_zone = \'external\' AND server_zone = \'internal\', SUM(sent_bytes), 0)) AS inbound_bytes, IF(client_zone = \'internal\' AND server_zone = \'external\' , SUM(received_pkts), IF(client_zone = \'external\' AND server_zone = \'internal\', SUM(sent_pkts), 0)) AS inbound_packets, IF(client_zone = \'external\' AND server_zone = \'internal\' , SUM(received_bytes), IF(client_zone = \'internal\' AND server_zone = \'external\', SUM(sent_bytes), 0)) AS outbound_bytes, IF(client_zone = \'external\' AND server_zone = \'internal\' , SUM(received_pkts), IF(client_zone = \'internal\' AND server_zone = \'external\', SUM(sent_pkts), 0)) AS outbound_packets, IF(client_zone = \'internal\' AND server_zone = \'internal\' , SUM(received_bytes + sent_bytes),0) AS internal_bytes, IF(client_zone = \'internal\' AND server_zone = \'internal\' , SUM(received_pkts + sent_pkts), 0) AS internal_packets, IF(client_zone = \'external\' AND server_zone = \'external\' , SUM(received_bytes + sent_bytes),0) AS through_bytes, IF(client_zone = \'external\' AND server_zone = \'external\' , SUM(received_pkts + sent_pkts), 0) AS through_packets FROM session_record_cn WHERE recv_time >= toDateTime(1692854020) AND recv_time < toDateTime(1692857620) AND notEmpty(client_admin_area) AND client_country_region = \'China\' AND client_super_admin_area = \'Beijing\' AND server_ip = \'116.178.236.216\' GROUP BY country_region,super_admin_area,admin_area,client_zone,server_zone ORDER BY total_bytes desc &format=json&option=real_time\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"msg\",\n \"value\" : \"OK\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandle\' as preHandle;\r\nimport \'@/pre/typeHandle4th\' as typeHandle4th;\r\nimport \'@/public/toHump\' as toHump\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\nimport \'@/public/orderHandle\' as orderHandle\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"orderBy\":orderBy,\r\n \"type\":type,\r\n \"country\":countryRegion,\r\n \"province\":superAdminArea,\r\n \"typeVal\":typeVal\r\n}\r\nparameter.orderBy = orderHandle(parameter.orderBy);\r\npreHandle(parameter);\r\ntypeHandle4th(parameter);\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"SELECT client_country_region AS country_region, client_super_admin_area AS super_admin_area, client_admin_area AS admin_area, SUM(received_bytes + sent_bytes) AS total_bytes, SUM(received_pkts + sent_pkts) AS total_packets, SUM(sessions) AS sessions, IF(client_zone = \'internal\' AND server_zone = \'external\' , SUM(received_bytes), IF(client_zone = \'external\' AND server_zone = \'internal\', SUM(sent_bytes), 0)) AS inbound_bytes, IF(client_zone = \'internal\' AND server_zone = \'external\' , SUM(received_pkts), IF(client_zone = \'external\' AND server_zone = \'internal\', SUM(sent_pkts), 0)) AS inbound_packets, IF(client_zone = \'external\' AND server_zone = \'internal\' , SUM(received_bytes), IF(client_zone = \'internal\' AND server_zone = \'external\', SUM(sent_bytes), 0)) AS outbound_bytes, IF(client_zone = \'external\' AND server_zone = \'internal\' , SUM(received_pkts), IF(client_zone = \'internal\' AND server_zone = \'external\', SUM(sent_pkts), 0)) AS outbound_packets, IF(client_zone = \'internal\' AND server_zone = \'internal\' , SUM(received_bytes + sent_bytes),0) AS internal_bytes, IF(client_zone = \'internal\' AND server_zone = \'internal\' , SUM(received_pkts + sent_pkts), 0) AS internal_packets, IF(client_zone = \'external\' AND server_zone = \'external\' , SUM(received_bytes + sent_bytes),0) AS through_bytes, IF(client_zone = \'external\' AND server_zone = \'external\' , SUM(received_pkts + sent_pkts), 0) AS through_packets FROM session_record_cn WHERE recv_time >= ${startTime} AND recv_time < ${endTime} AND notEmpty(client_admin_area) AND client_country_region = \'${country}\' AND client_super_admin_area = \'${province}\' AND ${dimension} = \'${typeVal}\' GROUP BY country_region,super_admin_area,admin_area,client_zone,server_zone <#if orderBy?default(\'\')?trim? length gt 0> ORDER BY ${orderBy} desc <#else> ORDER BY total_bytes desc </#if> <#if limit?default(\'\')?trim? length gt 0> LIMIT ${limit} </#if>\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"applicationPerformanceOverviewDrilldownDimensionClientLocationsProvinceTrafficAnalysis\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar result = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nif(result.success){\r\n var o={};\r\n o.resultType=\"table\";\r\n o.result=result.data;\r\n if(o.result.length > 0){\r\n for(i,j in o.result){\r\n var pojo = o.result[i];\r\n var tempObj= {};\r\n for (key,value in pojo){\r\n var tempKey = toHump(key);\r\n tempObj[tempKey] = pojo[key];\r\n if(key.indexOf(\"total_bytes\") != -1){\r\n tempObj[\'totalBitsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2).asDouble() * 8\r\n }else if(key.indexOf(\"total_packets\") != -1){\r\n tempObj[\'totalPacketsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }else if(key.indexOf(\"total_sessions\") != -1){\r\n tempObj[\'totalSessionsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }else if(key.indexOf(\"inbound_bytes\") != -1){\r\n tempObj[\'inboundBitsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2).asDouble() * 8\r\n }else if(key.indexOf(\"inbound_packets\") != -1){\r\n tempObj[\'inboundPacketsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }else if(key.indexOf(\"outbound_bytes\") != -1){\r\n tempObj[\'outboundBitsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2).asDouble() * 8\r\n }else if(key.indexOf(\"outbound_packets\") != -1){\r\n tempObj[\'outboundPacketsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }else if(key.indexOf(\"internal_bytes\") != -1){\r\n tempObj[\'internalBitsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2).asDouble() * 8\r\n }else if(key.indexOf(\"internal_packets\") != -1){\r\n tempObj[\'internalPacketsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }else if(key.indexOf(\"through_bytes\") != -1){\r\n tempObj[\'throughBitsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2).asDouble() * 8\r\n }else if(key.indexOf(\"through_packets\") != -1){\r\n tempObj[\'throughPacketsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }else if(key.indexOf(\"sessions\") != -1){\r\n tempObj[\'sessionsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }\r\n }\r\n var config1 = \"\"\"\r\n select value from sys_dict where type = \'areaMapping\' and code = \'1\'\r\n \"\"\"\r\n var json = db.select(config1);\r\n var str1 = json.value;\r\n var index = str1.indexOf(\"{\");\r\n str1 = str1.substring(index-1);\r\n var countryCodeMap = str1::json;\r\n tempObj.serverId = countryCodeMap[tempObj.countryRegion];\r\n \r\n if(!tempObj.serverId) {\r\n tempObj.serverId = \"\";\r\n }else{\r\n // 存在地区 \r\n var config1 = \"\"\"\r\n select value from sys_dict where type = \'areaMapping\' and code = \'2\'\r\n \"\"\"\r\n var json = db.select(config1);\r\n var str2 = json.value;\r\n var index = str2.indexOf(\"{\");\r\n str2 = str2.substring(index-1);\r\n var countCityMap = str2::json;\r\n if(tempObj.superAdminArea){\r\n var regionCode = countCityMap[tempObj.serverId][tempObj.superAdminArea];\r\n if(regionCode){\r\n tempObj.serverId = regionCode;\r\n }\r\n }\r\n }\r\n o.result[i] = tempObj;\r\n }\r\n }\r\n result.code=200;\r\n result.data=o;\r\n result.msg = result.message;\r\n result.message=null;\r\n}\r\n\r\nreturn result;');
INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/drilldown/dimension/clientLocations/world/', 'this is directory');
INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/drilldown/dimension/clientLocations/world/group.json', '{\n \"properties\" : { },\n \"id\" : \"97b604ffcf274098b6abd3970eb1c8c6\",\n \"name\" : \"world\",\n \"type\" : \"api\",\n \"parentId\" : \"6840e4616bf3473d8cd530e3ebd0d8ed\",\n \"path\" : \"/world\",\n \"createTime\" : 1673343301595,\n \"updateTime\" : 1673343320881,\n \"createBy\" : \"th\",\n \"updateBy\" : \"th\",\n \"paths\" : [ ],\n \"options\" : [ ]\n}');
INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/drilldown/dimension/clientLocations/world/HTTP响应延迟.ms', '{\n \"properties\" : { },\n \"id\" : \"c0f52d206c3c445bbf058889dac536a0\",\n \"script\" : null,\n \"groupId\" : \"97b604ffcf274098b6abd3970eb1c8c6\",\n \"name\" : \"HTTP响应延迟\",\n \"createTime\" : null,\n \"updateTime\" : 1696848137566,\n \"lock\" : null,\n \"createBy\" : \"th\",\n \"updateBy\" : \"admin\",\n \"path\" : \"/httpResponseDelay\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1673339501\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1673425901\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"params\",\n \"value\" : \"\'China\'\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"type\",\n \"value\" : \"ip\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"typeVal\",\n \"value\" : \"116.178.236.216\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"code\\\": 999,\\n \\\"time\\\": \\\"2023-01-13 06:55:09\\\",\\n \\\"message\\\": \\\"400 null at Row:8~8,Col:55~59\\\\n\\\\nvar galaxyResult = http.connect(url).param(parameter).get().getBody();\\\\r\\\\n ^^^^^ at Row:30~30,Col:17~38\\\\n\\\\nvar galaxyRes = postGalaxyResult(param);\\\\r\\\\n ^^^^^^^^^^^^^^^^^^^^^^ \\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"code\",\n \"value\" : \"999\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"time\",\n \"value\" : \"2023-01-13 06:55:09\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"400 null at Row:8~8,Col:55~59\\\\n\\\\nvar galaxyResult = http.connect(url).param(parameter).get().getBody();\\\\r\\\\n ^^^^^ at Row:30~30,Col:17~38\\\\n\\\\nvar galaxyRes = postGalaxyResult(param);\\\\r\\\\n ^^^^^^^^^^^^^^^^^^^^^^\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandle\' as preHandle;\r\nimport \'@/pre/typeHandle4th\' as typeHandle4th;\r\nimport \'@/post/table\' as objHandle\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\n\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"params\":params,\r\n \"type\":type,\r\n \"typeVal\":typeVal\r\n}\r\n\r\npreHandle(parameter);\r\ntypeHandle4th(parameter);\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"SELECT client_country_region AS country_region, ROUND(AVG(http_response_latency_ms)) AS http_response_latency FROM session_record_cn WHERE recv_time >= ${startTime} AND recv_time < ${endTime} AND l7_protocol = \'HTTP\' AND http_response_latency_ms != 0 AND client_country_region IN ( <#if params?default(\'\')?trim? length gt 0> ${params} </#if> ) AND ${dimension} = \'${typeVal}\' GROUP BY country_region\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"applicationPerformanceOverviewDrilldownDimensionClientLocationsWorldHttpResponseDelay\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar galaxyRes = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nvar result = objHandle(galaxyRes);\r\n\r\nreturn result;');
INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/drilldown/dimension/clientLocations/world/SSL握手延迟.ms', '{\n \"properties\" : { },\n \"id\" : \"3270c57e5d5a44c99a2030f9259fdd92\",\n \"script\" : null,\n \"groupId\" : \"97b604ffcf274098b6abd3970eb1c8c6\",\n \"name\" : \"SSL握手延迟\",\n \"createTime\" : null,\n \"updateTime\" : 1696846468520,\n \"lock\" : null,\n \"createBy\" : \"th\",\n \"updateBy\" : \"admin\",\n \"path\" : \"/sslConDelay\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1692153518\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1692157118\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"params\",\n \"value\" : \"\'China\'\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"type\",\n \"value\" : \"ip\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"typeVal\",\n \"value\" : \"116.178.236.216\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"code\\\": 999,\\n \\\"time\\\": \\\"2023-01-13 06:55:39\\\",\\n \\\"message\\\": \\\"400 null at Row:8~8,Col:55~59\\\\n\\\\nvar galaxyResult = http.connect(url).param(parameter).get().getBody();\\\\r\\\\n ^^^^^ at Row:30~30,Col:17~38\\\\n\\\\nvar galaxyRes = postGalaxyResult(param);\\\\r\\\\n ^^^^^^^^^^^^^^^^^^^^^^ \\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"code\",\n \"value\" : \"999\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"time\",\n \"value\" : \"2023-01-13 06:55:39\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"400 null at Row:8~8,Col:55~59\\\\n\\\\nvar galaxyResult = http.connect(url).param(parameter).get().getBody();\\\\r\\\\n ^^^^^ at Row:30~30,Col:17~38\\\\n\\\\nvar galaxyRes = postGalaxyResult(param);\\\\r\\\\n ^^^^^^^^^^^^^^^^^^^^^^\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandle\' as preHandle;\r\nimport \'@/pre/typeHandle4th\' as typeHandle4th;\r\nimport \'@/post/table\' as objHandle\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\n\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"params\":params,\r\n \"type\":type,\r\n \"typeVal\":typeVal\r\n}\r\n\r\npreHandle(parameter);\r\ntypeHandle4th(parameter);\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"SELECT client_country_region AS country_region, ROUND(AVG(ssl_handshake_latency_ms)) AS ssl_con_latency FROM session_record_cn WHERE recv_time >= ${startTime} AND recv_time < ${endTime} AND l7_protocol = \'SSL\' AND ssl_handshake_latency_ms !=0 AND client_country_region IN ( <#if params?default(\'\')?trim? length gt 0> ${params} </#if> ) AND ${dimension} = \'${typeVal}\' GROUP BY country_region\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"applicationPerformanceOverviewDrilldownDimensionClientLocationsWorldSslConDelay\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar galaxyRes = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nvar result = objHandle(galaxyRes);\r\n\r\nreturn result;');
-INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/drilldown/dimension/clientLocations/world/TCP会话创建延迟.ms', '{\n \"properties\" : { },\n \"id\" : \"158a977bf42348e58d25d316a08238a9\",\n \"script\" : null,\n \"groupId\" : \"97b604ffcf274098b6abd3970eb1c8c6\",\n \"name\" : \"TCP会话创建延迟\",\n \"createTime\" : null,\n \"updateTime\" : 1692175543058,\n \"lock\" : null,\n \"createBy\" : \"th\",\n \"updateBy\" : \"ljy\",\n \"path\" : \"/tcpSessionDelay\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1692153518\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1692157118\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"params\",\n \"value\" : \"\'China\'\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"type\",\n \"value\" : \"ip\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"typeVal\",\n \"value\" : \"116.178.236.216\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"status\\\": 200,\\n \\\"code\\\": 200,\\n \\\"queryKey\\\": \\\"69d7c88cdb4faf8d36bdc4fac282c013\\\",\\n \\\"success\\\": true,\\n \\\"message\\\": null,\\n \\\"statistics\\\": {\\n \\\"elapsed\\\": 0,\\n \\\"rows_read\\\": 0,\\n \\\"bytes_read\\\": 0,\\n \\\"result_size\\\": 0,\\n \\\"result_rows\\\": 0\\n },\\n \\\"job\\\": null,\\n \\\"formatType\\\": \\\"json\\\",\\n \\\"meta\\\": [{\\n \\\"name\\\": \\\"country_region\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Dimension\\\"\\n }, {\\n \\\"name\\\": \\\"establish_latency_ms\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"tcp_lostlen_percent\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"pkt_retrans_percent\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }],\\n \\\"data\\\": {\\n \\\"resultType\\\": \\\"table\\\",\\n \\\"result\\\": []\\n },\\n \\\"originalUrl\\\": \\\"http://192.168.44.55:9999/?query=SELECT client_country_region AS country_region, ROUND(AVG(tcp_rtt_ms)) AS establish_latency_ms, ROUND(SUM(tcp_c2s_lost_bytes + tcp_s2c_lost_bytes)/SUM(sent_bytes + received_bytes + tcp_c2s_lost_bytes + tcp_s2c_lost_bytes),4) AS tcp_lostlen_percent, ROUND(SUM(tcp_c2s_rtx_pkts + tcp_s2c_rtx_pkts)/ SUM(sent_pkts + received_pkts),4) AS pkt_retrans_percent FROM session_record_cn WHERE recv_time >= toDateTime(1673339501) AND recv_time < toDateTime(1673425901) AND decoded_path IN (\'IPv4_TCP\', \'IPv6_TCP\') AND client_country_region IN ( \'China\' ) AND server_ip = \'116.178.236.216\' GROUP BY country_region&format=json&option=real_time\\\",\\n \\\"msg\\\": \\\"OK\\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"status\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"code\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"queryKey\",\n \"value\" : \"69d7c88cdb4faf8d36bdc4fac282c013\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"success\",\n \"value\" : \"true\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Boolean\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"statistics\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"elapsed\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"rows_read\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"bytes_read\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_size\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_rows\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"job\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"formatType\",\n \"value\" : \"json\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"meta\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"name\",\n \"value\" : \"country_region\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"type\",\n \"value\" : \"string\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"category\",\n \"value\" : \"Dimension\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"data\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"resultType\",\n \"value\" : \"table\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"originalUrl\",\n \"value\" : \"http://192.168.44.55:9999/?query=SELECT client_country_region AS country_region, ROUND(AVG(tcp_rtt_ms)) AS establish_latency_ms, ROUND(SUM(tcp_c2s_lost_bytes + tcp_s2c_lost_bytes)/SUM(sent_bytes + received_bytes + tcp_c2s_lost_bytes + tcp_s2c_lost_bytes),4) AS tcp_lostlen_percent, ROUND(SUM(tcp_c2s_rtx_pkts + tcp_s2c_rtx_pkts)/ SUM(sent_pkts + received_pkts),4) AS pkt_retrans_percent FROM session_record_cn WHERE recv_time >= toDateTime(1673339501) AND recv_time < toDateTime(1673425901) AND decoded_path IN (\'IPv4_TCP\', \'IPv6_TCP\') AND client_country_region IN ( \'China\' ) AND server_ip = \'116.178.236.216\' GROUP BY country_region&format=json&option=real_time\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"msg\",\n \"value\" : \"OK\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandle\' as preHandle;\r\nimport \'@/pre/typeHandle4th\' as typeHandle4th;\r\nimport \'@/post/table\' as objHandle\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\n\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"params\":params,\r\n \"type\":type,\r\n \"typeVal\":typeVal\r\n}\r\n\r\npreHandle(parameter);\r\ntypeHandle4th(parameter);\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"SELECT client_country_region AS country_region, ROUND(AVG(tcp_rtt_ms)) AS establish_latency_ms, ROUND(SUM(tcp_c2s_lost_bytes + tcp_s2c_lost_bytes)/SUM(sent_bytes + received_bytes + tcp_c2s_lost_bytes + tcp_s2c_lost_bytes),4) AS tcp_lostlen_percent, ROUND(SUM(tcp_c2s_rtx_pkts + tcp_s2c_rtx_pkts)/ SUM(sent_pkts + received_pkts),4) AS pkt_retrans_percent FROM session_record_cn WHERE recv_time >= ${startTime} AND recv_time < ${endTime} AND decoded_path IN (\'IPv4_TCP\', \'IPv6_TCP\') AND client_country_region IN ( <#if params?default(\'\')?trim? length gt 0> ${params}</#if> ) AND ${dimension} = \'${typeVal}\' GROUP BY country_region\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"applicationPerformanceOverviewDrilldownDimensionClientLocationsWorldTcpSessionDelay\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar galaxyRes = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nvar result = objHandle(galaxyRes);\r\n\r\nreturn result;');
+INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/drilldown/dimension/clientLocations/world/TCP会话创建延迟.ms', '{\n \"properties\" : { },\n \"id\" : \"158a977bf42348e58d25d316a08238a9\",\n \"script\" : null,\n \"groupId\" : \"97b604ffcf274098b6abd3970eb1c8c6\",\n \"name\" : \"TCP会话创建延迟\",\n \"createTime\" : null,\n \"updateTime\" : 1717647246844,\n \"lock\" : null,\n \"createBy\" : \"th\",\n \"updateBy\" : null,\n \"path\" : \"/tcpSessionDelay\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1717639552\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1717643152\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"params\",\n \"value\" : \"\'China\'\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"type\",\n \"value\" : \"ip\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"typeVal\",\n \"value\" : \"116.178.236.216\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"status\\\": 200,\\n \\\"message\\\": null,\\n \\\"request_id\\\": \\\"7f1a51d3-d655-4ec1-987b-3ad122d77b93\\\",\\n \\\"success\\\": true,\\n \\\"code\\\": 200,\\n \\\"job\\\": null,\\n \\\"output_mode\\\": \\\"json\\\",\\n \\\"statistics\\\": {\\n \\\"elapsed\\\": 0,\\n \\\"rows_read\\\": 0,\\n \\\"bytes_read\\\": 0,\\n \\\"result_bytes\\\": 0,\\n \\\"result_rows\\\": 0\\n },\\n \\\"meta\\\": null,\\n \\\"data\\\": {\\n \\\"resultType\\\": \\\"table\\\",\\n \\\"result\\\": []\\n },\\n \\\"originalUrl\\\": \\\"SELECT client_country_region AS country_region, ROUND(AVG(tcp_rtt_ms)) AS establish_latency_ms, ROUND(SUM(tcp_c2s_lost_bytes + tcp_s2c_lost_bytes)/SUM(sent_bytes + received_bytes + tcp_c2s_lost_bytes + tcp_s2c_lost_bytes),4) AS tcp_lostlen_percent, ROUND(SUM(tcp_c2s_rtx_pkts + tcp_s2c_rtx_pkts)/ SUM(sent_pkts + received_pkts),4) AS pkt_retrans_percent FROM session_record_cn WHERE recv_time >= toDateTime(1692153518) AND recv_time < toDateTime(1692157118) AND ip_protocol IN (\'tcp\') AND client_country_region IN ( \'China\' ) AND server_ip = \'116.178.236.216\' GROUP BY country_region\\\",\\n \\\"msg\\\": \\\"OK\\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"status\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"code\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"queryKey\",\n \"value\" : \"69d7c88cdb4faf8d36bdc4fac282c013\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"success\",\n \"value\" : \"true\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Boolean\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"statistics\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"elapsed\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"rows_read\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"bytes_read\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_size\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_rows\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"job\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"formatType\",\n \"value\" : \"json\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"meta\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"name\",\n \"value\" : \"country_region\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"type\",\n \"value\" : \"string\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"category\",\n \"value\" : \"Dimension\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"data\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"resultType\",\n \"value\" : \"table\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"originalUrl\",\n \"value\" : \"http://192.168.44.55:9999/?query=SELECT client_country_region AS country_region, ROUND(AVG(tcp_rtt_ms)) AS establish_latency_ms, ROUND(SUM(tcp_c2s_lost_bytes + tcp_s2c_lost_bytes)/SUM(sent_bytes + received_bytes + tcp_c2s_lost_bytes + tcp_s2c_lost_bytes),4) AS tcp_lostlen_percent, ROUND(SUM(tcp_c2s_rtx_pkts + tcp_s2c_rtx_pkts)/ SUM(sent_pkts + received_pkts),4) AS pkt_retrans_percent FROM session_record_cn WHERE recv_time >= toDateTime(1673339501) AND recv_time < toDateTime(1673425901) AND decoded_path IN (\'IPv4_TCP\', \'IPv6_TCP\') AND client_country_region IN ( \'China\' ) AND server_ip = \'116.178.236.216\' GROUP BY country_region&format=json&option=real_time\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"msg\",\n \"value\" : \"OK\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandle\' as preHandle;\r\nimport \'@/pre/typeHandle4th\' as typeHandle4th;\r\nimport \'@/post/table\' as objHandle\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\n\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"params\":params,\r\n \"type\":type,\r\n \"typeVal\":typeVal\r\n}\r\n\r\npreHandle(parameter);\r\ntypeHandle4th(parameter);\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"SELECT client_country_region AS country_region, ROUND(AVG(tcp_rtt_ms)) AS establish_latency_ms, ROUND(SUM(tcp_c2s_lost_bytes + tcp_s2c_lost_bytes)/SUM(sent_bytes + received_bytes + tcp_c2s_lost_bytes + tcp_s2c_lost_bytes),4) AS tcp_lostlen_percent, ROUND(SUM(tcp_c2s_rtx_pkts + tcp_s2c_rtx_pkts)/ SUM(sent_pkts + received_pkts),4) AS pkt_retrans_percent FROM session_record_cn WHERE recv_time >= ${startTime} AND recv_time < ${endTime} AND ip_protocol IN (\'tcp\') AND client_country_region IN ( <#if params?default(\'\')?trim? length gt 0> ${params}</#if> ) AND ${dimension} = \'${typeVal}\' GROUP BY country_region\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"applicationPerformanceOverviewDrilldownDimensionClientLocationsWorldTcpSessionDelay\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar galaxyRes = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nvar result = objHandle(galaxyRes);\r\n\r\nreturn result;');
INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/drilldown/dimension/clientLocations/world/流量统计.ms', '{\n \"properties\" : { },\n \"id\" : \"46421ee8671446e4930fd20a20e8d074\",\n \"script\" : null,\n \"groupId\" : \"97b604ffcf274098b6abd3970eb1c8c6\",\n \"name\" : \"流量统计\",\n \"createTime\" : null,\n \"updateTime\" : 1694501275007,\n \"lock\" : null,\n \"createBy\" : \"th\",\n \"updateBy\" : \"ljy\",\n \"path\" : \"/trafficAnalysis\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1673339501\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1673425901\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"type\",\n \"value\" : \"domainSld\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"typeVal\",\n \"value\" : \"gdnt-cloud.website\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"orderBy\",\n \"value\" : \"totalBytes\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"code\\\": 400,\\n \\\"time\\\": \\\"2023-01-13 06:54:53\\\",\\n \\\"message\\\": \\\"参数[orderBy]不合法\\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"code\",\n \"value\" : \"400\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"time\",\n \"value\" : \"2023-01-13 06:54:53\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"参数[orderBy]不合法\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandle\' as preHandle;\r\nimport \'@/pre/typeHandle4th\' as typeHandle4th;\r\nimport \'@/public/toHump\' as toHump\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\nimport \'@/public/orderHandle\' as orderHandle\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"orderBy\":orderBy,\r\n \"type\":type,\r\n \"typeVal\":typeVal\r\n}\r\nparameter.orderBy = orderHandle(parameter.orderBy);\r\npreHandle(parameter);\r\ntypeHandle4th(parameter);\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"SELECT client_country_region AS country_region, SUM(received_bytes + sent_bytes) AS total_bytes, SUM(received_pkts + sent_pkts) AS total_packets, SUM(sessions) AS sessions, IF(client_zone = \'internal\' AND server_zone = \'external\' , SUM(received_bytes), IF(client_zone = \'external\' AND server_zone = \'internal\', SUM(sent_bytes), 0)) AS inbound_bytes, IF(client_zone = \'internal\' AND server_zone = \'external\' , SUM(received_pkts), IF(client_zone = \'external\' AND server_zone = \'internal\', SUM(sent_pkts), 0)) AS inbound_packets, IF(client_zone = \'external\' AND server_zone = \'internal\' , SUM(received_bytes), IF(client_zone = \'internal\' AND server_zone = \'external\', SUM(sent_bytes), 0)) AS outbound_bytes, IF(client_zone = \'external\' AND server_zone = \'internal\' , SUM(received_pkts), IF(client_zone = \'internal\' AND server_zone = \'external\', SUM(sent_pkts), 0)) AS outbound_packets, IF(client_zone = \'internal\' AND server_zone = \'internal\' , SUM(received_bytes + sent_bytes),0) AS internal_bytes, IF(client_zone = \'internal\' AND server_zone = \'internal\' , SUM(received_pkts + sent_pkts), 0) AS internal_packets, IF(client_zone = \'external\' AND server_zone = \'external\' , SUM(received_bytes + sent_bytes),0) AS through_bytes, IF(client_zone = \'external\' AND server_zone = \'external\' , SUM(received_pkts + sent_pkts), 0) AS through_packets FROM session_record_cn WHERE recv_time >= ${startTime} AND recv_time < ${endTime} AND notEmpty(client_country_region) AND ${dimension} = \'${typeVal}\' GROUP BY country_region,client_zone,server_zone <#if orderBy?default(\'\')?trim? length gt 0> ORDER BY ${orderBy} desc <#else> ORDER BY total_bytes desc </#if> <#if limit?default(\'\')?trim? length gt 0> LIMIT ${limit} </#if>\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"applicationPerformanceOverviewDrilldownDimensionClientLocationsWorldTrafficAnalysis\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar result = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nif(result.success){\r\n var o={};\r\n o.resultType=\"table\";\r\n o.result=result.data;\r\n if(o.result.length > 0){\r\n for(i,j in o.result){\r\n var pojo = o.result[i];\r\n var tempObj= {};\r\n for (key,value in pojo){\r\n var tempKey = toHump(key);\r\n tempObj[tempKey] = pojo[key];\r\n if(key.indexOf(\"total_bytes\") != -1){\r\n tempObj[\'totalBitsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2).asDouble() * 8\r\n }else if(key.indexOf(\"total_packets\") != -1){\r\n tempObj[\'totalPacketsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }else if(key.indexOf(\"total_sessions\") != -1){\r\n tempObj[\'totalSessionsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }else if(key.indexOf(\"inbound_bytes\") != -1){\r\n tempObj[\'inboundBitsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2).asDouble() * 8\r\n }else if(key.indexOf(\"inbound_packets\") != -1){\r\n tempObj[\'inboundPacketsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }else if(key.indexOf(\"outbound_bytes\") != -1){\r\n tempObj[\'outboundBitsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2).asDouble() * 8\r\n }else if(key.indexOf(\"outbound_packets\") != -1){\r\n tempObj[\'outboundPacketsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }else if(key.indexOf(\"internal_bytes\") != -1){\r\n tempObj[\'internalBitsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2).asDouble() * 8\r\n }else if(key.indexOf(\"internal_packets\") != -1){\r\n tempObj[\'internalPacketsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }else if(key.indexOf(\"through_bytes\") != -1){\r\n tempObj[\'throughBitsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2).asDouble() * 8\r\n }else if(key.indexOf(\"through_packets\") != -1){\r\n tempObj[\'throughPacketsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }else if(key.indexOf(\"sessions\") != -1){\r\n tempObj[\'sessionsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }\r\n }\r\n var config1 = \"\"\"\r\n select value from sys_dict where type = \'areaMapping\' and code = \'1\'\r\n \"\"\"\r\n var json = db.select(config1);\r\n var str1 = json.value;\r\n var index = str1.indexOf(\"{\");\r\n str1 = str1.substring(index-1);\r\n var countryCodeMap = str1::json;\r\n tempObj.serverId = countryCodeMap[tempObj.countryRegion];\r\n \r\n if(!tempObj.serverId) {\r\n tempObj.serverId = \"\";\r\n }else{\r\n // 存在地区 \r\n var config1 = \"\"\"\r\n select value from sys_dict where type = \'areaMapping\' and code = \'2\'\r\n \"\"\"\r\n var json = db.select(config1);\r\n var str2 = json.value;\r\n var index = str2.indexOf(\"{\");\r\n str2 = str2.substring(index-1);\r\n var countCityMap = str2::json;\r\n if(tempObj.superAdminArea){\r\n var regionCode = countCityMap[tempObj.serverId][tempObj.superAdminArea];\r\n if(regionCode){\r\n tempObj.serverId = regionCode;\r\n }\r\n }\r\n }\r\n o.result[i] = tempObj;\r\n }\r\n }\r\n result.code=200;\r\n result.data=o;\r\n result.msg = result.message;\r\n result.message=null;\r\n}\r\n\r\nreturn result;');
INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/drilldown/dimension/group.json', '{\n \"properties\" : { },\n \"id\" : \"972eeb1e071d495bae979b454ef98340\",\n \"name\" : \"dimension\",\n \"type\" : \"api\",\n \"parentId\" : \"17d545d31dc94a3d997e0c35db420305\",\n \"path\" : \"/dimension\",\n \"createTime\" : 1673315641335,\n \"updateTime\" : null,\n \"createBy\" : \"th\",\n \"updateBy\" : null,\n \"paths\" : [ ],\n \"options\" : [ ]\n}');
INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/drilldown/dimension/网络性能统计总览(指定维度值).ms', '{\n \"properties\" : { },\n \"id\" : \"copy1673334711593d9746\",\n \"script\" : null,\n \"groupId\" : \"972eeb1e071d495bae979b454ef98340\",\n \"name\" : \"网络性能统计总览(指定维度值)\",\n \"createTime\" : null,\n \"updateTime\" : 1693883514872,\n \"lock\" : null,\n \"createBy\" : null,\n \"updateBy\" : \"ljy\",\n \"path\" : \"/networkAnalysis\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1691128185\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1691131785\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"cycle\",\n \"value\" : \"0\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"type\",\n \"value\" : \"clientIp\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"q\",\n \"value\" : \"client_ip=\'116.178.214.147\'\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"status\\\": 200,\\n \\\"code\\\": 200,\\n \\\"queryKey\\\": \\\"2da346e1a7565f9e54a0140dace5c8ee\\\",\\n \\\"success\\\": true,\\n \\\"message\\\": null,\\n \\\"statistics\\\": {\\n \\\"elapsed\\\": 528,\\n \\\"rows_read\\\": 304842,\\n \\\"bytes_read\\\": 23224676,\\n \\\"result_size\\\": 793,\\n \\\"result_rows\\\": 1\\n },\\n \\\"job\\\": null,\\n \\\"formatType\\\": \\\"json\\\",\\n \\\"meta\\\": [{\\n \\\"name\\\": \\\"ip\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"establish_latency_ms_avg\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"establish_latency_ms_p50\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"establish_latency_ms_p90\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"establish_latency_ms_p95\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"establish_latency_ms_p99\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"http_response_latency_avg\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"http_response_latency_p50\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"http_response_latency_p90\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"http_response_latency_p95\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"http_response_latency_p99\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"ssl_con_latency_avg\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"ssl_con_latency_p50\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"ssl_con_latency_p90\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"ssl_con_latency_p95\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"ssl_con_latency_p99\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"tcp_lostlen_percent_avg\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"tcp_lostlen_percent_p50\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"tcp_lostlen_percent_p90\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"tcp_lostlen_percent_p95\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"tcp_lostlen_percent_p99\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"pkt_retrans_percent_avg\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"pkt_retrans_percent_p50\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"pkt_retrans_percent_p90\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"pkt_retrans_percent_p95\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"pkt_retrans_percent_p99\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }],\\n \\\"data\\\": {\\n \\\"resultType\\\": \\\"object\\\",\\n \\\"result\\\": {\\n \\\"ip\\\": \\\"116.178.214.147\\\",\\n \\\"establishLatencyMsAvg\\\": 115.5962,\\n \\\"establishLatencyMsP50\\\": 91,\\n \\\"establishLatencyMsP90\\\": 234,\\n \\\"establishLatencyMsP95\\\": 246,\\n \\\"establishLatencyMsP99\\\": 324,\\n \\\"httpResponseLatencyAvg\\\": 1073.7575,\\n \\\"httpResponseLatencyP50\\\": 215,\\n \\\"httpResponseLatencyP90\\\": 3770,\\n \\\"httpResponseLatencyP95\\\": 3928,\\n \\\"httpResponseLatencyP99\\\": 4384,\\n \\\"sslConLatencyAvg\\\": 263.802,\\n \\\"sslConLatencyP50\\\": 225,\\n \\\"sslConLatencyP90\\\": 437,\\n \\\"sslConLatencyP95\\\": 450,\\n \\\"sslConLatencyP99\\\": 461,\\n \\\"tcpLostlenPercentAvg\\\": 0,\\n \\\"tcpLostlenPercentP50\\\": 0,\\n \\\"tcpLostlenPercentP90\\\": 0,\\n \\\"tcpLostlenPercentP95\\\": 0,\\n \\\"tcpLostlenPercentP99\\\": 0,\\n \\\"pktRetransPercentAvg\\\": 0.0133,\\n \\\"pktRetransPercentP50\\\": 0.0141,\\n \\\"pktRetransPercentP90\\\": 0.0173,\\n \\\"pktRetransPercentP95\\\": 0.0178,\\n \\\"pktRetransPercentP99\\\": 0.0184\\n }\\n },\\n \\\"originalUrl\\\": \\\"http://192.168.44.55:9999/?query=SELECT ip AS ip, ROUND(AVG(avg_tcp_rtt_ms), 4) AS establish_latency_ms_avg, ROUND(QUANTILE(avg_tcp_rtt_ms,0.50)) AS establish_latency_ms_p50, ROUND(QUANTILE(avg_tcp_rtt_ms,0.90)) AS establish_latency_ms_p90, ROUND(QUANTILE(avg_tcp_rtt_ms,0.95)) AS establish_latency_ms_p95, ROUND(QUANTILE(avg_tcp_rtt_ms,0.99)) AS establish_latency_ms_p99, ROUND(AVG(avg_http_response_latency_ms), 4) AS http_response_latency_avg, ROUND(QUANTILE(avg_http_response_latency_ms,0.50)) AS http_response_latency_p50, ROUND(QUANTILE(avg_http_response_latency_ms,0.90)) AS http_response_latency_p90, ROUND(QUANTILE(avg_http_response_latency_ms,0.95)) AS http_response_latency_p95, ROUND(QUANTILE(avg_http_response_latency_ms,0.99)) AS http_response_latency_p99, ROUND(AVG(avg_ssl_handshake_latency_ms), 4) AS ssl_con_latency_avg, ROUND(QUANTILE(avg_ssl_handshake_latency_ms,0.50)) AS ssl_con_latency_p50, ROUND(QUANTILE(avg_ssl_handshake_latency_ms,0.90)) AS ssl_con_latency_p90, ROUND(QUANTILE(avg_ssl_handshake_latency_ms,0.95)) AS ssl_con_latency_p95, ROUND(QUANTILE(avg_ssl_handshake_latency_ms,0.99)) AS ssl_con_latency_p99, ROUND(AVG(tcp_lost_bytes_ratio), 4) AS tcp_lostlen_percent_avg, ROUND(QUANTILE(tcp_lost_bytes_ratio,0.50), 4) AS tcp_lostlen_percent_p50, ROUND(QUANTILE(tcp_lost_bytes_ratio,0.90), 4) AS tcp_lostlen_percent_p90, ROUND(QUANTILE(tcp_lost_bytes_ratio,0.95), 4) AS tcp_lostlen_percent_p95, ROUND(QUANTILE(tcp_lost_bytes_ratio,0.99), 4) AS tcp_lostlen_percent_p99, ROUND(AVG(tcp_rtx_pkts_ratio), 4) AS pkt_retrans_percent_avg, ROUND(QUANTILE(tcp_rtx_pkts_ratio,0.50), 4) AS pkt_retrans_percent_p50, ROUND(QUANTILE(tcp_rtx_pkts_ratio,0.90), 4) AS pkt_retrans_percent_p90, ROUND(QUANTILE(tcp_rtx_pkts_ratio,0.95), 4) AS pkt_retrans_percent_p95, ROUND(QUANTILE(tcp_rtx_pkts_ratio,0.99), 4) AS pkt_retrans_percent_p99 FROM metric_ip WHERE stat_time >= toDateTime(1691128185) AND stat_time < toDateTime(1691131785) AND (ip=\'116.178.214.147\') GROUP BY ip&format=json&option=real_time\\\",\\n \\\"msg\\\": \\\"OK\\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"status\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"code\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"queryKey\",\n \"value\" : \"2da346e1a7565f9e54a0140dace5c8ee\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"success\",\n \"value\" : \"true\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Boolean\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"statistics\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"elapsed\",\n \"value\" : \"528\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"rows_read\",\n \"value\" : \"304842\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"bytes_read\",\n \"value\" : \"23224676\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_size\",\n \"value\" : \"793\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_rows\",\n \"value\" : \"1\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"job\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"formatType\",\n \"value\" : \"json\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"meta\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"name\",\n \"value\" : \"ip\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"type\",\n \"value\" : \"string\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"category\",\n \"value\" : \"Metric\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"data\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"resultType\",\n \"value\" : \"object\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"ip\",\n \"value\" : \"116.178.214.147\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"establishLatencyMsAvg\",\n \"value\" : \"115.5962\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Double\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"establishLatencyMsP50\",\n \"value\" : \"91\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"establishLatencyMsP90\",\n \"value\" : \"234\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"establishLatencyMsP95\",\n \"value\" : \"246\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"establishLatencyMsP99\",\n \"value\" : \"324\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"httpResponseLatencyAvg\",\n \"value\" : \"1073.7575\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Double\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"httpResponseLatencyP50\",\n \"value\" : \"215\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"httpResponseLatencyP90\",\n \"value\" : \"3770\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"httpResponseLatencyP95\",\n \"value\" : \"3928\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"httpResponseLatencyP99\",\n \"value\" : \"4384\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"sslConLatencyAvg\",\n \"value\" : \"263.802\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Double\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"sslConLatencyP50\",\n \"value\" : \"225\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"sslConLatencyP90\",\n \"value\" : \"437\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"sslConLatencyP95\",\n \"value\" : \"450\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"sslConLatencyP99\",\n \"value\" : \"461\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"tcpLostlenPercentAvg\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"tcpLostlenPercentP50\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"tcpLostlenPercentP90\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"tcpLostlenPercentP95\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"tcpLostlenPercentP99\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"pktRetransPercentAvg\",\n \"value\" : \"0.0133\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Double\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"pktRetransPercentP50\",\n \"value\" : \"0.0141\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Double\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"pktRetransPercentP90\",\n \"value\" : \"0.0173\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Double\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"pktRetransPercentP95\",\n \"value\" : \"0.0178\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Double\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"pktRetransPercentP99\",\n \"value\" : \"0.0184\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Double\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"originalUrl\",\n \"value\" : \"http://192.168.44.55:9999/?query=SELECT ip AS ip, ROUND(AVG(avg_tcp_rtt_ms), 4) AS establish_latency_ms_avg, ROUND(QUANTILE(avg_tcp_rtt_ms,0.50)) AS establish_latency_ms_p50, ROUND(QUANTILE(avg_tcp_rtt_ms,0.90)) AS establish_latency_ms_p90, ROUND(QUANTILE(avg_tcp_rtt_ms,0.95)) AS establish_latency_ms_p95, ROUND(QUANTILE(avg_tcp_rtt_ms,0.99)) AS establish_latency_ms_p99, ROUND(AVG(avg_http_response_latency_ms), 4) AS http_response_latency_avg, ROUND(QUANTILE(avg_http_response_latency_ms,0.50)) AS http_response_latency_p50, ROUND(QUANTILE(avg_http_response_latency_ms,0.90)) AS http_response_latency_p90, ROUND(QUANTILE(avg_http_response_latency_ms,0.95)) AS http_response_latency_p95, ROUND(QUANTILE(avg_http_response_latency_ms,0.99)) AS http_response_latency_p99, ROUND(AVG(avg_ssl_handshake_latency_ms), 4) AS ssl_con_latency_avg, ROUND(QUANTILE(avg_ssl_handshake_latency_ms,0.50)) AS ssl_con_latency_p50, ROUND(QUANTILE(avg_ssl_handshake_latency_ms,0.90)) AS ssl_con_latency_p90, ROUND(QUANTILE(avg_ssl_handshake_latency_ms,0.95)) AS ssl_con_latency_p95, ROUND(QUANTILE(avg_ssl_handshake_latency_ms,0.99)) AS ssl_con_latency_p99, ROUND(AVG(tcp_lost_bytes_ratio), 4) AS tcp_lostlen_percent_avg, ROUND(QUANTILE(tcp_lost_bytes_ratio,0.50), 4) AS tcp_lostlen_percent_p50, ROUND(QUANTILE(tcp_lost_bytes_ratio,0.90), 4) AS tcp_lostlen_percent_p90, ROUND(QUANTILE(tcp_lost_bytes_ratio,0.95), 4) AS tcp_lostlen_percent_p95, ROUND(QUANTILE(tcp_lost_bytes_ratio,0.99), 4) AS tcp_lostlen_percent_p99, ROUND(AVG(tcp_rtx_pkts_ratio), 4) AS pkt_retrans_percent_avg, ROUND(QUANTILE(tcp_rtx_pkts_ratio,0.50), 4) AS pkt_retrans_percent_p50, ROUND(QUANTILE(tcp_rtx_pkts_ratio,0.90), 4) AS pkt_retrans_percent_p90, ROUND(QUANTILE(tcp_rtx_pkts_ratio,0.95), 4) AS pkt_retrans_percent_p95, ROUND(QUANTILE(tcp_rtx_pkts_ratio,0.99), 4) AS pkt_retrans_percent_p99 FROM metric_ip WHERE stat_time >= toDateTime(1691128185) AND stat_time < toDateTime(1691131785) AND (ip=\'116.178.214.147\') GROUP BY ip&format=json&option=real_time\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"msg\",\n \"value\" : \"OK\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandle\' as preHandle;\r\nimport \'@/pre/typeHandle\' as typeHandle;\r\nimport \'@/post/object\' as objHandle\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\n\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"cycle\":cycle,\r\n \"type\":type,\r\n \"q\":q\r\n}\r\n\r\npreHandle(parameter);\r\ntypeHandle(parameter);\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"SELECT ${dimension} AS ${label}, ROUND(AVG(avg_tcp_rtt_ms), 4) AS establish_latency_ms_avg, ROUND(QUANTILE(avg_tcp_rtt_ms,0.50)) AS establish_latency_ms_p50, ROUND(QUANTILE(avg_tcp_rtt_ms,0.90)) AS establish_latency_ms_p90, ROUND(QUANTILE(avg_tcp_rtt_ms,0.95)) AS establish_latency_ms_p95, ROUND(QUANTILE(avg_tcp_rtt_ms,0.99)) AS establish_latency_ms_p99, ROUND(AVG(avg_http_response_latency_ms), 4) AS http_response_latency_avg, ROUND(QUANTILE(avg_http_response_latency_ms,0.50)) AS http_response_latency_p50, ROUND(QUANTILE(avg_http_response_latency_ms,0.90)) AS http_response_latency_p90, ROUND(QUANTILE(avg_http_response_latency_ms,0.95)) AS http_response_latency_p95, ROUND(QUANTILE(avg_http_response_latency_ms,0.99)) AS http_response_latency_p99, ROUND(AVG(avg_ssl_handshake_latency_ms), 4) AS ssl_con_latency_avg, ROUND(QUANTILE(avg_ssl_handshake_latency_ms,0.50)) AS ssl_con_latency_p50, ROUND(QUANTILE(avg_ssl_handshake_latency_ms,0.90)) AS ssl_con_latency_p90, ROUND(QUANTILE(avg_ssl_handshake_latency_ms,0.95)) AS ssl_con_latency_p95, ROUND(QUANTILE(avg_ssl_handshake_latency_ms,0.99)) AS ssl_con_latency_p99, ROUND(AVG(tcp_lost_bytes_ratio), 4) AS tcp_lostlen_percent_avg, ROUND(QUANTILE(tcp_lost_bytes_ratio,0.50), 4) AS tcp_lostlen_percent_p50, ROUND(QUANTILE(tcp_lost_bytes_ratio,0.90), 4) AS tcp_lostlen_percent_p90, ROUND(QUANTILE(tcp_lost_bytes_ratio,0.95), 4) AS tcp_lostlen_percent_p95, ROUND(QUANTILE(tcp_lost_bytes_ratio,0.99), 4) AS tcp_lostlen_percent_p99, ROUND(AVG(tcp_rtx_pkts_ratio), 4) AS pkt_retrans_percent_avg, ROUND(QUANTILE(tcp_rtx_pkts_ratio,0.50), 4) AS pkt_retrans_percent_p50, ROUND(QUANTILE(tcp_rtx_pkts_ratio,0.90), 4) AS pkt_retrans_percent_p90, ROUND(QUANTILE(tcp_rtx_pkts_ratio,0.95), 4) AS pkt_retrans_percent_p95, ROUND(QUANTILE(tcp_rtx_pkts_ratio,0.99), 4) AS pkt_retrans_percent_p99 FROM ${tableName} WHERE <#if cycle?default(\'\')?trim? length gt 0 && cycle ==1> stat_time >= ${startTime}-${timeDiff} AND stat_time < ${endTime}-${timeDiff} <#else> stat_time >= ${startTime} AND stat_time < ${endTime} </#if> <#if q?default(\'\')?trim? length gt 0> AND (${q}) </#if><#if filter?default(\'\')?trim? length gt 0> ${filter} </#if> GROUP BY ${label}\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"applicationPerformanceOverviewDrilldownDimensioNetworkAnalysis\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar galaxyRes = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nvar result = objHandle(galaxyRes);\r\n\r\nreturn result;');
@@ -76,7 +76,7 @@ INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/ove
INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/drilldown/group.json', '{\n \"properties\" : { },\n \"id\" : \"17d545d31dc94a3d997e0c35db420305\",\n \"name\" : \"drilldown\",\n \"type\" : \"api\",\n \"parentId\" : \"34a616d95df64af18b77542132670eed\",\n \"path\" : \"/drilldown\",\n \"createTime\" : 1672988485985,\n \"updateTime\" : null,\n \"createBy\" : \"admin\",\n \"updateBy\" : null,\n \"paths\" : [ ],\n \"options\" : [ ]\n}');
INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/drilldown/各维度HTTP响应延迟.ms', '{\n \"properties\" : { },\n \"id\" : \"copy1673337109464d83642\",\n \"script\" : null,\n \"groupId\" : \"17d545d31dc94a3d997e0c35db420305\",\n \"name\" : \"各维度HTTP响应延迟\",\n \"createTime\" : null,\n \"updateTime\" : 1696848001528,\n \"lock\" : null,\n \"createBy\" : null,\n \"updateBy\" : \"admin\",\n \"path\" : \"/dimensionHttpResponseDelay\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1672988638\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1672988738\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"type\",\n \"value\" : \"ip\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"q\",\n \"value\" : \"server_country_region=\'China\'\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"params\",\n \"value\" : \"\'116.178.236.216\',\'116.178.236.217\',\'116.178.78.195\'\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"cycle\",\n \"value\" : \"0\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"status\\\": 200,\\n \\\"code\\\": 200,\\n \\\"queryKey\\\": \\\"b0d93328839efd9daf41ab58a84a6416\\\",\\n \\\"success\\\": true,\\n \\\"message\\\": null,\\n \\\"statistics\\\": {\\n \\\"elapsed\\\": 0,\\n \\\"rows_read\\\": 0,\\n \\\"bytes_read\\\": 0,\\n \\\"result_size\\\": 0,\\n \\\"result_rows\\\": 0\\n },\\n \\\"job\\\": null,\\n \\\"formatType\\\": \\\"json\\\",\\n \\\"meta\\\": [{\\n \\\"name\\\": \\\"ip\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"http_response_latency\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }],\\n \\\"data\\\": {\\n \\\"resultType\\\": \\\"table\\\",\\n \\\"result\\\": []\\n },\\n \\\"originalUrl\\\": \\\"http://192.168.44.55:9999/?query= SELECT arrayJoin(splitByChar(\'_\',concat(client_ip,\'_\',server_ip))) as ip, ROUND(AVG(http_response_latency_ms)) AS http_response_latency FROM session_record_cn WHERE recv_time >= 1672988638 AND recv_time < 1672988738 AND decoded_as = \'HTTP\' AND ip IN ( \'116.178.236.216\',\'116.178.236.217\',\'116.178.78.195\' ) AND (server_country_region=\'China\') GROUP BY ip &format=json&option=real_time\\\",\\n \\\"msg\\\": \\\"OK\\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"status\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"code\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"queryKey\",\n \"value\" : \"b0d93328839efd9daf41ab58a84a6416\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"success\",\n \"value\" : \"true\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Boolean\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"statistics\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"elapsed\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"rows_read\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"bytes_read\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_size\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_rows\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"job\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"formatType\",\n \"value\" : \"json\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"meta\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"name\",\n \"value\" : \"ip\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"type\",\n \"value\" : \"string\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"category\",\n \"value\" : \"Metric\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"data\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"resultType\",\n \"value\" : \"table\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"originalUrl\",\n \"value\" : \"http://192.168.44.55:9999/?query= SELECT arrayJoin(splitByChar(\'_\',concat(client_ip,\'_\',server_ip))) as ip, ROUND(AVG(http_response_latency_ms)) AS http_response_latency FROM session_record_cn WHERE recv_time >= 1672988638 AND recv_time < 1672988738 AND decoded_as = \'HTTP\' AND ip IN ( \'116.178.236.216\',\'116.178.236.217\',\'116.178.78.195\' ) AND (server_country_region=\'China\') GROUP BY ip &format=json&option=real_time\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"msg\",\n \"value\" : \"OK\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandleNone\' as preHandle;\r\nimport \'@/pre/typeHandle2nd\' as typeHandle;\r\nimport \'@/post/table\' as objHandle\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\n\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"cycle\":cycle,\r\n \"type\":type,\r\n \"q\":q,\r\n \"params\":params\r\n}\r\n\r\npreHandle(parameter);\r\ntypeHandle(parameter);\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"<#if cycle?default(\'\')?trim? length gt 0 && cycle ==1> SELECT ${dimension} as ${label}, ROUND(AVG(http_response_latency_ms)) AS http_response_latency FROM session_record_cn WHERE recv_time >= ${startTime}-${timeDiff} AND recv_time < ${endTime}-${timeDiff} AND l7_protocol = \'HTTP\' AND http_response_latency_ms !=0 AND ${label} IN (<#if params?default(\'\')?trim? length gt 0> ${params} </#if>) <#if q?default(\'\')?trim? length gt 0> AND (${q}) </#if> GROUP BY ${label} <#else> SELECT ${dimension} as ${label}, ROUND(AVG(http_response_latency_ms)) AS http_response_latency FROM session_record_cn WHERE recv_time >= ${startTime} AND recv_time < ${endTime} AND l7_protocol = \'HTTP\' AND http_response_latency_ms !=0 AND ${label} IN (<#if params?default(\'\')?trim? length gt 0> ${params} </#if>) <#if q?default(\'\')?trim? length gt 0> AND (${q}) </#if> GROUP BY ${label} </#if>\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"applicationPerformanceOverviewDrilldownDimensionCycleDimensionHttpResponseDelay\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar galaxyRes = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nvar result = objHandle(galaxyRes);\r\n\r\nreturn result;');
INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/drilldown/各维度SSL握手延迟.ms', '{\n \"properties\" : { },\n \"id\" : \"copy1673337015578d33337\",\n \"script\" : null,\n \"groupId\" : \"17d545d31dc94a3d997e0c35db420305\",\n \"name\" : \"各维度SSL握手延迟\",\n \"createTime\" : null,\n \"updateTime\" : 1696848063617,\n \"lock\" : null,\n \"createBy\" : null,\n \"updateBy\" : \"admin\",\n \"path\" : \"/dimensionSslConDelay\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1672988638\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1672988738\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"type\",\n \"value\" : \"ip\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"q\",\n \"value\" : \"server_country_region=\'China\'\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"params\",\n \"value\" : \"\'116.178.236.216\',\'116.178.236.217\',\'116.178.78.195\'\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"cycle\",\n \"value\" : \"1\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"code\\\": 999,\\n \\\"time\\\": \\\"2023-09-01 06:59:56\\\",\\n \\\"message\\\": \\\"404 null at Row:10~10,Col:32~36\\\\n\\\\nvar galaxyResult = httpRequest.get().getBody();\\\\r\\\\n ^^^^^ \\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"code\",\n \"value\" : \"999\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"time\",\n \"value\" : \"2023-09-01 06:59:56\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"404 null at Row:10~10,Col:32~36\\\\n\\\\nvar galaxyResult = httpRequest.get().getBody();\\\\r\\\\n ^^^^^\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandleNone\' as preHandle;\r\nimport \'@/pre/typeHandle2nd\' as typeHandle;\r\nimport \'@/post/table\' as objHandle\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\n\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"cycle\":cycle,\r\n \"type\":type,\r\n \"q\":q,\r\n \"params\":params\r\n}\r\n\r\npreHandle(parameter);\r\ntypeHandle(parameter);\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"<#if cycle?default(\'\')?trim? length gt 0 && cycle ==1> SELECT ${dimension} as ${label}, ROUND(AVG(ssl_handshake_latency_ms)) AS ssl_con_latency FROM session_record_cn WHERE recv_time >= ${startTime}-${timeDiff} AND recv_time < ${endTime}-${timeDiff} AND l7_protocol = \'SSL\' AND ssl_handshake_latency_ms !=0 AND ${label} IN (<#if params?default(\'\')?trim? length gt 0> ${params} </#if>) <#if q?default(\'\')?trim? length gt 0> AND (${q}) </#if> GROUP BY ${label} <#else> SELECT ${dimension} as ${label}, ROUND(AVG(ssl_handshake_latency_ms)) AS ssl_con_latency FROM session_record_cn WHERE recv_time >= ${startTime} AND recv_time < ${endTime} AND l7_protocol = \'SSL\' AND ssl_handshake_latency_ms !=0 AND ${label} IN (<#if params?default(\'\')?trim? length gt 0> ${params} </#if>) <#if q?default(\'\')?trim? length gt 0> AND (${q}) </#if> GROUP BY ${label} </#if>\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"applicationPerformanceOverviewDrilldownDimensionCycleDimensionSslConDelay\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar galaxyRes = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nvar result = objHandle(galaxyRes);\r\n\r\nreturn result;');
-INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/drilldown/各维度TCP会话创建延迟.缺包率.重传率.ms', '{\n \"properties\" : { },\n \"id\" : \"copy1673337194991d52555\",\n \"script\" : null,\n \"groupId\" : \"17d545d31dc94a3d997e0c35db420305\",\n \"name\" : \"各维度TCP会话创建延迟.缺包率.重传率\",\n \"createTime\" : null,\n \"updateTime\" : 1693551525437,\n \"lock\" : null,\n \"createBy\" : \"th\",\n \"updateBy\" : \"ljy\",\n \"path\" : \"/dimensionTcpSessionDelay\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1672988638\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1672988738\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"type\",\n \"value\" : \"ip\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"q\",\n \"value\" : \"server_ip=\'116.178.236.216\'\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"params\",\n \"value\" : \"\'116.178.236.216\',\'116.178.236.217\',\'116.178.78.195\'\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"cycle\",\n \"value\" : \"1\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"code\\\": 999,\\n \\\"time\\\": \\\"2023-09-01 06:58:24\\\",\\n \\\"message\\\": \\\"404 null at Row:10~10,Col:32~36\\\\n\\\\nvar galaxyResult = httpRequest.get().getBody();\\\\r\\\\n ^^^^^ \\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"code\",\n \"value\" : \"999\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"time\",\n \"value\" : \"2023-09-01 06:58:24\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"404 null at Row:10~10,Col:32~36\\\\n\\\\nvar galaxyResult = httpRequest.get().getBody();\\\\r\\\\n ^^^^^\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandleNone\' as preHandle;\r\nimport \'@/pre/typeHandle2nd\' as typeHandle;\r\nimport \'@/post/table\' as objHandle\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\n\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"cycle\":cycle,\r\n \"type\":type,\r\n \"q\":q,\r\n \"params\":params\r\n}\r\n\r\npreHandle(parameter);\r\ntypeHandle(parameter);\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"<#if cycle?default(\'\')?trim? length gt 0 && cycle ==1> SELECT ${dimension} as ${label}, ROUND(AVG(tcp_rtt_ms)) AS establish_latency_ms, ROUND(SUM(tcp_c2s_lost_bytes + tcp_s2c_lost_bytes)/SUM(sent_bytes + received_bytes + tcp_c2s_lost_bytes + tcp_s2c_lost_bytes),4) AS tcp_lostlen_percent, ROUND(SUM(tcp_c2s_rtx_pkts + tcp_s2c_rtx_pkts)/ SUM(sent_pkts + received_pkts),4) AS pkt_retrans_percent FROM session_record_cn WHERE recv_time >= ${startTime}-${timeDiff} AND recv_time < ${endTime}-${timeDiff} AND decoded_path IN (\'IPv4_TCP\', \'IPv6_TCP\') AND ${label} IN (<#if params?default(\'\')?trim? length gt 0> ${params} </#if>)<#if q?default(\'\')?trim? length gt 0> AND (${q}) </#if> GROUP BY ${label} <#else> SELECT ${dimension} as ${label}, ROUND(AVG(tcp_rtt_ms)) AS establish_latency_ms, ROUND(SUM(tcp_c2s_lost_bytes + tcp_s2c_lost_bytes)/SUM(sent_bytes + received_bytes + tcp_c2s_lost_bytes + tcp_s2c_lost_bytes),4) AS tcp_lostlen_percent, ROUND(SUM(tcp_c2s_rtx_pkts + tcp_s2c_rtx_pkts)/ SUM(sent_pkts + received_pkts),4) AS pkt_retrans_percent FROM session_record_cn WHERE recv_time >= ${startTime} AND recv_time < ${endTime} AND decoded_path IN (\'IPv4_TCP\', \'IPv6_TCP\') AND ${label} IN (<#if params?default(\'\')?trim? length gt 0> ${params} </#if>) <#if q?default(\'\')?trim? length gt 0> AND (${q}) </#if> GROUP BY ${label} </#if>\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"applicationPerformanceOverviewDrilldownDimensionCycleDimensionTcpSessionDelay\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar galaxyRes = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nvar result = objHandle(galaxyRes);\r\n\r\nreturn result;');
+INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/drilldown/各维度TCP会话创建延迟.缺包率.重传率.ms', '{\n \"properties\" : { },\n \"id\" : \"copy1673337194991d52555\",\n \"script\" : null,\n \"groupId\" : \"17d545d31dc94a3d997e0c35db420305\",\n \"name\" : \"各维度TCP会话创建延迟.缺包率.重传率\",\n \"createTime\" : null,\n \"updateTime\" : 1717646983856,\n \"lock\" : null,\n \"createBy\" : \"th\",\n \"updateBy\" : null,\n \"path\" : \"/dimensionTcpSessionDelay\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1717639552\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1717643152\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"type\",\n \"value\" : \"ip\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"q\",\n \"value\" : \"app=\'qq_web\'\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"params\",\n \"value\" : \"\'116.178.236.216\',\'116.178.236.217\',\'116.178.78.195\'\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"cycle\",\n \"value\" : \"1\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"status\\\": 200,\\n \\\"message\\\": null,\\n \\\"request_id\\\": \\\"11bca2ee-ffd3-41f9-b569-eeff66dfcf8b\\\",\\n \\\"success\\\": true,\\n \\\"code\\\": 200,\\n \\\"job\\\": null,\\n \\\"output_mode\\\": \\\"json\\\",\\n \\\"statistics\\\": {\\n \\\"elapsed\\\": 82,\\n \\\"rows_read\\\": 294912,\\n \\\"bytes_read\\\": 39505273,\\n \\\"result_bytes\\\": 0,\\n \\\"result_rows\\\": 0\\n },\\n \\\"meta\\\": null,\\n \\\"data\\\": {\\n \\\"resultType\\\": \\\"table\\\",\\n \\\"result\\\": []\\n },\\n \\\"originalUrl\\\": \\\" SELECT arrayJoin(splitByChar(\'_\',concat(client_ip,\'_\',server_ip))) as ip, ROUND(AVG(tcp_rtt_ms)) AS establish_latency_ms, ROUND(SUM(tcp_c2s_lost_bytes + tcp_s2c_lost_bytes)/SUM(sent_bytes + received_bytes + tcp_c2s_lost_bytes + tcp_s2c_lost_bytes),4) AS tcp_lostlen_percent, ROUND(SUM(tcp_c2s_rtx_pkts + tcp_s2c_rtx_pkts)/ SUM(sent_pkts + received_pkts),4) AS pkt_retrans_percent FROM session_record_cn WHERE recv_time >= 1717639552-3600 AND recv_time < 1717643152-3600 AND ip_protocol IN (\'tcp\') AND ip IN ( \'116.178.236.216\',\'116.178.236.217\',\'116.178.78.195\' ) AND (server_ip=\'116.178.236.216\') GROUP BY ip \\\",\\n \\\"msg\\\": \\\"OK\\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"code\",\n \"value\" : \"999\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"time\",\n \"value\" : \"2023-09-01 06:58:24\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"404 null at Row:10~10,Col:32~36\\\\n\\\\nvar galaxyResult = httpRequest.get().getBody();\\\\r\\\\n ^^^^^\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandleNone\' as preHandle;\r\nimport \'@/pre/typeHandle2nd\' as typeHandle;\r\nimport \'@/post/table\' as objHandle\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\n\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"cycle\":cycle,\r\n \"type\":type,\r\n \"q\":q,\r\n \"params\":params\r\n}\r\n\r\npreHandle(parameter);\r\ntypeHandle(parameter);\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"<#if cycle?default(\'\')?trim? length gt 0 && cycle ==1> SELECT ${dimension} as ${label}, ROUND(AVG(tcp_rtt_ms)) AS establish_latency_ms, ROUND(SUM(tcp_c2s_lost_bytes + tcp_s2c_lost_bytes)/SUM(sent_bytes + received_bytes + tcp_c2s_lost_bytes + tcp_s2c_lost_bytes),4) AS tcp_lostlen_percent, ROUND(SUM(tcp_c2s_rtx_pkts + tcp_s2c_rtx_pkts)/ SUM(sent_pkts + received_pkts),4) AS pkt_retrans_percent FROM session_record_cn WHERE recv_time >= ${startTime}-${timeDiff} AND recv_time < ${endTime}-${timeDiff} AND ip_protocol IN (\'tcp\') AND ${label} IN (<#if params?default(\'\')?trim? length gt 0> ${params} </#if>)<#if q?default(\'\')?trim? length gt 0> AND (${q}) </#if> GROUP BY ${label} <#else> SELECT ${dimension} as ${label}, ROUND(AVG(tcp_rtt_ms)) AS establish_latency_ms, ROUND(SUM(tcp_c2s_lost_bytes + tcp_s2c_lost_bytes)/SUM(sent_bytes + received_bytes + tcp_c2s_lost_bytes + tcp_s2c_lost_bytes),4) AS tcp_lostlen_percent, ROUND(SUM(tcp_c2s_rtx_pkts + tcp_s2c_rtx_pkts)/ SUM(sent_pkts + received_pkts),4) AS pkt_retrans_percent FROM session_record_cn WHERE recv_time >= ${startTime} AND recv_time < ${endTime} AND ip_protocol IN (\'tcp\') AND ${label} IN (<#if params?default(\'\')?trim? length gt 0> ${params} </#if>) <#if q?default(\'\')?trim? length gt 0> AND (${q}) </#if> GROUP BY ${label} </#if>\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"applicationPerformanceOverviewDrilldownDimensionCycleDimensionTcpSessionDelay\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar galaxyRes = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nvar result = objHandle(galaxyRes);\r\n\r\nreturn result;');
INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/drilldown/各维度上周期流量统计.ms', '{\n \"properties\" : { },\n \"id\" : \"copy1673337279806d74832\",\n \"script\" : null,\n \"groupId\" : \"17d545d31dc94a3d997e0c35db420305\",\n \"name\" : \"各维度上周期流量统计\",\n \"createTime\" : null,\n \"updateTime\" : 1693551472149,\n \"lock\" : null,\n \"createBy\" : \"th\",\n \"updateBy\" : \"ljy\",\n \"path\" : \"/dimensionCycleTrafficAnalysis\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1673585497\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1673589097\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"type\",\n \"value\" : \"serverIp\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"q\",\n \"value\" : \"server_ip=\'116.178.236.216\'\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"params\",\n \"value\" : \"\'China\'\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"limit\",\n \"value\" : \"10\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"orderBy\",\n \"value\" : \"totalBytes\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"code\\\": 999,\\n \\\"time\\\": \\\"2023-08-25 08:49:34\\\",\\n \\\"message\\\": \\\"The following has evaluated to null or missing:\\\\n==> label [in template \\\\\\\"applicationPerformanceOverviewDrilldownDimensionCycleTrafficAnalysis\\\\\\\" at line 1, column 20]\\\\n\\\\n----\\\\nTip: If the failing expression is known to legally refer to something that\'s sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??\\\\n----\\\\n\\\\n----\\\\nFTL stack trace (\\\\\\\"~\\\\\\\" means nesting-related):\\\\n\\\\t- Failed at: ${label} [in template \\\\\\\"applicationPerformanceOverviewDrilldownDimensionCycleTrafficAnalysis\\\\\\\" at line 1, column 18]\\\\n----\\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"code\",\n \"value\" : \"999\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"time\",\n \"value\" : \"2023-08-25 08:49:34\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"The following has evaluated to null or missing:\\\\n==> label [in template \\\\\\\"applicationPerformanceOverviewDrilldownDimensionCycleTrafficAnalysis\\\\\\\" at line 1, column 20]\\\\n\\\\n----\\\\nTip: If the failing expression is known to legally refer to something that\'s sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??\\\\n----\\\\n\\\\n----\\\\nFTL stack trace (\\\\\\\"~\\\\\\\" means nesting-related):\\\\n\\\\t- Failed at: ${label} [in template \\\\\\\"applicationPerformanceOverviewDrilldownDimensionCycleTrafficAnalysis\\\\\\\" at line 1, column 18]\\\\n----\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandleNone\' as preHandle;\r\nimport \'@/pre/typeHandle2nd\' as typeHandle;\r\nimport \'@/post/table\' as objHandle\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\nimport \'@/public/orderHandle\' as orderHandle\r\n\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"limit\":limit,\r\n \"type\":type,\r\n \"q\":q,\r\n \"params\":params,\r\n \"orderBy\":orderBy\r\n}\r\nparameter.orderBy = orderHandle(parameter.orderBy);\r\npreHandle(parameter);\r\ntypeHandle(parameter);\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"SELECT ${label} AS ${label}, SUM(bytes_total) AS total_bytes, SUM(packets_total) AS total_packets, SUM(sessions) AS sessions, SUM(inbound_bytes) AS inbound_bytes, SUM(inbound_packets) AS inbound_packets, SUM(outbound_bytes) AS outbound_bytes, SUM(outbound_packets) AS outbound_packets, SUM(internal_bytes) AS internal_bytes, SUM(internal_packets) AS internal_packets, SUM(external_bytes) AS through_bytes, SUM(external_packets) AS through_packets FROM ( SELECT ${dimension} as ${label}, SUM(received_bytes + sent_bytes) AS bytes_total, SUM(received_pkts + sent_pkts) AS packets_total, SUM(sessions) AS sessions, IF(client_zone = \'internal\' AND server_zone = \'external\' , SUM(received_bytes), IF(client_zone = \'external\' AND server_zone = \'internal\', SUM(sent_bytes), 0)) AS inbound_bytes, IF(client_zone = \'internal\' AND server_zone = \'external\' , SUM(received_pkts), IF(client_zone = \'external\' AND server_zone = \'internal\', SUM(sent_pkts), 0)) AS inbound_packets, IF(client_zone = \'external\' AND server_zone = \'internal\' , SUM(received_bytes), IF(client_zone = \'internal\' AND server_zone = \'external\', SUM(sent_bytes), 0)) AS outbound_bytes, IF(client_zone = \'external\' AND server_zone = \'internal\' , SUM(received_pkts), IF(client_zone = \'internal\' AND server_zone = \'external\', SUM(sent_pkts), 0)) AS outbound_packets, IF(client_zone = \'internal\' AND server_zone = \'internal\' , SUM(received_bytes + sent_bytes),0) AS internal_bytes, IF(client_zone = \'internal\' AND server_zone = \'internal\' , SUM(received_pkts + sent_pkts), 0) AS internal_packets, IF(client_zone = \'external\' AND server_zone = \'external\' , SUM(received_bytes + sent_bytes),0) AS external_bytes, IF(client_zone = \'external\' AND server_zone = \'external\' , SUM(received_pkts + sent_pkts), 0) AS external_packets FROM session_record_cn WHERE recv_time >= ${startTime}-${timeDiff} AND recv_time < ${endTime}-${timeDiff} AND ${label} IN (<#if params?default(\'\')?trim? length gt 0> ${params} </#if>) <#if q?default(\'\')?trim? length gt 0> AND (${q}) </#if> GROUP BY ${label},client_zone,server_zone ) GROUP BY ${label} <#if orderBy?default(\'\')?trim? length gt 0> ORDER BY ${orderBy} desc <#else> ORDER BY total_bytes desc </#if> <#if limit?default(\'\')?trim? length gt 0> LIMIT ${limit} </#if>\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"applicationPerformanceOverviewDrilldownDimensionCycleTrafficAnalysis\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar galaxyRes = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nvar result = objHandle(galaxyRes);\r\n\r\nreturn result;');
INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/drilldown/各维度下钻列表.ms', '{\n \"properties\" : { },\n \"id\" : \"8ba725f05ce44ef7a338d0c7bb1e5414\",\n \"script\" : null,\n \"groupId\" : \"17d545d31dc94a3d997e0c35db420305\",\n \"name\" : \"各维度下钻列表\",\n \"createTime\" : null,\n \"updateTime\" : 1694490503290,\n \"lock\" : null,\n \"createBy\" : null,\n \"updateBy\" : \"ljy\",\n \"path\" : \"/list\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1694485599\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1694489199\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"limit\",\n \"value\" : null,\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"type\",\n \"value\" : \"superAdminArea\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"name\",\n \"value\" : null,\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"message\\\": \\\"Please log in to the system first\\\",\\n \\\"code\\\": 518008,\\n \\\"time\\\": 1694490490228\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"message\",\n \"value\" : \"Please log in to the system first\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"code\",\n \"value\" : \"518008\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"time\",\n \"value\" : \"1694490490228\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport \'@get:/interface/overview/drilldown/list\' as getList;\r\n\r\nvar result = getList();\r\n\r\nreturn result;');
INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/drilldown/各维度流量统计.ms', '{\n \"properties\" : { },\n \"id\" : \"copy1673337370844d30420\",\n \"script\" : null,\n \"groupId\" : \"17d545d31dc94a3d997e0c35db420305\",\n \"name\" : \"各维度流量统计\",\n \"createTime\" : null,\n \"updateTime\" : 1694070128194,\n \"lock\" : null,\n \"createBy\" : \"th\",\n \"updateBy\" : \"ljy\",\n \"path\" : \"/dimensionTrafficAnalysis\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1694062927\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1694066527\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"type\",\n \"value\" : \"ip\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"q\",\n \"value\" : \"server_asn = \'$param\'\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"limit\",\n \"value\" : \"10\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"orderBy\",\n \"value\" : \"totalBytes\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"status\\\": 200,\\n \\\"code\\\": 200,\\n \\\"queryKey\\\": \\\"99d0c4c0ab409636b4150bc8431ba170\\\",\\n \\\"success\\\": true,\\n \\\"message\\\": null,\\n \\\"statistics\\\": {\\n \\\"elapsed\\\": 0,\\n \\\"rows_read\\\": 0,\\n \\\"bytes_read\\\": 0,\\n \\\"result_size\\\": 0,\\n \\\"result_rows\\\": 0\\n },\\n \\\"job\\\": null,\\n \\\"formatType\\\": \\\"json\\\",\\n \\\"meta\\\": [{\\n \\\"name\\\": \\\"ip\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"total_bytes\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"total_packets\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"sessions\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"inbound_bytes\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"inbound_packets\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"outbound_bytes\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"outbound_packets\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"internal_bytes\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"internal_packets\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"through_bytes\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"through_packets\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }],\\n \\\"data\\\": {\\n \\\"resultType\\\": \\\"table\\\",\\n \\\"result\\\": []\\n },\\n \\\"originalUrl\\\": \\\"http://192.168.44.55:9999/?query=SELECT ip AS ip, SUM(bytes_total) AS total_bytes, SUM(packets_total) AS total_packets, SUM(sessions) AS sessions, SUM(inbound_bytes) AS inbound_bytes, SUM(inbound_packets) AS inbound_packets, SUM(outbound_bytes) AS outbound_bytes, SUM(outbound_packets) AS outbound_packets, SUM(internal_bytes) AS internal_bytes, SUM(internal_packets) AS internal_packets, SUM(external_bytes) AS through_bytes, SUM(external_packets) AS through_packets FROM ( SELECT arrayJoin(splitByChar(\'_\',concat(client_ip,\'_\',server_ip))) as ip, SUM(received_bytes + sent_bytes) AS bytes_total, SUM(received_pkts + sent_pkts) AS packets_total, SUM(sessions) AS sessions, IF(client_zone = \'internal\' AND server_zone = \'external\' , SUM(received_bytes), IF(client_zone = \'external\' AND server_zone = \'internal\', SUM(sent_bytes), 0)) AS inbound_bytes, IF(client_zone = \'internal\' AND server_zone = \'external\' , SUM(received_pkts), IF(client_zone = \'external\' AND server_zone = \'internal\', SUM(sent_pkts), 0)) AS inbound_packets, IF(client_zone = \'external\' AND server_zone = \'internal\' , SUM(received_bytes), IF(client_zone = \'internal\' AND server_zone = \'external\', SUM(sent_bytes), 0)) AS outbound_bytes, IF(client_zone = \'external\' AND server_zone = \'internal\' , SUM(received_pkts), IF(client_zone = \'internal\' AND server_zone = \'external\', SUM(sent_pkts), 0)) AS outbound_packets, IF(client_zone = \'internal\' AND server_zone = \'internal\' , SUM(received_bytes + sent_bytes),0) AS internal_bytes, IF(client_zone = \'internal\' AND server_zone = \'internal\' , SUM(received_pkts + sent_pkts), 0) AS internal_packets, IF(client_zone = \'external\' AND server_zone = \'external\' , SUM(received_bytes + sent_bytes),0) AS external_bytes, IF(client_zone = \'external\' AND server_zone = \'external\' , SUM(received_pkts + sent_pkts), 0) AS external_packets FROM session_record_cn WHERE recv_time >= 1694062927 AND recv_time < 1694066527 AND notEmpty(ip) AND (client_asn = \'$param\') GROUP BY ip,client_zone,server_zone ) GROUP BY ip ORDER BY total_bytes desc LIMIT 10 &format=json&option=real_time\\\",\\n \\\"msg\\\": \\\"OK\\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"status\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"code\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"queryKey\",\n \"value\" : \"99d0c4c0ab409636b4150bc8431ba170\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"success\",\n \"value\" : \"true\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Boolean\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"statistics\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"elapsed\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"rows_read\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"bytes_read\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_size\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_rows\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"job\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"formatType\",\n \"value\" : \"json\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"meta\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"name\",\n \"value\" : \"ip\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"type\",\n \"value\" : \"string\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"category\",\n \"value\" : \"Metric\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"data\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"resultType\",\n \"value\" : \"table\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"originalUrl\",\n \"value\" : \"http://192.168.44.55:9999/?query=SELECT ip AS ip, SUM(bytes_total) AS total_bytes, SUM(packets_total) AS total_packets, SUM(sessions) AS sessions, SUM(inbound_bytes) AS inbound_bytes, SUM(inbound_packets) AS inbound_packets, SUM(outbound_bytes) AS outbound_bytes, SUM(outbound_packets) AS outbound_packets, SUM(internal_bytes) AS internal_bytes, SUM(internal_packets) AS internal_packets, SUM(external_bytes) AS through_bytes, SUM(external_packets) AS through_packets FROM ( SELECT arrayJoin(splitByChar(\'_\',concat(client_ip,\'_\',server_ip))) as ip, SUM(received_bytes + sent_bytes) AS bytes_total, SUM(received_pkts + sent_pkts) AS packets_total, SUM(sessions) AS sessions, IF(client_zone = \'internal\' AND server_zone = \'external\' , SUM(received_bytes), IF(client_zone = \'external\' AND server_zone = \'internal\', SUM(sent_bytes), 0)) AS inbound_bytes, IF(client_zone = \'internal\' AND server_zone = \'external\' , SUM(received_pkts), IF(client_zone = \'external\' AND server_zone = \'internal\', SUM(sent_pkts), 0)) AS inbound_packets, IF(client_zone = \'external\' AND server_zone = \'internal\' , SUM(received_bytes), IF(client_zone = \'internal\' AND server_zone = \'external\', SUM(sent_bytes), 0)) AS outbound_bytes, IF(client_zone = \'external\' AND server_zone = \'internal\' , SUM(received_pkts), IF(client_zone = \'internal\' AND server_zone = \'external\', SUM(sent_pkts), 0)) AS outbound_packets, IF(client_zone = \'internal\' AND server_zone = \'internal\' , SUM(received_bytes + sent_bytes),0) AS internal_bytes, IF(client_zone = \'internal\' AND server_zone = \'internal\' , SUM(received_pkts + sent_pkts), 0) AS internal_packets, IF(client_zone = \'external\' AND server_zone = \'external\' , SUM(received_bytes + sent_bytes),0) AS external_bytes, IF(client_zone = \'external\' AND server_zone = \'external\' , SUM(received_pkts + sent_pkts), 0) AS external_packets FROM session_record_cn WHERE recv_time >= 1694062927 AND recv_time < 1694066527 AND notEmpty(ip) AND (client_asn = \'$param\') GROUP BY ip,client_zone,server_zone ) GROUP BY ip ORDER BY total_bytes desc LIMIT 10 &format=json&option=real_time\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"msg\",\n \"value\" : \"OK\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandleNone\' as preHandle;\r\nimport \'@/pre/typeHandle2nd\' as typeHandle;\r\nimport \'@/post/table\' as objHandle\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\nimport \'@/public/orderHandle\' as orderHandle\r\n\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"params\":params,\r\n \"limit\":limit,\r\n \"type\":type,\r\n \"q\":q,\r\n \"orderBy\":orderBy\r\n}\r\nparameter.orderBy = orderHandle(parameter.orderBy);\r\npreHandle(parameter);\r\ntypeHandle(parameter);\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\r\\n \\\"query\\\":\\\"SELECT ${label} AS ${label}, SUM(bytes_total) AS total_bytes, SUM(packets_total) AS total_packets, SUM(sessions) AS sessions, SUM(inbound_bytes) AS inbound_bytes, SUM(inbound_packets) AS inbound_packets, SUM(outbound_bytes) AS outbound_bytes, SUM(outbound_packets) AS outbound_packets, SUM(internal_bytes) AS internal_bytes, SUM(internal_packets) AS internal_packets, SUM(external_bytes) AS through_bytes, SUM(external_packets) AS through_packets FROM ( SELECT ${dimension} as ${label}, SUM(received_bytes + sent_bytes) AS bytes_total, SUM(received_pkts + sent_pkts) AS packets_total, SUM(sessions) AS sessions, IF(client_zone = \\\'internal\\\' AND server_zone = \\\'external\\\' , SUM(received_bytes), IF(client_zone = \\\'external\\\' AND server_zone = \\\'internal\\\', SUM(sent_bytes), 0)) AS inbound_bytes, IF(client_zone = \\\'internal\\\' AND server_zone = \\\'external\\\' , SUM(received_pkts), IF(client_zone = \\\'external\\\' AND server_zone = \\\'internal\\\', SUM(sent_pkts), 0)) AS inbound_packets, IF(client_zone = \\\'external\\\' AND server_zone = \\\'internal\\\' , SUM(received_bytes), IF(client_zone = \\\'internal\\\' AND server_zone = \\\'external\\\', SUM(sent_bytes), 0)) AS outbound_bytes, IF(client_zone = \\\'external\\\' AND server_zone = \\\'internal\\\' , SUM(received_pkts), IF(client_zone = \\\'internal\\\' AND server_zone = \\\'external\\\', SUM(sent_pkts), 0)) AS outbound_packets, IF(client_zone = \\\'internal\\\' AND server_zone = \\\'internal\\\' , SUM(received_bytes + sent_bytes),0) AS internal_bytes, IF(client_zone = \\\'internal\\\' AND server_zone = \\\'internal\\\' , SUM(received_pkts + sent_pkts), 0) AS internal_packets, IF(client_zone = \\\'external\\\' AND server_zone = \\\'external\\\' , SUM(received_bytes + sent_bytes),0) AS external_bytes, IF(client_zone = \\\'external\\\' AND server_zone = \\\'external\\\' , SUM(received_pkts + sent_pkts), 0) AS external_packets FROM session_record_cn WHERE recv_time >= ${startTime} AND recv_time < ${endTime} AND notEmpty(${label}) <#if params?default(\'\')?trim? length gt 0> AND ${label} IN (${params})</#if> <#if q?default(\\\'\\\')?trim? length gt 0> AND (${q}) </#if> GROUP BY ${label},client_zone,server_zone ) GROUP BY ${label} <#if orderBy?default(\\\'\\\')?trim? length gt 0> ORDER BY ${orderBy} desc <#else> ORDER BY total_bytes desc </#if> <#if limit?default(\\\'\\\')?trim? length gt 0> LIMIT ${limit} </#if>\\\",\\r\\n \\\"option\\\": \\\"real_time\\\",\\r\\n \\\"format\\\": \\\"json\\\"\\r\\n}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"applicationPerformanceOverviewDrilldownDimensionTrafficAnalysis\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar galaxyRes = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nvar result = objHandle(galaxyRes);\r\n\r\nreturn result;');
@@ -102,7 +102,7 @@ INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/ove
INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/整体HTTP响应延迟.ms', '{\n \"properties\" : { },\n \"id\" : \"copy1673944391203d81567\",\n \"script\" : null,\n \"groupId\" : \"34a616d95df64af18b77542132670eed\",\n \"name\" : \"整体HTTP响应延迟\",\n \"createTime\" : null,\n \"updateTime\" : 1673945439663,\n \"lock\" : null,\n \"createBy\" : \"th\",\n \"updateBy\" : \"ljy\",\n \"path\" : \"/totalHttpResponseDelay\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1673940665\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1673944265\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"status\\\": 200,\\n \\\"code\\\": 200,\\n \\\"queryKey\\\": \\\"7c2ec67593c6fc913a484c5cc74e5eec\\\",\\n \\\"success\\\": true,\\n \\\"message\\\": null,\\n \\\"statistics\\\": {\\n \\\"elapsed\\\": 6,\\n \\\"rows_read\\\": 119160,\\n \\\"bytes_read\\\": 3512816,\\n \\\"result_size\\\": 5141,\\n \\\"result_rows\\\": 101\\n },\\n \\\"job\\\": null,\\n \\\"formatType\\\": \\\"json\\\",\\n \\\"meta\\\": [{\\n \\\"name\\\": \\\"stat_time\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Dimension\\\"\\n }, {\\n \\\"name\\\": \\\"http_response_latency\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }],\\n \\\"data\\\": {\\n \\\"resultType\\\": \\\"matrix\\\",\\n \\\"result\\\": [{\\n \\\"type\\\": \\\"httpResponseLatency\\\",\\n \\\"httpResponseLatency\\\": {\\n \\\"values\\\": [\\n [\\\"1673940636\\\", \\\"87\\\"],\\n [\\\"1673940672\\\", \\\"254\\\"],\\n [\\\"1673940708\\\", \\\"170\\\"],\\n [\\\"1673940744\\\", \\\"162\\\"],\\n [\\\"1673940780\\\", \\\"361\\\"],\\n [\\\"1673940816\\\", \\\"239\\\"],\\n [\\\"1673940852\\\", \\\"108\\\"],\\n [\\\"1673940888\\\", \\\"172\\\"],\\n [\\\"1673940924\\\", \\\"129\\\"],\\n [\\\"1673940960\\\", \\\"189\\\"],\\n [\\\"1673940996\\\", \\\"165\\\"],\\n [\\\"1673941032\\\", \\\"328\\\"],\\n [\\\"1673941068\\\", \\\"283\\\"],\\n [\\\"1673941104\\\", \\\"101\\\"],\\n [\\\"1673941140\\\", \\\"146\\\"],\\n [\\\"1673941176\\\", \\\"113\\\"],\\n [\\\"1673941212\\\", \\\"97\\\"],\\n [\\\"1673941248\\\", \\\"149\\\"],\\n [\\\"1673941284\\\", \\\"251\\\"],\\n [\\\"1673941320\\\", \\\"277\\\"],\\n [\\\"1673941356\\\", \\\"254\\\"],\\n [\\\"1673941392\\\", \\\"224\\\"],\\n [\\\"1673941428\\\", \\\"209\\\"],\\n [\\\"1673941464\\\", \\\"253\\\"],\\n [\\\"1673941500\\\", \\\"420\\\"],\\n [\\\"1673941536\\\", \\\"117\\\"],\\n [\\\"1673941572\\\", \\\"282\\\"],\\n [\\\"1673941608\\\", \\\"88\\\"],\\n [\\\"1673941644\\\", \\\"182\\\"],\\n [\\\"1673941680\\\", \\\"243\\\"],\\n [\\\"1673941716\\\", \\\"274\\\"],\\n [\\\"1673941752\\\", \\\"196\\\"],\\n [\\\"1673941788\\\", \\\"85\\\"],\\n [\\\"1673941824\\\", \\\"268\\\"],\\n [\\\"1673941860\\\", \\\"119\\\"],\\n [\\\"1673941896\\\", \\\"242\\\"],\\n [\\\"1673941932\\\", \\\"228\\\"],\\n [\\\"1673941968\\\", \\\"122\\\"],\\n [\\\"1673942004\\\", \\\"186\\\"],\\n [\\\"1673942040\\\", \\\"120\\\"],\\n [\\\"1673942076\\\", \\\"279\\\"],\\n [\\\"1673942112\\\", \\\"223\\\"],\\n [\\\"1673942148\\\", \\\"195\\\"],\\n [\\\"1673942184\\\", \\\"225\\\"],\\n [\\\"1673942220\\\", \\\"154\\\"],\\n [\\\"1673942256\\\", \\\"404\\\"],\\n [\\\"1673942292\\\", \\\"147\\\"],\\n [\\\"1673942328\\\", \\\"195\\\"],\\n [\\\"1673942364\\\", \\\"122\\\"],\\n [\\\"1673942400\\\", \\\"219\\\"],\\n [\\\"1673942436\\\", \\\"181\\\"],\\n [\\\"1673942472\\\", \\\"94\\\"],\\n [\\\"1673942508\\\", \\\"143\\\"],\\n [\\\"1673942544\\\", \\\"249\\\"],\\n [\\\"1673942580\\\", \\\"123\\\"],\\n [\\\"1673942616\\\", \\\"110\\\"],\\n [\\\"1673942652\\\", \\\"139\\\"],\\n [\\\"1673942688\\\", \\\"134\\\"],\\n [\\\"1673942724\\\", \\\"128\\\"],\\n [\\\"1673942760\\\", \\\"205\\\"],\\n [\\\"1673942796\\\", \\\"78\\\"],\\n [\\\"1673942832\\\", \\\"95\\\"],\\n [\\\"1673942868\\\", \\\"173\\\"],\\n [\\\"1673942904\\\", \\\"170\\\"],\\n [\\\"1673942940\\\", \\\"128\\\"],\\n [\\\"1673942976\\\", \\\"370\\\"],\\n [\\\"1673943012\\\", \\\"211\\\"],\\n [\\\"1673943048\\\", \\\"330\\\"],\\n [\\\"1673943084\\\", \\\"286\\\"],\\n [\\\"1673943120\\\", \\\"144\\\"],\\n [\\\"1673943156\\\", \\\"91\\\"],\\n [\\\"1673943192\\\", \\\"139\\\"],\\n [\\\"1673943228\\\", \\\"256\\\"],\\n [\\\"1673943264\\\", \\\"104\\\"],\\n [\\\"1673943300\\\", \\\"216\\\"],\\n [\\\"1673943336\\\", \\\"92\\\"],\\n [\\\"1673943372\\\", \\\"165\\\"],\\n [\\\"1673943408\\\", \\\"203\\\"],\\n [\\\"1673943444\\\", \\\"503\\\"],\\n [\\\"1673943480\\\", \\\"211\\\"],\\n [\\\"1673943516\\\", \\\"248\\\"],\\n [\\\"1673943552\\\", \\\"147\\\"],\\n [\\\"1673943588\\\", \\\"157\\\"],\\n [\\\"1673943624\\\", \\\"283\\\"],\\n [\\\"1673943660\\\", \\\"116\\\"],\\n [\\\"1673943696\\\", \\\"174\\\"],\\n [\\\"1673943732\\\", \\\"170\\\"],\\n [\\\"1673943768\\\", \\\"209\\\"],\\n [\\\"1673943804\\\", \\\"245\\\"],\\n [\\\"1673943840\\\", \\\"277\\\"],\\n [\\\"1673943876\\\", \\\"116\\\"],\\n [\\\"1673943912\\\", \\\"240\\\"],\\n [\\\"1673943948\\\", \\\"161\\\"],\\n [\\\"1673943984\\\", \\\"100\\\"],\\n [\\\"1673944020\\\", \\\"170\\\"],\\n [\\\"1673944056\\\", \\\"152\\\"],\\n [\\\"1673944092\\\", \\\"175\\\"],\\n [\\\"1673944128\\\", \\\"155\\\"],\\n [\\\"1673944164\\\", \\\"82\\\"],\\n [\\\"1673944200\\\", \\\"298\\\"],\\n [\\\"1673944236\\\", \\\"253\\\"]\\n ],\\n \\\"analysis\\\": {\\n \\\"avg\\\": \\\"5.4\\\",\\n \\\"max\\\": \\\"503.0\\\",\\n \\\"min\\\": \\\"78.0\\\",\\n \\\"p95\\\": \\\"330.0\\\"\\n }\\n }\\n }]\\n },\\n \\\"msg\\\": \\\"OK\\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"status\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"code\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"queryKey\",\n \"value\" : \"7c2ec67593c6fc913a484c5cc74e5eec\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"success\",\n \"value\" : \"true\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Boolean\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"statistics\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"elapsed\",\n \"value\" : \"6\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"rows_read\",\n \"value\" : \"119160\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"bytes_read\",\n \"value\" : \"3512816\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_size\",\n \"value\" : \"5141\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_rows\",\n \"value\" : \"101\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"job\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"formatType\",\n \"value\" : \"json\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"meta\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"name\",\n \"value\" : \"stat_time\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"type\",\n \"value\" : \"long\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"category\",\n \"value\" : \"Dimension\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"data\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"resultType\",\n \"value\" : \"matrix\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"type\",\n \"value\" : \"httpResponseLatency\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"httpResponseLatency\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"values\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"1673940636\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"analysis\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"avg\",\n \"value\" : \"5.4\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"max\",\n \"value\" : \"503.0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"min\",\n \"value\" : \"78.0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"p95\",\n \"value\" : \"330.0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n } ]\n } ]\n } ]\n }, {\n \"name\" : \"msg\",\n \"value\" : \"OK\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandle\' as preHandle;\r\nimport \'@/public/getPercentile\' as getPercentile\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\n\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime\r\n}\r\n\r\npreHandle(parameter);\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\r\\n \\\"query\\\": \\\"SELECT TIME_FLOOR_WITH_FILL(recv_time,\\\'PT${step}S\\\',\\\'zero\\\') AS stat_time,IFNULL(ROUND(AVG(http_response_latency_ms)),0) AS http_response_latency FROM session_record_cn WHERE recv_time >= ${startTime} AND recv_time < ${endTime} AND decoded_as = \\\'HTTP\\\' GROUP BY stat_time ORDER BY stat_time ASC\\\",\\r\\n \\\"option\\\": \\\"real_time\\\",\\r\\n \\\"format\\\": \\\"json\\\"\\r\\n}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"applicationPerformanceOverviewHttpResponseDelay\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar result = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nif(result.success){\r\n var o = {};\r\n o.resultType=\"matrix\";\r\n var old = new ArrayList();\r\n var list = result.data;\r\n var newList = new ArrayList();\r\n for(i,j in list){\r\n newList.add(list[i]);\r\n }\r\n if(list.length > 0){\r\n for(i,j in list){\r\n var pojo = list[i];\r\n var tempObj= {};\r\n for (key,value in pojo){\r\n if(key.indexOf(\"stat_time\") != -1){\r\n tempObj[\'statTime\'] = pojo[key]\r\n }else if(key.indexOf(\"establish_latency_ms\") != -1){\r\n tempObj[\'establishLatencyMs\'] = pojo[key]\r\n }else if(key.indexOf(\"http_response_latency\") != -1){\r\n tempObj[\'httpResponseLatency\'] = pojo[key]\r\n }else if(key.indexOf(\"ssl_con_latency\") != -1){\r\n tempObj[\'sslConLatency\'] = pojo[key]\r\n }else if(key.indexOf(\"tcp_lostlen_percent\") != -1){\r\n tempObj[\'tcpLostlenPercent\'] = pojo[key]\r\n }else if(key.indexOf(\"pkt_retrans_percent\") != -1){\r\n tempObj[\'pktRetransPercent\'] = pojo[key]\r\n }\r\n }\r\n list[i] = tempObj;\r\n list[i].statTime = list[i].statTime;\r\n }\r\n var establishLatencyMs = [];\r\n var httpResponseLatency = [];\r\n var sslConLatency = [];\r\n var tcpLostlenPercent = [];\r\n var pktRetransPercent = [];\r\n for(key,value in list[0]){\r\n if(key.indexOf(\"establishLatencyMs\") != -1){\r\n establishLatencyMs.push(key);\r\n } else if(key.indexOf(\"httpResponseLatency\") != -1){\r\n httpResponseLatency.push(key);\r\n } else if(key.indexOf(\"sslConLatency\") != -1){\r\n sslConLatency.push(key);\r\n } else if(key.indexOf(\"tcpLostlenPercent\") != -1){\r\n tcpLostlenPercent.push(key);\r\n } else if(key.indexOf(\"pktRetransPercent\") != -1){\r\n pktRetransPercent.push(key);\r\n }\r\n }\r\n var map = new HashMap();\r\n map.put(\"establishLatencyMs\",\"establish_latency_ms\");\r\n map.put(\"httpResponseLatency\",\"http_response_latency\");\r\n map.put(\"sslConLatency\",\"ssl_con_latency\");\r\n map.put(\"tcpLostlenPercent\",\"tcp_lostlen_percent\");\r\n map.put(\"pktRetransPercent\",\"pkt_retrans_percent\");\r\n var type = {};\r\n type.httpResponseLatency = httpResponseLatency;\r\n for(key,value in type){\r\n var obj = {};\r\n obj.type = key;\r\n var typeKey = type[key];\r\n for(m,n in typeKey){\r\n var zong = {};\r\n var analysis = {};\r\n var values = new ArrayList();\r\n list.sort((a,b)=>a.statTime.asDouble()-b.statTime.asDouble());\r\n var sumValue = 0;\r\n for(i,j in list){\r\n var pojo = list[i];\r\n var tempArray = new ArrayList();\r\n tempArray.add(pojo[\"statTime\"]);\r\n tempArray.add(pojo[typeKey[m]] + \"\");\r\n values.add(tempArray);\r\n }\r\n for(i,j in newList){\r\n var pojo = newList[i];\r\n var field = map.get(typeKey[m]);\r\n var value = pojo[field].asDouble();\r\n sumValue += value;\r\n }\r\n analysis.avg = (sumValue/parameter.timeDiff).toFixed(2).asDouble();\r\n if(key==\"bytes\"){\r\n analysis.avg = analysis.avg * 8;\r\n }\r\n analysis.avg=analysis.avg+\"\";\r\n \r\n var plist = [];\r\n for(i,j in values){\r\n plist.push(values[i][1].asDouble());\r\n }\r\n analysis.max = plist.max()+\"\";\r\n analysis.min = plist.min()+\"\";\r\n analysis.p95 = getPercentile(plist, 0.95)+\"\";\r\n \r\n \r\n zong.values = values;\r\n zong.analysis = analysis;\r\n \r\n obj[typeKey[m]] = zong;\r\n }\r\n old.add(obj);\r\n }\r\n }\r\n o.result = old;\r\n result.code=200;\r\n result.data=o;\r\n result.msg = result.message;\r\n result.message=null;\r\n}\r\n\r\nreturn result;');
INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/整体SSL握手延迟.ms', '{\n \"properties\" : { },\n \"id\" : \"copy1673945415748d10175\",\n \"script\" : null,\n \"groupId\" : \"34a616d95df64af18b77542132670eed\",\n \"name\" : \"整体SSL握手延迟\",\n \"createTime\" : null,\n \"updateTime\" : 1673945533814,\n \"lock\" : null,\n \"createBy\" : \"th\",\n \"updateBy\" : \"ljy\",\n \"path\" : \"/totalSslConDelay\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1673940665\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1673944265\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"status\\\": 200,\\n \\\"code\\\": 200,\\n \\\"queryKey\\\": \\\"d6f27783c28c05d135bd7f3288ecc717\\\",\\n \\\"success\\\": true,\\n \\\"message\\\": null,\\n \\\"statistics\\\": {\\n \\\"elapsed\\\": 4,\\n \\\"rows_read\\\": 119160,\\n \\\"bytes_read\\\": 3512816,\\n \\\"result_size\\\": 4343,\\n \\\"result_rows\\\": 101\\n },\\n \\\"job\\\": null,\\n \\\"formatType\\\": \\\"json\\\",\\n \\\"meta\\\": [{\\n \\\"name\\\": \\\"stat_time\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Dimension\\\"\\n }, {\\n \\\"name\\\": \\\"ssl_con_latency\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }],\\n \\\"data\\\": {\\n \\\"resultType\\\": \\\"matrix\\\",\\n \\\"result\\\": [{\\n \\\"type\\\": \\\"sslConLatency\\\",\\n \\\"sslConLatency\\\": {\\n \\\"values\\\": [\\n [\\\"1673940636\\\", \\\"0\\\"],\\n [\\\"1673940672\\\", \\\"0\\\"],\\n [\\\"1673940708\\\", \\\"0\\\"],\\n [\\\"1673940744\\\", \\\"0\\\"],\\n [\\\"1673940780\\\", \\\"0\\\"],\\n [\\\"1673940816\\\", \\\"0\\\"],\\n [\\\"1673940852\\\", \\\"0\\\"],\\n [\\\"1673940888\\\", \\\"0\\\"],\\n [\\\"1673940924\\\", \\\"0\\\"],\\n [\\\"1673940960\\\", \\\"0\\\"],\\n [\\\"1673940996\\\", \\\"0\\\"],\\n [\\\"1673941032\\\", \\\"0\\\"],\\n [\\\"1673941068\\\", \\\"0\\\"],\\n [\\\"1673941104\\\", \\\"0\\\"],\\n [\\\"1673941140\\\", \\\"0\\\"],\\n [\\\"1673941176\\\", \\\"0\\\"],\\n [\\\"1673941212\\\", \\\"0\\\"],\\n [\\\"1673941248\\\", \\\"0\\\"],\\n [\\\"1673941284\\\", \\\"0\\\"],\\n [\\\"1673941320\\\", \\\"0\\\"],\\n [\\\"1673941356\\\", \\\"0\\\"],\\n [\\\"1673941392\\\", \\\"0\\\"],\\n [\\\"1673941428\\\", \\\"0\\\"],\\n [\\\"1673941464\\\", \\\"0\\\"],\\n [\\\"1673941500\\\", \\\"0\\\"],\\n [\\\"1673941536\\\", \\\"0\\\"],\\n [\\\"1673941572\\\", \\\"0\\\"],\\n [\\\"1673941608\\\", \\\"0\\\"],\\n [\\\"1673941644\\\", \\\"0\\\"],\\n [\\\"1673941680\\\", \\\"0\\\"],\\n [\\\"1673941716\\\", \\\"0\\\"],\\n [\\\"1673941752\\\", \\\"0\\\"],\\n [\\\"1673941788\\\", \\\"0\\\"],\\n [\\\"1673941824\\\", \\\"0\\\"],\\n [\\\"1673941860\\\", \\\"0\\\"],\\n [\\\"1673941896\\\", \\\"0\\\"],\\n [\\\"1673941932\\\", \\\"0\\\"],\\n [\\\"1673941968\\\", \\\"0\\\"],\\n [\\\"1673942004\\\", \\\"0\\\"],\\n [\\\"1673942040\\\", \\\"0\\\"],\\n [\\\"1673942076\\\", \\\"0\\\"],\\n [\\\"1673942112\\\", \\\"0\\\"],\\n [\\\"1673942148\\\", \\\"0\\\"],\\n [\\\"1673942184\\\", \\\"0\\\"],\\n [\\\"1673942220\\\", \\\"0\\\"],\\n [\\\"1673942256\\\", \\\"0\\\"],\\n [\\\"1673942292\\\", \\\"0\\\"],\\n [\\\"1673942328\\\", \\\"0\\\"],\\n [\\\"1673942364\\\", \\\"0\\\"],\\n [\\\"1673942400\\\", \\\"0\\\"],\\n [\\\"1673942436\\\", \\\"0\\\"],\\n [\\\"1673942472\\\", \\\"0\\\"],\\n [\\\"1673942508\\\", \\\"0\\\"],\\n [\\\"1673942544\\\", \\\"0\\\"],\\n [\\\"1673942580\\\", \\\"0\\\"],\\n [\\\"1673942616\\\", \\\"0\\\"],\\n [\\\"1673942652\\\", \\\"0\\\"],\\n [\\\"1673942688\\\", \\\"0\\\"],\\n [\\\"1673942724\\\", \\\"0\\\"],\\n [\\\"1673942760\\\", \\\"0\\\"],\\n [\\\"1673942796\\\", \\\"0\\\"],\\n [\\\"1673942832\\\", \\\"0\\\"],\\n [\\\"1673942868\\\", \\\"0\\\"],\\n [\\\"1673942904\\\", \\\"0\\\"],\\n [\\\"1673942940\\\", \\\"0\\\"],\\n [\\\"1673942976\\\", \\\"0\\\"],\\n [\\\"1673943012\\\", \\\"0\\\"],\\n [\\\"1673943048\\\", \\\"0\\\"],\\n [\\\"1673943084\\\", \\\"0\\\"],\\n [\\\"1673943120\\\", \\\"0\\\"],\\n [\\\"1673943156\\\", \\\"0\\\"],\\n [\\\"1673943192\\\", \\\"0\\\"],\\n [\\\"1673943228\\\", \\\"0\\\"],\\n [\\\"1673943264\\\", \\\"0\\\"],\\n [\\\"1673943300\\\", \\\"0\\\"],\\n [\\\"1673943336\\\", \\\"0\\\"],\\n [\\\"1673943372\\\", \\\"0\\\"],\\n [\\\"1673943408\\\", \\\"0\\\"],\\n [\\\"1673943444\\\", \\\"0\\\"],\\n [\\\"1673943480\\\", \\\"0\\\"],\\n [\\\"1673943516\\\", \\\"0\\\"],\\n [\\\"1673943552\\\", \\\"0\\\"],\\n [\\\"1673943588\\\", \\\"0\\\"],\\n [\\\"1673943624\\\", \\\"0\\\"],\\n [\\\"1673943660\\\", \\\"0\\\"],\\n [\\\"1673943696\\\", \\\"0\\\"],\\n [\\\"1673943732\\\", \\\"0\\\"],\\n [\\\"1673943768\\\", \\\"0\\\"],\\n [\\\"1673943804\\\", \\\"0\\\"],\\n [\\\"1673943840\\\", \\\"0\\\"],\\n [\\\"1673943876\\\", \\\"0\\\"],\\n [\\\"1673943912\\\", \\\"0\\\"],\\n [\\\"1673943948\\\", \\\"0\\\"],\\n [\\\"1673943984\\\", \\\"0\\\"],\\n [\\\"1673944020\\\", \\\"0\\\"],\\n [\\\"1673944056\\\", \\\"0\\\"],\\n [\\\"1673944092\\\", \\\"0\\\"],\\n [\\\"1673944128\\\", \\\"0\\\"],\\n [\\\"1673944164\\\", \\\"0\\\"],\\n [\\\"1673944200\\\", \\\"0\\\"],\\n [\\\"1673944236\\\", \\\"0\\\"]\\n ],\\n \\\"analysis\\\": {\\n \\\"avg\\\": \\\"0.0\\\",\\n \\\"max\\\": \\\"0.0\\\",\\n \\\"min\\\": \\\"0.0\\\",\\n \\\"p95\\\": \\\"0.0\\\"\\n }\\n }\\n }]\\n },\\n \\\"msg\\\": \\\"OK\\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"status\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"code\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"queryKey\",\n \"value\" : \"d6f27783c28c05d135bd7f3288ecc717\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"success\",\n \"value\" : \"true\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Boolean\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"statistics\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"elapsed\",\n \"value\" : \"4\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"rows_read\",\n \"value\" : \"119160\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"bytes_read\",\n \"value\" : \"3512816\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_size\",\n \"value\" : \"4343\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_rows\",\n \"value\" : \"101\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"job\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"formatType\",\n \"value\" : \"json\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"meta\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"name\",\n \"value\" : \"stat_time\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"type\",\n \"value\" : \"long\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"category\",\n \"value\" : \"Dimension\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"data\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"resultType\",\n \"value\" : \"matrix\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"type\",\n \"value\" : \"sslConLatency\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"sslConLatency\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"values\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"1673940636\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"analysis\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"avg\",\n \"value\" : \"0.0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"max\",\n \"value\" : \"0.0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"min\",\n \"value\" : \"0.0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"p95\",\n \"value\" : \"0.0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n } ]\n } ]\n } ]\n }, {\n \"name\" : \"msg\",\n \"value\" : \"OK\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandle\' as preHandle;\r\nimport \'@/public/getPercentile\' as getPercentile\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\n\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime\r\n}\r\n\r\npreHandle(parameter);\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\r\\n \\\"query\\\": \\\"SELECT TIME_FLOOR_WITH_FILL(recv_time,\\\'PT${step}S\\\',\\\'zero\\\') AS stat_time,IFNULL(ROUND(AVG(ssl_handshake_latency_ms)),0) AS ssl_con_latency FROM session_record_cn WHERE recv_time >= ${startTime} AND recv_time < ${endTime} AND decoded_as = \\\'SSL\\\' GROUP BY stat_time ORDER BY stat_time ASC\\\",\\r\\n \\\"option\\\": \\\"real_time\\\",\\r\\n \\\"format\\\": \\\"json\\\"\\r\\n}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"applicationPerformanceOverviewHttpResponseDelay\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar result = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nif(result.success){\r\n var o = {};\r\n o.resultType=\"matrix\";\r\n var old = new ArrayList();\r\n var list = result.data;\r\n var newList = new ArrayList();\r\n for(i,j in list){\r\n newList.add(list[i]);\r\n }\r\n if(list.length > 0){\r\n for(i,j in list){\r\n var pojo = list[i];\r\n var tempObj= {};\r\n for (key,value in pojo){\r\n if(key.indexOf(\"stat_time\") != -1){\r\n tempObj[\'statTime\'] = pojo[key]\r\n }else if(key.indexOf(\"establish_latency_ms\") != -1){\r\n tempObj[\'establishLatencyMs\'] = pojo[key]\r\n }else if(key.indexOf(\"http_response_latency\") != -1){\r\n tempObj[\'httpResponseLatency\'] = pojo[key]\r\n }else if(key.indexOf(\"ssl_con_latency\") != -1){\r\n tempObj[\'sslConLatency\'] = pojo[key]\r\n }else if(key.indexOf(\"tcp_lostlen_percent\") != -1){\r\n tempObj[\'tcpLostlenPercent\'] = pojo[key]\r\n }else if(key.indexOf(\"pkt_retrans_percent\") != -1){\r\n tempObj[\'pktRetransPercent\'] = pojo[key]\r\n }\r\n }\r\n list[i] = tempObj;\r\n list[i].statTime = list[i].statTime;\r\n }\r\n var establishLatencyMs = [];\r\n var httpResponseLatency = [];\r\n var sslConLatency = [];\r\n var tcpLostlenPercent = [];\r\n var pktRetransPercent = [];\r\n for(key,value in list[0]){\r\n if(key.indexOf(\"establishLatencyMs\") != -1){\r\n establishLatencyMs.push(key);\r\n } else if(key.indexOf(\"httpResponseLatency\") != -1){\r\n httpResponseLatency.push(key);\r\n } else if(key.indexOf(\"sslConLatency\") != -1){\r\n sslConLatency.push(key);\r\n } else if(key.indexOf(\"tcpLostlenPercent\") != -1){\r\n tcpLostlenPercent.push(key);\r\n } else if(key.indexOf(\"pktRetransPercent\") != -1){\r\n pktRetransPercent.push(key);\r\n }\r\n }\r\n var map = new HashMap();\r\n map.put(\"establishLatencyMs\",\"establish_latency_ms\");\r\n map.put(\"httpResponseLatency\",\"http_response_latency\");\r\n map.put(\"sslConLatency\",\"ssl_con_latency\");\r\n map.put(\"tcpLostlenPercent\",\"tcp_lostlen_percent\");\r\n map.put(\"pktRetransPercent\",\"pkt_retrans_percent\");\r\n var type = {};\r\n type.sslConLatency = sslConLatency;\r\n for(key,value in type){\r\n var obj = {};\r\n obj.type = key;\r\n var typeKey = type[key];\r\n for(m,n in typeKey){\r\n var zong = {};\r\n var analysis = {};\r\n var values = new ArrayList();\r\n list.sort((a,b)=>a.statTime.asDouble()-b.statTime.asDouble());\r\n var sumValue = 0;\r\n for(i,j in list){\r\n var pojo = list[i];\r\n var tempArray = new ArrayList();\r\n tempArray.add(pojo[\"statTime\"]);\r\n tempArray.add(pojo[typeKey[m]] + \"\");\r\n values.add(tempArray);\r\n }\r\n for(i,j in newList){\r\n var pojo = newList[i];\r\n var field = map.get(typeKey[m]);\r\n var value = pojo[field].asDouble();\r\n sumValue += value;\r\n }\r\n analysis.avg = (sumValue/parameter.timeDiff).toFixed(2).asDouble();\r\n if(key==\"bytes\"){\r\n analysis.avg = analysis.avg * 8;\r\n }\r\n analysis.avg=analysis.avg+\"\";\r\n \r\n var plist = [];\r\n for(i,j in values){\r\n plist.push(values[i][1].asDouble());\r\n }\r\n analysis.max = plist.max()+\"\";\r\n analysis.min = plist.min()+\"\";\r\n analysis.p95 = getPercentile(plist, 0.95)+\"\";\r\n \r\n \r\n zong.values = values;\r\n zong.analysis = analysis;\r\n \r\n obj[typeKey[m]] = zong;\r\n }\r\n old.add(obj);\r\n }\r\n }\r\n o.result = old;\r\n result.code=200;\r\n result.data=o;\r\n result.msg = result.message;\r\n result.message=null;\r\n}\r\n\r\nreturn result;');
INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/整体流量统计曲线图.ms', '{\n \"properties\" : { },\n \"id\" : \"4e5a17b89e5e42dca5fb9b66e9022ce1\",\n \"script\" : null,\n \"groupId\" : \"34a616d95df64af18b77542132670eed\",\n \"name\" : \"整体流量统计曲线图\",\n \"createTime\" : null,\n \"updateTime\" : 1703842271223,\n \"lock\" : null,\n \"createBy\" : null,\n \"updateBy\" : \"admin\",\n \"path\" : \"/totalTrafficAnalysis\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1694192478\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1703842181\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"status\\\": 200,\\n \\\"message\\\": null,\\n \\\"request_id\\\": \\\"317db8aaca0e11695cdcb9ca87f3202f\\\",\\n \\\"success\\\": true,\\n \\\"code\\\": 200,\\n \\\"job\\\": null,\\n \\\"formatType\\\": \\\"json\\\",\\n \\\"statistics\\\": {\\n \\\"elapsed\\\": 1203,\\n \\\"rows_read\\\": 1927487,\\n \\\"bytes_read\\\": 102156811,\\n \\\"result_bytes\\\": 19038,\\n \\\"result_rows\\\": 113\\n },\\n \\\"meta\\\": [\\n {\\n \\\"name\\\": \\\"stat_time\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Dimension\\\"\\n },\\n {\\n \\\"name\\\": \\\"establish_latency_ms_avg\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n },\\n {\\n \\\"name\\\": \\\"http_response_latency_avg\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n },\\n {\\n \\\"name\\\": \\\"ssl_con_latency_avg\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n },\\n {\\n \\\"name\\\": \\\"tcp_lostlen_percent_avg\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n },\\n {\\n \\\"name\\\": \\\"pkt_retrans_percent_avg\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }\\n ],\\n \\\"data\\\": {\\n \\\"resultType\\\": \\\"matrix\\\",\\n \\\"result\\\": [\\n {\\n \\\"type\\\": \\\"establishLatencyMs\\\",\\n \\\"establishLatencyMsAvg\\\": {\\n \\\"values\\\": [\\n [\\n 1694131200,\\n 0\\n ],\\n [\\n 1694217600,\\n 0\\n ],\\n [\\n 1694304000,\\n 0\\n ],\\n [\\n 1694390400,\\n 0\\n ],\\n [\\n 1694476800,\\n 0\\n ],\\n [\\n 1694563200,\\n 0\\n ],\\n [\\n 1694649600,\\n 0\\n ],\\n [\\n 1694736000,\\n 0\\n ],\\n [\\n 1694822400,\\n 0\\n ],\\n [\\n 1694908800,\\n 0\\n ],\\n [\\n 1694995200,\\n 0\\n ],\\n [\\n 1695081600,\\n 0\\n ],\\n [\\n 1695168000,\\n 0\\n ],\\n [\\n 1695254400,\\n 0\\n ],\\n [\\n 1695340800,\\n 0\\n ],\\n [\\n 1695427200,\\n 0\\n ],\\n [\\n 1695513600,\\n 0\\n ],\\n [\\n 1695600000,\\n 0\\n ],\\n [\\n 1695686400,\\n 0\\n ],\\n [\\n 1695772800,\\n 0\\n ],\\n [\\n 1695859200,\\n 0\\n ],\\n [\\n 1695945600,\\n 0\\n ],\\n [\\n 1696032000,\\n 0\\n ],\\n [\\n 1696118400,\\n 0\\n ],\\n [\\n 1696204800,\\n 0\\n ],\\n [\\n 1696291200,\\n 0\\n ],\\n [\\n 1696377600,\\n 0\\n ],\\n [\\n 1696464000,\\n 0\\n ],\\n [\\n 1696550400,\\n 0\\n ],\\n [\\n 1696636800,\\n 0\\n ],\\n [\\n 1696723200,\\n 0\\n ],\\n [\\n 1696809600,\\n 0\\n ],\\n [\\n 1696896000,\\n 0\\n ],\\n [\\n 1696982400,\\n 0\\n ],\\n [\\n 1697068800,\\n 0\\n ],\\n [\\n 1697155200,\\n 0\\n ],\\n [\\n 1697241600,\\n 0\\n ],\\n [\\n 1697328000,\\n 0\\n ],\\n [\\n 1697414400,\\n 0\\n ],\\n [\\n 1697500800,\\n 0\\n ],\\n [\\n 1697587200,\\n 0\\n ],\\n [\\n 1697673600,\\n 0\\n ],\\n [\\n 1697760000,\\n 0\\n ],\\n [\\n 1697846400,\\n 0\\n ],\\n [\\n 1697932800,\\n 0\\n ],\\n [\\n 1698019200,\\n 0\\n ],\\n [\\n 1698105600,\\n 0\\n ],\\n [\\n 1698192000,\\n 0\\n ],\\n [\\n 1698278400,\\n 0\\n ],\\n [\\n 1698364800,\\n 0\\n ],\\n [\\n 1698451200,\\n 0\\n ],\\n [\\n 1698537600,\\n 0\\n ],\\n [\\n 1698624000,\\n 0\\n ],\\n [\\n 1698710400,\\n 0\\n ],\\n [\\n 1698796800,\\n 0\\n ],\\n [\\n 1698883200,\\n 0\\n ],\\n [\\n 1698969600,\\n 0\\n ],\\n [\\n 1699056000,\\n 0\\n ],\\n [\\n 1699142400,\\n 0\\n ],\\n [\\n 1699228800,\\n 0\\n ],\\n [\\n 1699315200,\\n 0\\n ],\\n [\\n 1699401600,\\n 0\\n ],\\n [\\n 1699488000,\\n 0\\n ],\\n [\\n 1699574400,\\n 0\\n ],\\n [\\n 1699660800,\\n 0\\n ],\\n [\\n 1699747200,\\n 0\\n ],\\n [\\n 1699833600,\\n 0\\n ],\\n [\\n 1699920000,\\n 0\\n ],\\n [\\n 1700006400,\\n 0\\n ],\\n [\\n 1700092800,\\n 0\\n ],\\n [\\n 1700179200,\\n 0\\n ],\\n [\\n 1700265600,\\n 0\\n ],\\n [\\n 1700352000,\\n 0\\n ],\\n [\\n 1700438400,\\n 0\\n ],\\n [\\n 1700524800,\\n 0\\n ],\\n [\\n 1700611200,\\n 0\\n ],\\n [\\n 1700697600,\\n 0\\n ],\\n [\\n 1700784000,\\n 0\\n ],\\n [\\n 1700870400,\\n 0\\n ],\\n [\\n 1700956800,\\n 0\\n ],\\n [\\n 1701043200,\\n 0\\n ],\\n [\\n 1701129600,\\n 0\\n ],\\n [\\n 1701216000,\\n 98.0192\\n ],\\n [\\n 1701302400,\\n 93.0378\\n ],\\n [\\n 1701388800,\\n 0\\n ],\\n [\\n 1701475200,\\n 0\\n ],\\n [\\n 1701561600,\\n 0\\n ],\\n [\\n 1701648000,\\n 0\\n ],\\n [\\n 1701734400,\\n 456\\n ],\\n [\\n 1701820800,\\n 0\\n ],\\n [\\n 1701907200,\\n 0\\n ],\\n [\\n 1701993600,\\n 77.5187\\n ],\\n [\\n 1702080000,\\n 0\\n ],\\n [\\n 1702166400,\\n 0\\n ],\\n [\\n 1702252800,\\n 89.75\\n ],\\n [\\n 1702339200,\\n 0\\n ],\\n [\\n 1702425600,\\n 75.8189\\n ],\\n [\\n 1702512000,\\n 71.5005\\n ],\\n [\\n 1702598400,\\n 76.5686\\n ],\\n [\\n 1702684800,\\n 68.5158\\n ],\\n [\\n 1702771200,\\n 70.6741\\n ],\\n [\\n 1702857600,\\n 75.3799\\n ],\\n [\\n 1702944000,\\n 73.9849\\n ],\\n [\\n 1703030400,\\n 71.5018\\n ],\\n [\\n 1703116800,\\n 85.1029\\n ],\\n [\\n 1703203200,\\n 90.3995\\n ],\\n [\\n 1703289600,\\n 0\\n ],\\n [\\n 1703376000,\\n 0\\n ],\\n [\\n 1703462400,\\n 63\\n ],\\n [\\n 1703548800,\\n 64.9697\\n ],\\n [\\n 1703635200,\\n 0\\n ],\\n [\\n 1703721600,\\n 0\\n ],\\n [\\n 1703808000,\\n 64\\n ]\\n ],\\n \\\"analysis\\\": {\\n \\\"avg\\\": \\\"0.00\\\",\\n \\\"max\\\": \\\"456.0\\\",\\n \\\"min\\\": \\\"0.0\\\",\\n \\\"p95\\\": \\\"80.55237999999993\\\"\\n }\\n }\\n },\\n {\\n \\\"type\\\": \\\"httpResponseLatency\\\",\\n \\\"httpResponseLatencyAvg\\\": {\\n \\\"values\\\": [\\n [\\n 1694131200,\\n 0\\n ],\\n [\\n 1694217600,\\n 0\\n ],\\n [\\n 1694304000,\\n 0\\n ],\\n [\\n 1694390400,\\n 0\\n ],\\n [\\n 1694476800,\\n 0\\n ],\\n [\\n 1694563200,\\n 0\\n ],\\n [\\n 1694649600,\\n 0\\n ],\\n [\\n 1694736000,\\n 0\\n ],\\n [\\n 1694822400,\\n 0\\n ],\\n [\\n 1694908800,\\n 0\\n ],\\n [\\n 1694995200,\\n 0\\n ],\\n [\\n 1695081600,\\n 0\\n ],\\n [\\n 1695168000,\\n 0\\n ],\\n [\\n 1695254400,\\n 0\\n ],\\n [\\n 1695340800,\\n 0\\n ],\\n [\\n 1695427200,\\n 0\\n ],\\n [\\n 1695513600,\\n 0\\n ],\\n [\\n 1695600000,\\n 0\\n ],\\n [\\n 1695686400,\\n 0\\n ],\\n [\\n 1695772800,\\n 0\\n ],\\n [\\n 1695859200,\\n 0\\n ],\\n [\\n 1695945600,\\n 0\\n ],\\n [\\n 1696032000,\\n 0\\n ],\\n [\\n 1696118400,\\n 0\\n ],\\n [\\n 1696204800,\\n 0\\n ],\\n [\\n 1696291200,\\n 0\\n ],\\n [\\n 1696377600,\\n 0\\n ],\\n [\\n 1696464000,\\n 0\\n ],\\n [\\n 1696550400,\\n 0\\n ],\\n [\\n 1696636800,\\n 0\\n ],\\n [\\n 1696723200,\\n 0\\n ],\\n [\\n 1696809600,\\n 0\\n ],\\n [\\n 1696896000,\\n 0\\n ],\\n [\\n 1696982400,\\n 0\\n ],\\n [\\n 1697068800,\\n 0\\n ],\\n [\\n 1697155200,\\n 0\\n ],\\n [\\n 1697241600,\\n 0\\n ],\\n [\\n 1697328000,\\n 0\\n ],\\n [\\n 1697414400,\\n 0\\n ],\\n [\\n 1697500800,\\n 0\\n ],\\n [\\n 1697587200,\\n 0\\n ],\\n [\\n 1697673600,\\n 0\\n ],\\n [\\n 1697760000,\\n 0\\n ],\\n [\\n 1697846400,\\n 0\\n ],\\n [\\n 1697932800,\\n 0\\n ],\\n [\\n 1698019200,\\n 0\\n ],\\n [\\n 1698105600,\\n 0\\n ],\\n [\\n 1698192000,\\n 0\\n ],\\n [\\n 1698278400,\\n 0\\n ],\\n [\\n 1698364800,\\n 0\\n ],\\n [\\n 1698451200,\\n 0\\n ],\\n [\\n 1698537600,\\n 0\\n ],\\n [\\n 1698624000,\\n 0\\n ],\\n [\\n 1698710400,\\n 0\\n ],\\n [\\n 1698796800,\\n 0\\n ],\\n [\\n 1698883200,\\n 0\\n ],\\n [\\n 1698969600,\\n 0\\n ],\\n [\\n 1699056000,\\n 0\\n ],\\n [\\n 1699142400,\\n 0\\n ],\\n [\\n 1699228800,\\n 0\\n ],\\n [\\n 1699315200,\\n 0\\n ],\\n [\\n 1699401600,\\n 0\\n ],\\n [\\n 1699488000,\\n 0\\n ],\\n [\\n 1699574400,\\n 0\\n ],\\n [\\n 1699660800,\\n 0\\n ],\\n [\\n 1699747200,\\n 0\\n ],\\n [\\n 1699833600,\\n 0\\n ],\\n [\\n 1699920000,\\n 0\\n ],\\n [\\n 1700006400,\\n 0\\n ],\\n [\\n 1700092800,\\n 0\\n ],\\n [\\n 1700179200,\\n 0\\n ],\\n [\\n 1700265600,\\n 0\\n ],\\n [\\n 1700352000,\\n 0\\n ],\\n [\\n 1700438400,\\n 0\\n ],\\n [\\n 1700524800,\\n 0\\n ],\\n [\\n 1700611200,\\n 0\\n ],\\n [\\n 1700697600,\\n 0\\n ],\\n [\\n 1700784000,\\n 0\\n ],\\n [\\n 1700870400,\\n 0\\n ],\\n [\\n 1700956800,\\n 0\\n ],\\n [\\n 1701043200,\\n 0\\n ],\\n [\\n 1701129600,\\n 0\\n ],\\n [\\n 1701216000,\\n 74.7792\\n ],\\n [\\n 1701302400,\\n 75.6473\\n ],\\n [\\n 1701388800,\\n 0\\n ],\\n [\\n 1701475200,\\n 0\\n ],\\n [\\n 1701561600,\\n 0\\n ],\\n [\\n 1701648000,\\n 0\\n ],\\n [\\n 1701734400,\\n 0\\n ],\\n [\\n 1701820800,\\n 0\\n ],\\n [\\n 1701907200,\\n 0\\n ],\\n [\\n 1701993600,\\n 73.2421\\n ],\\n [\\n 1702080000,\\n 0\\n ],\\n [\\n 1702166400,\\n 0\\n ],\\n [\\n 1702252800,\\n 0\\n ],\\n [\\n 1702339200,\\n 0\\n ],\\n [\\n 1702425600,\\n 843.7226\\n ],\\n [\\n 1702512000,\\n 974.6134\\n ],\\n [\\n 1702598400,\\n 624.8707\\n ],\\n [\\n 1702684800,\\n 0\\n ],\\n [\\n 1702771200,\\n 0\\n ],\\n [\\n 1702857600,\\n 0\\n ],\\n [\\n 1702944000,\\n 589.6615\\n ],\\n [\\n 1703030400,\\n 95.2945\\n ],\\n [\\n 1703116800,\\n 168.5765\\n ],\\n [\\n 1703203200,\\n 390.4521\\n ],\\n [\\n 1703289600,\\n 0\\n ],\\n [\\n 1703376000,\\n 0\\n ],\\n [\\n 1703462400,\\n 165.1945\\n ],\\n [\\n 1703548800,\\n 853.4263\\n ],\\n [\\n 1703635200,\\n 325.6831\\n ],\\n [\\n 1703721600,\\n 136.1818\\n ],\\n [\\n 1703808000,\\n 159.0573\\n ]\\n ],\\n \\\"analysis\\\": {\\n \\\"avg\\\": \\\"0.00\\\",\\n \\\"max\\\": \\\"974.6134\\\",\\n \\\"min\\\": \\\"0.0\\\",\\n \\\"p95\\\": \\\"351.59069999999946\\\"\\n }\\n }\\n },\\n {\\n \\\"type\\\": \\\"sslConLatency\\\",\\n \\\"sslConLatencyAvg\\\": {\\n \\\"values\\\": [\\n [\\n 1694131200,\\n 0\\n ],\\n [\\n 1694217600,\\n 0\\n ],\\n [\\n 1694304000,\\n 0\\n ],\\n [\\n 1694390400,\\n 0\\n ],\\n [\\n 1694476800,\\n 0\\n ],\\n [\\n 1694563200,\\n 0\\n ],\\n [\\n 1694649600,\\n 0\\n ],\\n [\\n 1694736000,\\n 0\\n ],\\n [\\n 1694822400,\\n 0\\n ],\\n [\\n 1694908800,\\n 0\\n ],\\n [\\n 1694995200,\\n 0\\n ],\\n [\\n 1695081600,\\n 0\\n ],\\n [\\n 1695168000,\\n 0\\n ],\\n [\\n 1695254400,\\n 0\\n ],\\n [\\n 1695340800,\\n 0\\n ],\\n [\\n 1695427200,\\n 0\\n ],\\n [\\n 1695513600,\\n 0\\n ],\\n [\\n 1695600000,\\n 0\\n ],\\n [\\n 1695686400,\\n 0\\n ],\\n [\\n 1695772800,\\n 0\\n ],\\n [\\n 1695859200,\\n 0\\n ],\\n [\\n 1695945600,\\n 0\\n ],\\n [\\n 1696032000,\\n 0\\n ],\\n [\\n 1696118400,\\n 0\\n ],\\n [\\n 1696204800,\\n 0\\n ],\\n [\\n 1696291200,\\n 0\\n ],\\n [\\n 1696377600,\\n 0\\n ],\\n [\\n 1696464000,\\n 0\\n ],\\n [\\n 1696550400,\\n 0\\n ],\\n [\\n 1696636800,\\n 0\\n ],\\n [\\n 1696723200,\\n 0\\n ],\\n [\\n 1696809600,\\n 0\\n ],\\n [\\n 1696896000,\\n 0\\n ],\\n [\\n 1696982400,\\n 0\\n ],\\n [\\n 1697068800,\\n 0\\n ],\\n [\\n 1697155200,\\n 0\\n ],\\n [\\n 1697241600,\\n 0\\n ],\\n [\\n 1697328000,\\n 0\\n ],\\n [\\n 1697414400,\\n 0\\n ],\\n [\\n 1697500800,\\n 0\\n ],\\n [\\n 1697587200,\\n 0\\n ],\\n [\\n 1697673600,\\n 0\\n ],\\n [\\n 1697760000,\\n 0\\n ],\\n [\\n 1697846400,\\n 0\\n ],\\n [\\n 1697932800,\\n 0\\n ],\\n [\\n 1698019200,\\n 0\\n ],\\n [\\n 1698105600,\\n 0\\n ],\\n [\\n 1698192000,\\n 0\\n ],\\n [\\n 1698278400,\\n 0\\n ],\\n [\\n 1698364800,\\n 0\\n ],\\n [\\n 1698451200,\\n 0\\n ],\\n [\\n 1698537600,\\n 0\\n ],\\n [\\n 1698624000,\\n 0\\n ],\\n [\\n 1698710400,\\n 0\\n ],\\n [\\n 1698796800,\\n 0\\n ],\\n [\\n 1698883200,\\n 0\\n ],\\n [\\n 1698969600,\\n 0\\n ],\\n [\\n 1699056000,\\n 0\\n ],\\n [\\n 1699142400,\\n 0\\n ],\\n [\\n 1699228800,\\n 0\\n ],\\n [\\n 1699315200,\\n 0\\n ],\\n [\\n 1699401600,\\n 0\\n ],\\n [\\n 1699488000,\\n 0\\n ],\\n [\\n 1699574400,\\n 0\\n ],\\n [\\n 1699660800,\\n 0\\n ],\\n [\\n 1699747200,\\n 0\\n ],\\n [\\n 1699833600,\\n 0\\n ],\\n [\\n 1699920000,\\n 0\\n ],\\n [\\n 1700006400,\\n 0\\n ],\\n [\\n 1700092800,\\n 0\\n ],\\n [\\n 1700179200,\\n 0\\n ],\\n [\\n 1700265600,\\n 0\\n ],\\n [\\n 1700352000,\\n 0\\n ],\\n [\\n 1700438400,\\n 0\\n ],\\n [\\n 1700524800,\\n 0\\n ],\\n [\\n 1700611200,\\n 0\\n ],\\n [\\n 1700697600,\\n 0\\n ],\\n [\\n 1700784000,\\n 0\\n ],\\n [\\n 1700870400,\\n 0\\n ],\\n [\\n 1700956800,\\n 0\\n ],\\n [\\n 1701043200,\\n 0\\n ],\\n [\\n 1701129600,\\n 0\\n ],\\n [\\n 1701216000,\\n 577.8057\\n ],\\n [\\n 1701302400,\\n 575.7433\\n ],\\n [\\n 1701388800,\\n 0\\n ],\\n [\\n 1701475200,\\n 0\\n ],\\n [\\n 1701561600,\\n 0\\n ],\\n [\\n 1701648000,\\n 0\\n ],\\n [\\n 1701734400,\\n 0\\n ],\\n [\\n 1701820800,\\n 0\\n ],\\n [\\n 1701907200,\\n 0\\n ],\\n [\\n 1701993600,\\n 17602709061.6835\\n ],\\n [\\n 1702080000,\\n 0\\n ],\\n [\\n 1702166400,\\n 0\\n ],\\n [\\n 1702252800,\\n 181\\n ],\\n [\\n 1702339200,\\n 0\\n ],\\n [\\n 1702425600,\\n 14855079919.8724\\n ],\\n [\\n 1702512000,\\n 20466838905.0044\\n ],\\n [\\n 1702598400,\\n 27496377594.7346\\n ],\\n [\\n 1702684800,\\n 4087020064.4466\\n ],\\n [\\n 1702771200,\\n 22949424899.8569\\n ],\\n [\\n 1702857600,\\n 13063496192.545\\n ],\\n [\\n 1702944000,\\n 50919307560.5335\\n ],\\n [\\n 1703030400,\\n 9589346956.5644\\n ],\\n [\\n 1703116800,\\n 5180375116.7636\\n ],\\n [\\n 1703203200,\\n 1817735951.8157\\n ],\\n [\\n 1703289600,\\n 0\\n ],\\n [\\n 1703376000,\\n 0\\n ],\\n [\\n 1703462400,\\n 0\\n ],\\n [\\n 1703548800,\\n 0\\n ],\\n [\\n 1703635200,\\n 7\\n ],\\n [\\n 1703721600,\\n 6\\n ],\\n [\\n 1703808000,\\n 0\\n ]\\n ],\\n \\\"analysis\\\": {\\n \\\"avg\\\": \\\"19485.34\\\",\\n \\\"max\\\": \\\"5.09193075605335E10\\\",\\n \\\"min\\\": \\\"0.0\\\",\\n \\\"p95\\\": \\\"1.3780129683475945E10\\\"\\n }\\n }\\n },\\n {\\n \\\"type\\\": \\\"tcpLostlenPercent\\\",\\n \\\"tcpLostlenPercentAvg\\\": {\\n \\\"values\\\": [\\n [\\n 1694131200,\\n 0\\n ],\\n [\\n 1694217600,\\n 0\\n ],\\n [\\n 1694304000,\\n 0\\n ],\\n [\\n 1694390400,\\n 0\\n ],\\n [\\n 1694476800,\\n 0\\n ],\\n [\\n 1694563200,\\n 0\\n ],\\n [\\n 1694649600,\\n 0\\n ],\\n [\\n 1694736000,\\n 0\\n ],\\n [\\n 1694822400,\\n 0\\n ],\\n [\\n 1694908800,\\n 0\\n ],\\n [\\n 1694995200,\\n 0\\n ],\\n [\\n 1695081600,\\n 0\\n ],\\n [\\n 1695168000,\\n 0\\n ],\\n [\\n 1695254400,\\n 0\\n ],\\n [\\n 1695340800,\\n 0\\n ],\\n [\\n 1695427200,\\n 0\\n ],\\n [\\n 1695513600,\\n 0\\n ],\\n [\\n 1695600000,\\n 0\\n ],\\n [\\n 1695686400,\\n 0\\n ],\\n [\\n 1695772800,\\n 0\\n ],\\n [\\n 1695859200,\\n 0\\n ],\\n [\\n 1695945600,\\n 0\\n ],\\n [\\n 1696032000,\\n 0\\n ],\\n [\\n 1696118400,\\n 0\\n ],\\n [\\n 1696204800,\\n 0\\n ],\\n [\\n 1696291200,\\n 0\\n ],\\n [\\n 1696377600,\\n 0\\n ],\\n [\\n 1696464000,\\n 0\\n ],\\n [\\n 1696550400,\\n 0\\n ],\\n [\\n 1696636800,\\n 0\\n ],\\n [\\n 1696723200,\\n 0\\n ],\\n [\\n 1696809600,\\n 0\\n ],\\n [\\n 1696896000,\\n 0\\n ],\\n [\\n 1696982400,\\n 0\\n ],\\n [\\n 1697068800,\\n 0\\n ],\\n [\\n 1697155200,\\n 0\\n ],\\n [\\n 1697241600,\\n 0\\n ],\\n [\\n 1697328000,\\n 0\\n ],\\n [\\n 1697414400,\\n 0\\n ],\\n [\\n 1697500800,\\n 0\\n ],\\n [\\n 1697587200,\\n 0\\n ],\\n [\\n 1697673600,\\n 0\\n ],\\n [\\n 1697760000,\\n 0\\n ],\\n [\\n 1697846400,\\n 0\\n ],\\n [\\n 1697932800,\\n 0\\n ],\\n [\\n 1698019200,\\n 0\\n ],\\n [\\n 1698105600,\\n 0\\n ],\\n [\\n 1698192000,\\n 0\\n ],\\n [\\n 1698278400,\\n 0\\n ],\\n [\\n 1698364800,\\n 0\\n ],\\n [\\n 1698451200,\\n 0\\n ],\\n [\\n 1698537600,\\n 0\\n ],\\n [\\n 1698624000,\\n 0\\n ],\\n [\\n 1698710400,\\n 0\\n ],\\n [\\n 1698796800,\\n 0\\n ],\\n [\\n 1698883200,\\n 0\\n ],\\n [\\n 1698969600,\\n 0\\n ],\\n [\\n 1699056000,\\n 0\\n ],\\n [\\n 1699142400,\\n 0\\n ],\\n [\\n 1699228800,\\n 0\\n ],\\n [\\n 1699315200,\\n 0\\n ],\\n [\\n 1699401600,\\n 0\\n ],\\n [\\n 1699488000,\\n 0\\n ],\\n [\\n 1699574400,\\n 0\\n ],\\n [\\n 1699660800,\\n 0\\n ],\\n [\\n 1699747200,\\n 0\\n ],\\n [\\n 1699833600,\\n 0\\n ],\\n [\\n 1699920000,\\n 0\\n ],\\n [\\n 1700006400,\\n 0\\n ],\\n [\\n 1700092800,\\n 0\\n ],\\n [\\n 1700179200,\\n 0\\n ],\\n [\\n 1700265600,\\n 0\\n ],\\n [\\n 1700352000,\\n 0\\n ],\\n [\\n 1700438400,\\n 0\\n ],\\n [\\n 1700524800,\\n 0\\n ],\\n [\\n 1700611200,\\n 0\\n ],\\n [\\n 1700697600,\\n 0\\n ],\\n [\\n 1700784000,\\n 0\\n ],\\n [\\n 1700870400,\\n 0\\n ],\\n [\\n 1700956800,\\n 0\\n ],\\n [\\n 1701043200,\\n 0\\n ],\\n [\\n 1701129600,\\n 0\\n ],\\n [\\n 1701216000,\\n 0.0005\\n ],\\n [\\n 1701302400,\\n 0.0005\\n ],\\n [\\n 1701388800,\\n 0\\n ],\\n [\\n 1701475200,\\n 0\\n ],\\n [\\n 1701561600,\\n 0\\n ],\\n [\\n 1701648000,\\n 0\\n ],\\n [\\n 1701734400,\\n 0\\n ],\\n [\\n 1701820800,\\n 0\\n ],\\n [\\n 1701907200,\\n 0\\n ],\\n [\\n 1701993600,\\n 0.0179\\n ],\\n [\\n 1702080000,\\n 0\\n ],\\n [\\n 1702166400,\\n 0\\n ],\\n [\\n 1702252800,\\n 0.2503\\n ],\\n [\\n 1702339200,\\n 0\\n ],\\n [\\n 1702425600,\\n 0.0106\\n ],\\n [\\n 1702512000,\\n 0.0075\\n ],\\n [\\n 1702598400,\\n 0.0046\\n ],\\n [\\n 1702684800,\\n 0.0054\\n ],\\n [\\n 1702771200,\\n 0.002\\n ],\\n [\\n 1702857600,\\n 0.0053\\n ],\\n [\\n 1702944000,\\n 0.0063\\n ],\\n [\\n 1703030400,\\n 0\\n ],\\n [\\n 1703116800,\\n 0.0024\\n ],\\n [\\n 1703203200,\\n 0.0005\\n ],\\n [\\n 1703289600,\\n 0\\n ],\\n [\\n 1703376000,\\n 0\\n ],\\n [\\n 1703462400,\\n 0\\n ],\\n [\\n 1703548800,\\n 0\\n ],\\n [\\n 1703635200,\\n 0\\n ],\\n [\\n 1703721600,\\n 0\\n ],\\n [\\n 1703808000,\\n 0.9231\\n ]\\n ],\\n \\\"analysis\\\": {\\n \\\"avg\\\": \\\"0.00\\\",\\n \\\"max\\\": \\\"0.9231\\\",\\n \\\"min\\\": \\\"0.0\\\",\\n \\\"p95\\\": \\\"0.0057599999999999926\\\"\\n }\\n }\\n },\\n {\\n \\\"type\\\": \\\"pktRetransPercent\\\",\\n \\\"pktRetransPercentAvg\\\": {\\n \\\"values\\\": [\\n [\\n 1694131200,\\n 0\\n ],\\n [\\n 1694217600,\\n 0\\n ],\\n [\\n 1694304000,\\n 0\\n ],\\n [\\n 1694390400,\\n 0\\n ],\\n [\\n 1694476800,\\n 0\\n ],\\n [\\n 1694563200,\\n 0\\n ],\\n [\\n 1694649600,\\n 0\\n ],\\n [\\n 1694736000,\\n 0\\n ],\\n [\\n 1694822400,\\n 0\\n ],\\n [\\n 1694908800,\\n 0\\n ],\\n [\\n 1694995200,\\n 0\\n ],\\n [\\n 1695081600,\\n 0\\n ],\\n [\\n 1695168000,\\n 0\\n ],\\n [\\n 1695254400,\\n 0\\n ],\\n [\\n 1695340800,\\n 0\\n ],\\n [\\n 1695427200,\\n 0\\n ],\\n [\\n 1695513600,\\n 0\\n ],\\n [\\n 1695600000,\\n 0\\n ],\\n [\\n 1695686400,\\n 0\\n ],\\n [\\n 1695772800,\\n 0\\n ],\\n [\\n 1695859200,\\n 0\\n ],\\n [\\n 1695945600,\\n 0\\n ],\\n [\\n 1696032000,\\n 0\\n ],\\n [\\n 1696118400,\\n 0\\n ],\\n [\\n 1696204800,\\n 0\\n ],\\n [\\n 1696291200,\\n 0\\n ],\\n [\\n 1696377600,\\n 0\\n ],\\n [\\n 1696464000,\\n 0\\n ],\\n [\\n 1696550400,\\n 0\\n ],\\n [\\n 1696636800,\\n 0\\n ],\\n [\\n 1696723200,\\n 0\\n ],\\n [\\n 1696809600,\\n 0\\n ],\\n [\\n 1696896000,\\n 0\\n ],\\n [\\n 1696982400,\\n 0\\n ],\\n [\\n 1697068800,\\n 0\\n ],\\n [\\n 1697155200,\\n 0\\n ],\\n [\\n 1697241600,\\n 0\\n ],\\n [\\n 1697328000,\\n 0\\n ],\\n [\\n 1697414400,\\n 0\\n ],\\n [\\n 1697500800,\\n 0\\n ],\\n [\\n 1697587200,\\n 0\\n ],\\n [\\n 1697673600,\\n 0\\n ],\\n [\\n 1697760000,\\n 0\\n ],\\n [\\n 1697846400,\\n 0\\n ],\\n [\\n 1697932800,\\n 0\\n ],\\n [\\n 1698019200,\\n 0\\n ],\\n [\\n 1698105600,\\n 0\\n ],\\n [\\n 1698192000,\\n 0\\n ],\\n [\\n 1698278400,\\n 0\\n ],\\n [\\n 1698364800,\\n 0\\n ],\\n [\\n 1698451200,\\n 0\\n ],\\n [\\n 1698537600,\\n 0\\n ],\\n [\\n 1698624000,\\n 0\\n ],\\n [\\n 1698710400,\\n 0\\n ],\\n [\\n 1698796800,\\n 0\\n ],\\n [\\n 1698883200,\\n 0\\n ],\\n [\\n 1698969600,\\n 0\\n ],\\n [\\n 1699056000,\\n 0\\n ],\\n [\\n 1699142400,\\n 0\\n ],\\n [\\n 1699228800,\\n 0\\n ],\\n [\\n 1699315200,\\n 0\\n ],\\n [\\n 1699401600,\\n 0\\n ],\\n [\\n 1699488000,\\n 0\\n ],\\n [\\n 1699574400,\\n 0\\n ],\\n [\\n 1699660800,\\n 0\\n ],\\n [\\n 1699747200,\\n 0\\n ],\\n [\\n 1699833600,\\n 0\\n ],\\n [\\n 1699920000,\\n 0\\n ],\\n [\\n 1700006400,\\n 0\\n ],\\n [\\n 1700092800,\\n 0\\n ],\\n [\\n 1700179200,\\n 0\\n ],\\n [\\n 1700265600,\\n 0\\n ],\\n [\\n 1700352000,\\n 0\\n ],\\n [\\n 1700438400,\\n 0\\n ],\\n [\\n 1700524800,\\n 0\\n ],\\n [\\n 1700611200,\\n 0\\n ],\\n [\\n 1700697600,\\n 0\\n ],\\n [\\n 1700784000,\\n 0\\n ],\\n [\\n 1700870400,\\n 0\\n ],\\n [\\n 1700956800,\\n 0\\n ],\\n [\\n 1701043200,\\n 0\\n ],\\n [\\n 1701129600,\\n 0\\n ],\\n [\\n 1701216000,\\n 0.0389\\n ],\\n [\\n 1701302400,\\n 0.0346\\n ],\\n [\\n 1701388800,\\n 0\\n ],\\n [\\n 1701475200,\\n 0\\n ],\\n [\\n 1701561600,\\n 0\\n ],\\n [\\n 1701648000,\\n 0\\n ],\\n [\\n 1701734400,\\n 0\\n ],\\n [\\n 1701820800,\\n 0\\n ],\\n [\\n 1701907200,\\n 0\\n ],\\n [\\n 1701993600,\\n 0.0514\\n ],\\n [\\n 1702080000,\\n 0\\n ],\\n [\\n 1702166400,\\n 0\\n ],\\n [\\n 1702252800,\\n 0.0531\\n ],\\n [\\n 1702339200,\\n 0\\n ],\\n [\\n 1702425600,\\n 0.0477\\n ],\\n [\\n 1702512000,\\n 0.0425\\n ],\\n [\\n 1702598400,\\n 0.03\\n ],\\n [\\n 1702684800,\\n 0.0211\\n ],\\n [\\n 1702771200,\\n 0.0273\\n ],\\n [\\n 1702857600,\\n 0.0268\\n ],\\n [\\n 1702944000,\\n 0.0438\\n ],\\n [\\n 1703030400,\\n 0.009\\n ],\\n [\\n 1703116800,\\n 0.0203\\n ],\\n [\\n 1703203200,\\n 0.0232\\n ],\\n [\\n 1703289600,\\n 0\\n ],\\n [\\n 1703376000,\\n 0\\n ],\\n [\\n 1703462400,\\n 0\\n ],\\n [\\n 1703548800,\\n 0\\n ],\\n [\\n 1703635200,\\n 0\\n ],\\n [\\n 1703721600,\\n 0\\n ],\\n [\\n 1703808000,\\n 0\\n ]\\n ],\\n \\\"analysis\\\": {\\n \\\"avg\\\": \\\"0.00\\\",\\n \\\"max\\\": \\\"0.0531\\\",\\n \\\"min\\\": \\\"0.0\\\",\\n \\\"p95\\\": \\\"0.03631999999999996\\\"\\n }\\n }\\n }\\n ]\\n },\\n \\\"originalUrl\\\": \\\"http://192.168.44.55:9999/v1/query/sql\\\",\\n \\\"msg\\\": \\\"OK\\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"status\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"code\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"queryKey\",\n \"value\" : \"18e4137d1bd55f82034d99e567f85b35\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"success\",\n \"value\" : \"true\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Boolean\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"statistics\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"elapsed\",\n \"value\" : \"8\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"rows_read\",\n \"value\" : \"3494277\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"bytes_read\",\n \"value\" : \"27954216\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_size\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_rows\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"job\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"formatType\",\n \"value\" : \"json\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"meta\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"name\",\n \"value\" : \"stat_time\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"type\",\n \"value\" : \"long\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"category\",\n \"value\" : \"Dimension\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"data\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"resultType\",\n \"value\" : \"matrix\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"originalUrl\",\n \"value\" : \"http://192.168.44.55:9999/?query=SELECT TIME_FLOOR_WITH_FILL(stat_time,\'PT1M\',\'zero\') AS stat_time, SUM(sent_bytes + received_bytes) AS total_bytes, SUM(traffic_inbound_byte) AS inbound_bytes, SUM(traffic_outbound_byte) AS outbound_bytes, SUM(traffic_internal_byte) AS internal_bytes, SUM(traffic_through_byte) AS through_bytes, SUM(sent_pkts + received_pkts) AS total_packets, SUM(traffic_inbound_pkt) AS inbound_packets, SUM(traffic_outbound_pkt) AS outbound_packets, SUM(traffic_internal_pkt) AS internal_packets, SUM(traffic_through_pkt) AS through_packets, SUM(sessions) AS sessions, IFNULL(ROUND(AVG(avg_tcp_rtt_ms), 4),0) AS establish_latency_ms_avg, IFNULL(ROUND(AVG(avg_http_response_latency_ms), 4),0) AS http_response_latency_avg, IFNULL(ROUND(AVG(avg_ssl_handshake_latency_ms), 4),0) AS ssl_con_latency_avg, IFNULL(ROUND(AVG(tcp_lost_bytes_ratio), 4),0) AS tcp_lostlen_percent_avg, IFNULL(ROUND(AVG(tcp_rtx_pkts_ratio), 4),0) AS pkt_retrans_percent_avg FROM metric_application WHERE stat_time >= 1 AND stat_time < 1673315583 GROUP BY stat_time ORDER BY stat_time ASC&format=json&option=real_time\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"msg\",\n \"value\" : \"OK\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandleNone\' as preHandle;\r\nimport \'@/post/object\' as objHandle\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\nimport \'@/public/toHump\' as toHump\r\nimport \'@/public/getPercentile\' as getPercentile\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime\r\n}\r\n\r\npreHandle(parameter);\r\n\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"SELECT TIME_FLOOR_WITH_FILL(stat_time,\'PT${step}S\',\'zero\') AS stat_time, IFNULL(ROUND(AVG(avg_tcp_rtt_ms), 4),0) AS establish_latency_ms_avg, IFNULL(ROUND(AVG(avg_http_response_latency_ms), 4),0) AS http_response_latency_avg, IFNULL(ROUND(AVG(avg_ssl_handshake_latency_ms), 4),0) AS ssl_con_latency_avg, IFNULL(ROUND(AVG(tcp_lost_bytes_ratio), 4),0) AS tcp_lostlen_percent_avg, IFNULL(ROUND(AVG(tcp_rtx_pkts_ratio), 4),0) AS pkt_retrans_percent_avg FROM metric_application WHERE stat_time >= ${startTime} AND stat_time < ${endTime} GROUP BY stat_time ORDER BY stat_time ASC\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"applicationPerformanceOverviewTotalTrafficAnalysis\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar result = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nif(result.success){\r\n var o = {};\r\n o.resultType=\"matrix\";\r\n var old = new ArrayList();\r\n var list = result.data;\r\n var newList = new ArrayList();\r\n for(i,j in list){\r\n newList.add(list[i]);\r\n }\r\n if(list.length > 0){\r\n for(i,j in list){\r\n var pojo = list[i];\r\n var tempObj= {};\r\n for (key,value in pojo){\r\n if(key.indexOf(\"stat_time\") != -1){\r\n tempObj[\'statTime\'] = pojo[key]\r\n }else if(key.indexOf(\"establish_latency_ms_avg\") != -1){\r\n tempObj[\'establishLatencyMsAvg\'] = pojo[key]\r\n }else if(key.indexOf(\"http_response_latency_avg\") != -1){\r\n tempObj[\'httpResponseLatencyAvg\'] = pojo[key]\r\n }else if(key.indexOf(\"ssl_con_latency_avg\") != -1){\r\n tempObj[\'sslConLatencyAvg\'] = pojo[key]\r\n }else if(key.indexOf(\"tcp_lostlen_percent_avg\") != -1){\r\n tempObj[\'tcpLostlenPercentAvg\'] = pojo[key]\r\n }else if(key.indexOf(\"pkt_retrans_percent_avg\") != -1){\r\n tempObj[\'pktRetransPercentAvg\'] = pojo[key]\r\n }\r\n }\r\n list[i] = tempObj;\r\n }\r\n var establishLatencyMs = [];\r\n var httpResponseLatency = [];\r\n var sslConLatency = [];\r\n var tcpLostlenPercent = [];\r\n var pktRetransPercent = [];\r\n for(key,value in list[0]){\r\n if(key.indexOf(\"establishLatencyMsAvg\") != -1){\r\n establishLatencyMs.push(key);\r\n } else if(key.indexOf(\"httpResponseLatencyAvg\") != -1){\r\n httpResponseLatency.push(key);\r\n } else if(key.indexOf(\"sslConLatencyAvg\") != -1){\r\n sslConLatency.push(key);\r\n } else if(key.indexOf(\"tcpLostlenPercentAvg\") != -1){\r\n tcpLostlenPercent.push(key);\r\n } else if(key.indexOf(\"pktRetransPercentAvg\") != -1){\r\n pktRetransPercent.push(key);\r\n }\r\n }\r\n var map = new HashMap();\r\n map.put(\"establishLatencyMsAvg\",\"establish_latency_ms_avg\");\r\n map.put(\"httpResponseLatencyAvg\",\"http_response_latency_avg\");\r\n map.put(\"sslConLatencyAvg\",\"ssl_con_latency_avg\");\r\n map.put(\"tcpLostlenPercentAvg\",\"tcp_lostlen_percent_avg\");\r\n map.put(\"pktRetransPercentAvg\",\"pkt_retrans_percent_avg\");\r\n var type = {};\r\n type.establishLatencyMs = establishLatencyMs;\r\n type.httpResponseLatency = httpResponseLatency;\r\n type.sslConLatency = sslConLatency;\r\n type.tcpLostlenPercent = tcpLostlenPercent;\r\n type.pktRetransPercent = pktRetransPercent;\r\n for(key,value in type){\r\n var obj = {};\r\n obj.type = key;\r\n var typeKey = type[key];\r\n for(m,n in typeKey){\r\n var zong = {};\r\n var analysis = {};\r\n var values = new ArrayList();\r\n list.sort((a,b)=>a.statTime.asDouble()-b.statTime.asDouble());\r\n var sumValue = 0;\r\n for(i,j in list){\r\n var pojo = list[i];\r\n var tempArray = new ArrayList();\r\n tempArray.add(pojo[\"statTime\"]);\r\n tempArray.add(pojo[typeKey[m]].asDouble());\r\n values.add(tempArray);\r\n }\r\n for(i,j in newList){\r\n var pojo = newList[i];\r\n var field = map.get(typeKey[m]);\r\n var value = pojo[field];\r\n sumValue += value.asDouble();\r\n }\r\n analysis.avg = (sumValue.asDouble()/parameter.timeDiff).toFixed(2);\r\n analysis.avg=analysis.avg+\"\";\r\n \r\n var plist = [];\r\n for(i,j in values){\r\n plist.push(values[i][1].asDouble());\r\n }\r\n analysis.max = plist.max()+\"\";\r\n analysis.min = plist.min()+\"\";\r\n analysis.p95 = getPercentile(plist, 0.95)+\"\";\r\n \r\n zong.values = values;\r\n zong.analysis = analysis;\r\n \r\n obj[typeKey[m]] = zong;\r\n }\r\n old.add(obj);\r\n }\r\n }\r\n o.result = old;\r\n result.code=200;\r\n result.data=o;\r\n result.msg = result.message;\r\n result.message=null;\r\n}\r\n\r\nreturn result;');
-INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/整体网络数据统计.ms', '{\n \"properties\" : { },\n \"id\" : \"46c440514cc547f190e49406ece40ff8\",\n \"script\" : null,\n \"groupId\" : \"34a616d95df64af18b77542132670eed\",\n \"name\" : \"整体网络数据统计\",\n \"createTime\" : null,\n \"updateTime\" : 1693548831044,\n \"lock\" : null,\n \"createBy\" : null,\n \"updateBy\" : \"ljy\",\n \"path\" : \"/totalNetworkAnalysis\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1693530180\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1693533780\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"status\\\": 200,\\n \\\"code\\\": 200,\\n \\\"queryKey\\\": \\\"069aab5ad4c0a6ce6d29e5b21f4b27c5\\\",\\n \\\"success\\\": true,\\n \\\"message\\\": null,\\n \\\"statistics\\\": {\\n \\\"elapsed\\\": 0,\\n \\\"rows_read\\\": 0,\\n \\\"bytes_read\\\": 0,\\n \\\"result_size\\\": 0,\\n \\\"result_rows\\\": 0\\n },\\n \\\"job\\\": null,\\n \\\"formatType\\\": \\\"json\\\",\\n \\\"meta\\\": [{\\n \\\"name\\\": \\\"stat_time\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"establish_latency_ms\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"tcp_lostlen_percent\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"pkt_retrans_percent\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }],\\n \\\"data\\\": {\\n \\\"resultType\\\": \\\"matrix\\\",\\n \\\"result\\\": []\\n },\\n \\\"originalUrl\\\": \\\"http://192.168.44.55:9999/?query=SELECT TIME_FLOOR_WITH_FILL(recv_time,\'PT100040S\',\'zero\') AS stat_time,IFNULL(ROUND(AVG(tcp_rtt_ms)),0) AS establish_latency_ms,IFNULL(ROUND(SUM(tcp_c2s_lost_bytes + tcp_s2c_lost_bytes)/SUM(sent_bytes + received_bytes + tcp_c2s_lost_bytes + tcp_s2c_lost_bytes),4),0) AS tcp_lostlen_percent,IFNULL(ROUND(SUM(tcp_c2s_rtx_pkts + tcp_s2c_rtx_pkts)/ SUM(sent_pkts + received_pkts),4),0) AS pkt_retrans_percent FROM session_record_cn WHERE recv_time >= toDateTime(1663315422) AND recv_time < toDateTime(1673319422) AND decoded_path IN (\'IPv4_TCP\', \'IPv6_TCP\') GROUP BY stat_time ORDER BY stat_time ASC&format=json&option=real_time\\\",\\n \\\"msg\\\": \\\"OK\\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"status\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"code\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"queryKey\",\n \"value\" : \"069aab5ad4c0a6ce6d29e5b21f4b27c5\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"success\",\n \"value\" : \"true\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Boolean\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"statistics\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"elapsed\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"rows_read\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"bytes_read\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_size\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_rows\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"job\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"formatType\",\n \"value\" : \"json\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"meta\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"name\",\n \"value\" : \"stat_time\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"type\",\n \"value\" : \"long\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"category\",\n \"value\" : \"Metric\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"data\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"resultType\",\n \"value\" : \"matrix\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"originalUrl\",\n \"value\" : \"http://192.168.44.55:9999/?query=SELECT TIME_FLOOR_WITH_FILL(recv_time,\'PT100040S\',\'zero\') AS stat_time,IFNULL(ROUND(AVG(tcp_rtt_ms)),0) AS establish_latency_ms,IFNULL(ROUND(SUM(tcp_c2s_lost_bytes + tcp_s2c_lost_bytes)/SUM(sent_bytes + received_bytes + tcp_c2s_lost_bytes + tcp_s2c_lost_bytes),4),0) AS tcp_lostlen_percent,IFNULL(ROUND(SUM(tcp_c2s_rtx_pkts + tcp_s2c_rtx_pkts)/ SUM(sent_pkts + received_pkts),4),0) AS pkt_retrans_percent FROM session_record_cn WHERE recv_time >= toDateTime(1663315422) AND recv_time < toDateTime(1673319422) AND decoded_path IN (\'IPv4_TCP\', \'IPv6_TCP\') GROUP BY stat_time ORDER BY stat_time ASC&format=json&option=real_time\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"msg\",\n \"value\" : \"OK\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandle\' as preHandle;\r\nimport \'@/post/table\' as objHandle\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\nimport \'@/public/getPercentile\' as getPercentile\r\n\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime\r\n}\r\n\r\npreHandle(parameter);\r\n\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"SELECT TIME_FLOOR_WITH_FILL(recv_time,\'PT${step}S\',\'zero\') AS stat_time,IFNULL(ROUND(AVG(tcp_rtt_ms)),0) AS establish_latency_ms,IFNULL(ROUND(SUM(tcp_c2s_lost_bytes + tcp_s2c_lost_bytes)/SUM(sent_bytes + received_bytes + tcp_c2s_lost_bytes + tcp_s2c_lost_bytes),4),0) AS tcp_lostlen_percent,IFNULL(ROUND(SUM(tcp_c2s_rtx_pkts + tcp_s2c_rtx_pkts)/ SUM(sent_pkts + received_pkts),4),0) AS pkt_retrans_percent FROM session_record_cn WHERE recv_time >= ${startTime} AND recv_time < ${endTime} AND decoded_path IN (\'IPv4_TCP\', \'IPv6_TCP\') GROUP BY stat_time ORDER BY stat_time ASC\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"applicationPerformanceOverviewNetworkAnalysis\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar result = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nif(result.success){\r\n var o = {};\r\n o.resultType=\"matrix\";\r\n var old = new ArrayList();\r\n var list = result.data;\r\n var newList = new ArrayList();\r\n for(i,j in list){\r\n newList.add(list[i]);\r\n }\r\n if(list.length > 0){\r\n for(i,j in list){\r\n var pojo = list[i];\r\n var tempObj= {};\r\n for (key,value in pojo){\r\n if(key.indexOf(\"stat_time\") != -1){\r\n tempObj[\'statTime\'] = pojo[key]\r\n }else if(key.indexOf(\"establish_latency_ms\") != -1){\r\n tempObj[\'establishLatencyMs\'] = pojo[key]\r\n }else if(key.indexOf(\"http_response_latency\") != -1){\r\n tempObj[\'httpResponseLatency\'] = pojo[key]\r\n }else if(key.indexOf(\"ssl_con_latency\") != -1){\r\n tempObj[\'sslConLatency\'] = pojo[key]\r\n }else if(key.indexOf(\"tcp_lostlen_percent\") != -1){\r\n tempObj[\'tcpLostlenPercent\'] = pojo[key]\r\n }else if(key.indexOf(\"pkt_retrans_percent\") != -1){\r\n tempObj[\'pktRetransPercent\'] = pojo[key]\r\n }\r\n }\r\n list[i] = tempObj;\r\n list[i].statTime = list[i].statTime;\r\n }\r\n var establishLatencyMs = [];\r\n var httpResponseLatency = [];\r\n var sslConLatency = [];\r\n var tcpLostlenPercent = [];\r\n var pktRetransPercent = [];\r\n for(key,value in list[0]){\r\n if(key.indexOf(\"establishLatencyMs\") != -1){\r\n establishLatencyMs.push(key);\r\n } else if(key.indexOf(\"httpResponseLatency\") != -1){\r\n httpResponseLatency.push(key);\r\n } else if(key.indexOf(\"sslConLatency\") != -1){\r\n sslConLatency.push(key);\r\n } else if(key.indexOf(\"tcpLostlenPercent\") != -1){\r\n tcpLostlenPercent.push(key);\r\n } else if(key.indexOf(\"pktRetransPercent\") != -1){\r\n pktRetransPercent.push(key);\r\n }\r\n }\r\n var map = new HashMap();\r\n map.put(\"establishLatencyMs\",\"establish_latency_ms\");\r\n map.put(\"httpResponseLatency\",\"http_response_latency\");\r\n map.put(\"sslConLatency\",\"ssl_con_latency\");\r\n map.put(\"tcpLostlenPercent\",\"tcp_lostlen_percent\");\r\n map.put(\"pktRetransPercent\",\"pkt_retrans_percent\");\r\n var type = {};\r\n type.establishLatencyMs = establishLatencyMs;\r\n type.tcpLostlenPercent = tcpLostlenPercent;\r\n type.pktRetransPercent = pktRetransPercent;\r\n for(key,value in type){\r\n var obj = {};\r\n obj.type = key;\r\n var typeKey = type[key];\r\n for(m,n in typeKey){\r\n var zong = {};\r\n var analysis = {};\r\n var values = new ArrayList();\r\n list.sort((a,b)=>a.statTime.asDouble()-b.statTime.asDouble());\r\n var sumValue = 0;\r\n for(i,j in list){\r\n var pojo = list[i];\r\n var tempArray = new ArrayList();\r\n tempArray.add(pojo[\"statTime\"]);\r\n tempArray.add(pojo[typeKey[m]] + \"\");\r\n values.add(tempArray);\r\n }\r\n for(i,j in newList){\r\n var pojo = newList[i];\r\n var field = map.get(typeKey[m]);\r\n var value = pojo[field].asDouble();\r\n sumValue += value;\r\n }\r\n analysis.avg = (sumValue/parameter.timeDiff).asDouble();\r\n if(key==\"bytes\"){\r\n analysis.avg = analysis.avg * 8;\r\n }\r\n analysis.avg=analysis.avg+\"\";\r\n \r\n var plist = [];\r\n for(i,j in values){\r\n plist.push(values[i][1].asDouble());\r\n }\r\n analysis.max = plist.max()+\"\";\r\n analysis.min = plist.min()+\"\";\r\n analysis.p95 = getPercentile(plist, 0.95)+\"\";\r\n \r\n \r\n zong.values = values;\r\n zong.analysis = analysis;\r\n \r\n obj[typeKey[m]] = zong;\r\n }\r\n old.add(obj);\r\n }\r\n }\r\n o.result = old;\r\n result.code=200;\r\n result.data=o;\r\n result.msg = result.message;\r\n result.message=null;\r\n}\r\n\r\nreturn result;');
+INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/整体网络数据统计.ms', '{\n \"properties\" : { },\n \"id\" : \"46c440514cc547f190e49406ece40ff8\",\n \"script\" : null,\n \"groupId\" : \"34a616d95df64af18b77542132670eed\",\n \"name\" : \"整体网络数据统计\",\n \"createTime\" : null,\n \"updateTime\" : 1717646871926,\n \"lock\" : null,\n \"createBy\" : null,\n \"updateBy\" : null,\n \"path\" : \"/totalNetworkAnalysis\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1717639552\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1717643152\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"status\\\": 200,\\n \\\"message\\\": null,\\n \\\"request_id\\\": \\\"094e9df7-3194-4cd7-954b-0766a81d2558\\\",\\n \\\"success\\\": true,\\n \\\"code\\\": 200,\\n \\\"job\\\": null,\\n \\\"output_mode\\\": \\\"json\\\",\\n \\\"statistics\\\": {\\n \\\"elapsed\\\": 0,\\n \\\"rows_read\\\": 0,\\n \\\"bytes_read\\\": 0,\\n \\\"result_bytes\\\": 0,\\n \\\"result_rows\\\": 0\\n },\\n \\\"meta\\\": null,\\n \\\"data\\\": {\\n \\\"resultType\\\": \\\"matrix\\\",\\n \\\"result\\\": []\\n },\\n \\\"originalUrl\\\": \\\"SELECT TIME_FLOOR_WITH_FILL(recv_time,\'PT60S\',\'zero\') AS stat_time,IFNULL(ROUND(AVG(tcp_rtt_ms)),0) AS establish_latency_ms,IFNULL(ROUND(SUM(tcp_c2s_lost_bytes + tcp_s2c_lost_bytes)/SUM(sent_bytes + received_bytes + tcp_c2s_lost_bytes + tcp_s2c_lost_bytes),4),0) AS tcp_lostlen_percent,IFNULL(ROUND(SUM(tcp_c2s_rtx_pkts + tcp_s2c_rtx_pkts)/ SUM(sent_pkts + received_pkts),4),0) AS pkt_retrans_percent FROM session_record_cn WHERE recv_time >= toDateTime(1693530180) AND recv_time < toDateTime(1693533780) AND ip_protocol IN (\'tcp\') GROUP BY stat_time ORDER BY stat_time ASC\\\",\\n \\\"msg\\\": \\\"OK\\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"status\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"code\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"queryKey\",\n \"value\" : \"069aab5ad4c0a6ce6d29e5b21f4b27c5\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"success\",\n \"value\" : \"true\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Boolean\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"statistics\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"elapsed\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"rows_read\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"bytes_read\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_size\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_rows\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"job\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"formatType\",\n \"value\" : \"json\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"meta\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"name\",\n \"value\" : \"stat_time\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"type\",\n \"value\" : \"long\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"category\",\n \"value\" : \"Metric\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"data\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"resultType\",\n \"value\" : \"matrix\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"originalUrl\",\n \"value\" : \"http://192.168.44.55:9999/?query=SELECT TIME_FLOOR_WITH_FILL(recv_time,\'PT100040S\',\'zero\') AS stat_time,IFNULL(ROUND(AVG(tcp_rtt_ms)),0) AS establish_latency_ms,IFNULL(ROUND(SUM(tcp_c2s_lost_bytes + tcp_s2c_lost_bytes)/SUM(sent_bytes + received_bytes + tcp_c2s_lost_bytes + tcp_s2c_lost_bytes),4),0) AS tcp_lostlen_percent,IFNULL(ROUND(SUM(tcp_c2s_rtx_pkts + tcp_s2c_rtx_pkts)/ SUM(sent_pkts + received_pkts),4),0) AS pkt_retrans_percent FROM session_record_cn WHERE recv_time >= toDateTime(1663315422) AND recv_time < toDateTime(1673319422) AND decoded_path IN (\'IPv4_TCP\', \'IPv6_TCP\') GROUP BY stat_time ORDER BY stat_time ASC&format=json&option=real_time\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"msg\",\n \"value\" : \"OK\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandle\' as preHandle;\r\nimport \'@/post/table\' as objHandle\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\nimport \'@/public/getPercentile\' as getPercentile\r\n\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime\r\n}\r\n\r\npreHandle(parameter);\r\n\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"SELECT TIME_FLOOR_WITH_FILL(recv_time,\'PT${step}S\',\'zero\') AS stat_time,IFNULL(ROUND(AVG(tcp_rtt_ms)),0) AS establish_latency_ms,IFNULL(ROUND(SUM(tcp_c2s_lost_bytes + tcp_s2c_lost_bytes)/SUM(sent_bytes + received_bytes + tcp_c2s_lost_bytes + tcp_s2c_lost_bytes),4),0) AS tcp_lostlen_percent,IFNULL(ROUND(SUM(tcp_c2s_rtx_pkts + tcp_s2c_rtx_pkts)/ SUM(sent_pkts + received_pkts),4),0) AS pkt_retrans_percent FROM session_record_cn WHERE recv_time >= ${startTime} AND recv_time < ${endTime} AND ip_protocol IN (\'tcp\') GROUP BY stat_time ORDER BY stat_time ASC\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"applicationPerformanceOverviewNetworkAnalysis\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar result = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nif(result.success){\r\n var o = {};\r\n o.resultType=\"matrix\";\r\n var old = new ArrayList();\r\n var list = result.data;\r\n var newList = new ArrayList();\r\n for(i,j in list){\r\n newList.add(list[i]);\r\n }\r\n if(list.length > 0){\r\n for(i,j in list){\r\n var pojo = list[i];\r\n var tempObj= {};\r\n for (key,value in pojo){\r\n if(key.indexOf(\"stat_time\") != -1){\r\n tempObj[\'statTime\'] = pojo[key]\r\n }else if(key.indexOf(\"establish_latency_ms\") != -1){\r\n tempObj[\'establishLatencyMs\'] = pojo[key]\r\n }else if(key.indexOf(\"http_response_latency\") != -1){\r\n tempObj[\'httpResponseLatency\'] = pojo[key]\r\n }else if(key.indexOf(\"ssl_con_latency\") != -1){\r\n tempObj[\'sslConLatency\'] = pojo[key]\r\n }else if(key.indexOf(\"tcp_lostlen_percent\") != -1){\r\n tempObj[\'tcpLostlenPercent\'] = pojo[key]\r\n }else if(key.indexOf(\"pkt_retrans_percent\") != -1){\r\n tempObj[\'pktRetransPercent\'] = pojo[key]\r\n }\r\n }\r\n list[i] = tempObj;\r\n list[i].statTime = list[i].statTime;\r\n }\r\n var establishLatencyMs = [];\r\n var httpResponseLatency = [];\r\n var sslConLatency = [];\r\n var tcpLostlenPercent = [];\r\n var pktRetransPercent = [];\r\n for(key,value in list[0]){\r\n if(key.indexOf(\"establishLatencyMs\") != -1){\r\n establishLatencyMs.push(key);\r\n } else if(key.indexOf(\"httpResponseLatency\") != -1){\r\n httpResponseLatency.push(key);\r\n } else if(key.indexOf(\"sslConLatency\") != -1){\r\n sslConLatency.push(key);\r\n } else if(key.indexOf(\"tcpLostlenPercent\") != -1){\r\n tcpLostlenPercent.push(key);\r\n } else if(key.indexOf(\"pktRetransPercent\") != -1){\r\n pktRetransPercent.push(key);\r\n }\r\n }\r\n var map = new HashMap();\r\n map.put(\"establishLatencyMs\",\"establish_latency_ms\");\r\n map.put(\"httpResponseLatency\",\"http_response_latency\");\r\n map.put(\"sslConLatency\",\"ssl_con_latency\");\r\n map.put(\"tcpLostlenPercent\",\"tcp_lostlen_percent\");\r\n map.put(\"pktRetransPercent\",\"pkt_retrans_percent\");\r\n var type = {};\r\n type.establishLatencyMs = establishLatencyMs;\r\n type.tcpLostlenPercent = tcpLostlenPercent;\r\n type.pktRetransPercent = pktRetransPercent;\r\n for(key,value in type){\r\n var obj = {};\r\n obj.type = key;\r\n var typeKey = type[key];\r\n for(m,n in typeKey){\r\n var zong = {};\r\n var analysis = {};\r\n var values = new ArrayList();\r\n list.sort((a,b)=>a.statTime.asDouble()-b.statTime.asDouble());\r\n var sumValue = 0;\r\n for(i,j in list){\r\n var pojo = list[i];\r\n var tempArray = new ArrayList();\r\n tempArray.add(pojo[\"statTime\"]);\r\n tempArray.add(pojo[typeKey[m]] + \"\");\r\n values.add(tempArray);\r\n }\r\n for(i,j in newList){\r\n var pojo = newList[i];\r\n var field = map.get(typeKey[m]);\r\n var value = pojo[field].asDouble();\r\n sumValue += value;\r\n }\r\n analysis.avg = (sumValue/parameter.timeDiff).asDouble();\r\n if(key==\"bytes\"){\r\n analysis.avg = analysis.avg * 8;\r\n }\r\n analysis.avg=analysis.avg+\"\";\r\n \r\n var plist = [];\r\n for(i,j in values){\r\n plist.push(values[i][1].asDouble());\r\n }\r\n analysis.max = plist.max()+\"\";\r\n analysis.min = plist.min()+\"\";\r\n analysis.p95 = getPercentile(plist, 0.95)+\"\";\r\n \r\n \r\n zong.values = values;\r\n zong.analysis = analysis;\r\n \r\n obj[typeKey[m]] = zong;\r\n }\r\n old.add(obj);\r\n }\r\n }\r\n o.result = old;\r\n result.code=200;\r\n result.data=o;\r\n result.msg = result.message;\r\n result.message=null;\r\n}\r\n\r\nreturn result;');
INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/缺包率.ms', '{\n \"properties\" : { },\n \"id\" : \"copy1673346071175d34038\",\n \"script\" : null,\n \"groupId\" : \"34a616d95df64af18b77542132670eed\",\n \"name\" : \"缺包率\",\n \"createTime\" : null,\n \"updateTime\" : 1697531666271,\n \"lock\" : null,\n \"createBy\" : \"th\",\n \"updateBy\" : \"ljy\",\n \"path\" : \"/tcpLostlenPercent\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1697527962\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1697531562\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"cycle\",\n \"value\" : \"0\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"status\\\": 200,\\n \\\"code\\\": 200,\\n \\\"queryKey\\\": \\\"d58a41236ef26e26190ca48dcb8d6bc6\\\",\\n \\\"success\\\": true,\\n \\\"message\\\": null,\\n \\\"statistics\\\": {\\n \\\"elapsed\\\": 1,\\n \\\"rows_read\\\": 0,\\n \\\"bytes_read\\\": 0,\\n \\\"result_size\\\": 4,\\n \\\"result_rows\\\": 1\\n },\\n \\\"job\\\": null,\\n \\\"formatType\\\": \\\"json\\\",\\n \\\"meta\\\": [{\\n \\\"name\\\": \\\"tcp_lostlen_percent_avg\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"tcp_lostlen_percent_p10\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"tcp_lostlen_percent_p50\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"tcp_lostlen_percent_p90\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"tcp_lostlen_percent_p95\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"tcp_lostlen_percent_p99\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }],\\n \\\"data\\\": {\\n \\\"resultType\\\": \\\"object\\\",\\n \\\"result\\\": {\\n \\\"tcpLostlenPercentAvg\\\": null,\\n \\\"tcpLostlenPercentP10\\\": null,\\n \\\"tcpLostlenPercentP50\\\": null,\\n \\\"tcpLostlenPercentP90\\\": null,\\n \\\"tcpLostlenPercentP95\\\": null,\\n \\\"tcpLostlenPercentP99\\\": null\\n }\\n },\\n \\\"originalUrl\\\": \\\"http://192.168.44.55:9999/?query= SELECT ROUND(AVG(tcp_lost_bytes_ratio), 4) AS tcp_lostlen_percent_avg, ROUND(QUANTILE(tcp_lost_bytes_ratio, 0.1), 4) AS tcp_lostlen_percent_p10, ROUND(QUANTILE(tcp_lost_bytes_ratio, 0.5), 4) AS tcp_lostlen_percent_p50, ROUND(QUANTILE(tcp_lost_bytes_ratio, 0.9), 4) AS tcp_lostlen_percent_p90, ROUND(QUANTILE(tcp_lost_bytes_ratio, 0.95), 4) AS tcp_lostlen_percent_p95, ROUND(QUANTILE(tcp_lost_bytes_ratio, 0.99), 4) AS tcp_lostlen_percent_p99 FROM metric_application WHERE stat_time >= toDateTime(1693272384) AND stat_time < toDateTime(1693275984) &format=json&option=real_time\\\",\\n \\\"msg\\\": \\\"OK\\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"status\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"code\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"queryKey\",\n \"value\" : \"d58a41236ef26e26190ca48dcb8d6bc6\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"success\",\n \"value\" : \"true\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Boolean\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"statistics\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"elapsed\",\n \"value\" : \"1\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"rows_read\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"bytes_read\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_size\",\n \"value\" : \"4\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_rows\",\n \"value\" : \"1\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"job\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"formatType\",\n \"value\" : \"json\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"meta\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"name\",\n \"value\" : \"tcp_lostlen_percent_avg\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"type\",\n \"value\" : \"double\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"category\",\n \"value\" : \"Metric\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"data\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"resultType\",\n \"value\" : \"object\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"tcpLostlenPercentAvg\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"tcpLostlenPercentP10\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"tcpLostlenPercentP50\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"tcpLostlenPercentP90\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"tcpLostlenPercentP95\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"tcpLostlenPercentP99\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"originalUrl\",\n \"value\" : \"http://192.168.44.55:9999/?query= SELECT ROUND(AVG(tcp_lost_bytes_ratio), 4) AS tcp_lostlen_percent_avg, ROUND(QUANTILE(tcp_lost_bytes_ratio, 0.1), 4) AS tcp_lostlen_percent_p10, ROUND(QUANTILE(tcp_lost_bytes_ratio, 0.5), 4) AS tcp_lostlen_percent_p50, ROUND(QUANTILE(tcp_lost_bytes_ratio, 0.9), 4) AS tcp_lostlen_percent_p90, ROUND(QUANTILE(tcp_lost_bytes_ratio, 0.95), 4) AS tcp_lostlen_percent_p95, ROUND(QUANTILE(tcp_lost_bytes_ratio, 0.99), 4) AS tcp_lostlen_percent_p99 FROM metric_application WHERE stat_time >= toDateTime(1693272384) AND stat_time < toDateTime(1693275984) &format=json&option=real_time\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"msg\",\n \"value\" : \"OK\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandle\' as preHandle;\r\nimport \'@/post/object\' as objHandle\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\n\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"cycle\":cycle\r\n}\r\n\r\npreHandle(parameter);\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"<#if cycle?default(\'\')?trim? length gt 0 && cycle ==1> SELECT ROUND(AVG(tcp_lost_bytes_ratio), 4) AS tcp_lostlen_percent_avg FROM metric_application WHERE stat_time >= ${startTime}-${timeDiff} AND stat_time < ${endTime}-${timeDiff} <#else> SELECT ROUND(AVG(tcp_lost_bytes_ratio), 4) AS tcp_lostlen_percent_avg, ROUND(QUANTILE(tcp_lost_bytes_ratio, 0.1), 4) AS tcp_lostlen_percent_p10, ROUND(QUANTILE(tcp_lost_bytes_ratio, 0.5), 4) AS tcp_lostlen_percent_p50, ROUND(QUANTILE(tcp_lost_bytes_ratio, 0.9), 4) AS tcp_lostlen_percent_p90, ROUND(QUANTILE(tcp_lost_bytes_ratio, 0.95), 4) AS tcp_lostlen_percent_p95, ROUND(QUANTILE(tcp_lost_bytes_ratio, 0.99), 4) AS tcp_lostlen_percent_p99 FROM metric_application WHERE stat_time >= ${startTime} AND stat_time < ${endTime} </#if>\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"applicationPerformanceOverviewTcpLostlenPercent\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar galaxyRes = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nvar result = objHandle(galaxyRes);\r\n\r\nreturn result;');
INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/overview/重传率.ms', '{\n \"properties\" : { },\n \"id\" : \"copy1673346017578d28129\",\n \"script\" : null,\n \"groupId\" : \"34a616d95df64af18b77542132670eed\",\n \"name\" : \"重传率\",\n \"createTime\" : null,\n \"updateTime\" : 1697531681418,\n \"lock\" : null,\n \"createBy\" : \"th\",\n \"updateBy\" : \"ljy\",\n \"path\" : \"/packetRetransPercent\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1697527962\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1697531562\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"cycle\",\n \"value\" : \"0\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"status\\\": 200,\\n \\\"code\\\": 200,\\n \\\"queryKey\\\": \\\"813f2b481ea3a013aab87a0361134b61\\\",\\n \\\"success\\\": true,\\n \\\"message\\\": null,\\n \\\"statistics\\\": {\\n \\\"elapsed\\\": 0,\\n \\\"rows_read\\\": 0,\\n \\\"bytes_read\\\": 0,\\n \\\"result_size\\\": 4,\\n \\\"result_rows\\\": 1\\n },\\n \\\"job\\\": null,\\n \\\"formatType\\\": \\\"json\\\",\\n \\\"meta\\\": [{\\n \\\"name\\\": \\\"pkt_retrans_percent_avg\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"pkt_retrans_percent_p10\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"pkt_retrans_percent_p50\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"pkt_retrans_percent_p90\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"pkt_retrans_percent_p95\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"pkt_retrans_percent_p99\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }],\\n \\\"data\\\": {\\n \\\"resultType\\\": \\\"object\\\",\\n \\\"result\\\": {\\n \\\"pktRetransPercentAvg\\\": null,\\n \\\"pktRetransPercentP10\\\": null,\\n \\\"pktRetransPercentP50\\\": null,\\n \\\"pktRetransPercentP90\\\": null,\\n \\\"pktRetransPercentP95\\\": null,\\n \\\"pktRetransPercentP99\\\": null\\n }\\n },\\n \\\"originalUrl\\\": \\\"http://192.168.44.55:9999/?query= SELECT ROUND(AVG(tcp_rtx_pkts_ratio), 4) AS pkt_retrans_percent_avg, ROUND(QUANTILE(tcp_rtx_pkts_ratio, 0.1), 4) AS pkt_retrans_percent_p10, ROUND(QUANTILE(tcp_rtx_pkts_ratio, 0.5), 4) AS pkt_retrans_percent_p50, ROUND(QUANTILE(tcp_rtx_pkts_ratio, 0.9), 4) AS pkt_retrans_percent_p90, ROUND(QUANTILE(tcp_rtx_pkts_ratio, 0.95), 4) AS pkt_retrans_percent_p95, ROUND(QUANTILE(tcp_rtx_pkts_ratio, 0.99), 4) AS pkt_retrans_percent_p99 FROM metric_application WHERE stat_time >= toDateTime(1693272384) AND stat_time < toDateTime(1693275984) &format=json&option=real_time\\\",\\n \\\"msg\\\": \\\"OK\\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"status\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"code\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"queryKey\",\n \"value\" : \"813f2b481ea3a013aab87a0361134b61\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"success\",\n \"value\" : \"true\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Boolean\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"statistics\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"elapsed\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"rows_read\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"bytes_read\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_size\",\n \"value\" : \"4\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_rows\",\n \"value\" : \"1\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"job\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"formatType\",\n \"value\" : \"json\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"meta\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"name\",\n \"value\" : \"pkt_retrans_percent_avg\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"type\",\n \"value\" : \"double\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"category\",\n \"value\" : \"Metric\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"data\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"resultType\",\n \"value\" : \"object\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"pktRetransPercentAvg\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Double\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"pktRetransPercentP10\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"pktRetransPercentP50\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"pktRetransPercentP90\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"pktRetransPercentP95\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"pktRetransPercentP99\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"originalUrl\",\n \"value\" : \"http://192.168.44.55:9999/?query= SELECT ROUND(AVG(tcp_rtx_pkts_ratio), 4) AS pkt_retrans_percent_avg, ROUND(QUANTILE(tcp_rtx_pkts_ratio, 0.1), 4) AS pkt_retrans_percent_p10, ROUND(QUANTILE(tcp_rtx_pkts_ratio, 0.5), 4) AS pkt_retrans_percent_p50, ROUND(QUANTILE(tcp_rtx_pkts_ratio, 0.9), 4) AS pkt_retrans_percent_p90, ROUND(QUANTILE(tcp_rtx_pkts_ratio, 0.95), 4) AS pkt_retrans_percent_p95, ROUND(QUANTILE(tcp_rtx_pkts_ratio, 0.99), 4) AS pkt_retrans_percent_p99 FROM metric_application WHERE stat_time >= toDateTime(1693272384) AND stat_time < toDateTime(1693275984) &format=json&option=real_time\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"msg\",\n \"value\" : \"OK\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandle\' as preHandle;\r\nimport \'@/post/object\' as objHandle\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\n\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"cycle\":cycle\r\n}\r\n\r\npreHandle(parameter);\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"<#if cycle?default(\'\')?trim? length gt 0 && cycle ==1> SELECT ROUND(AVG(tcp_rtx_pkts_ratio), 4) AS pkt_retrans_percent_avg FROM metric_application WHERE stat_time >= ${startTime}-${timeDiff} AND stat_time < ${endTime}-${timeDiff} <#else> SELECT ROUND(AVG(tcp_rtx_pkts_ratio), 4) AS pkt_retrans_percent_avg, ROUND(QUANTILE(tcp_rtx_pkts_ratio, 0.1), 4) AS pkt_retrans_percent_p10, ROUND(QUANTILE(tcp_rtx_pkts_ratio, 0.5), 4) AS pkt_retrans_percent_p50, ROUND(QUANTILE(tcp_rtx_pkts_ratio, 0.9), 4) AS pkt_retrans_percent_p90, ROUND(QUANTILE(tcp_rtx_pkts_ratio, 0.95), 4) AS pkt_retrans_percent_p95, ROUND(QUANTILE(tcp_rtx_pkts_ratio, 0.99), 4) AS pkt_retrans_percent_p99 FROM metric_application WHERE stat_time >= ${startTime} AND stat_time < ${endTime} </#if>\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"applicationPerformanceOverviewPacketRetransPercent\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar galaxyRes = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nvar result = objHandle(galaxyRes);\r\n\r\nreturn result;');
INSERT INTO `magic_api_file` VALUES ('/api/interface/application/performance/会话统计.ms', '{\n \"properties\" : { },\n \"id\" : \"a8717350619a4bbcaf415dbdbea9d5eb\",\n \"script\" : null,\n \"groupId\" : \"4a225ed88c0e42729237244d30c4269f\",\n \"name\" : \"会话统计\",\n \"createTime\" : null,\n \"updateTime\" : 1693554907200,\n \"lock\" : null,\n \"createBy\" : \"th\",\n \"updateBy\" : \"ljy\",\n \"path\" : \"/relatedSessions\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1693530180\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1693533780\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"ip\",\n \"value\" : \"116.178.236.216\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"status\\\": 200,\\n \\\"code\\\": 200,\\n \\\"queryKey\\\": \\\"a4980ef71668cbffdb8d9d9c43310874\\\",\\n \\\"success\\\": true,\\n \\\"message\\\": null,\\n \\\"statistics\\\": {\\n \\\"elapsed\\\": 0,\\n \\\"rows_read\\\": 0,\\n \\\"bytes_read\\\": 0,\\n \\\"result_size\\\": 0,\\n \\\"result_rows\\\": 0\\n },\\n \\\"job\\\": null,\\n \\\"formatType\\\": \\\"json\\\",\\n \\\"meta\\\": [{\\n \\\"name\\\": \\\"ip\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"client_sessions\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"server_sessions\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }],\\n \\\"data\\\": {\\n \\\"resultType\\\": \\\"object\\\",\\n \\\"result\\\": {}\\n },\\n \\\"originalUrl\\\": \\\"http://192.168.44.55:9999/?query=SELECT ip AS ip, SUM(client_sessions) AS client_sessions, SUM(server_sessions) AS server_sessions FROM( SELECT ip AS ip, IF(side = \'client\',SUM(sessions),0) AS client_sessions, IF(side = \'server\',SUM(sessions),0) AS server_sessions FROM metric_ip WHERE stat_time >= toDateTime(1673574154) AND stat_time < toDateTime(1673577754) AND ip = \'116.178.236.216\' GROUP BY ip,side ) GROUP BY ip&format=json&option=real_time\\\",\\n \\\"msg\\\": \\\"OK\\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"status\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"code\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"queryKey\",\n \"value\" : \"a4980ef71668cbffdb8d9d9c43310874\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"success\",\n \"value\" : \"true\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Boolean\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"statistics\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"elapsed\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"rows_read\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"bytes_read\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_size\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_rows\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"job\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"formatType\",\n \"value\" : \"json\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"meta\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"name\",\n \"value\" : \"ip\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"type\",\n \"value\" : \"string\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"category\",\n \"value\" : \"Metric\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"data\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"resultType\",\n \"value\" : \"object\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"originalUrl\",\n \"value\" : \"http://192.168.44.55:9999/?query=SELECT ip AS ip, SUM(client_sessions) AS client_sessions, SUM(server_sessions) AS server_sessions FROM( SELECT ip AS ip, IF(side = \'client\',SUM(sessions),0) AS client_sessions, IF(side = \'server\',SUM(sessions),0) AS server_sessions FROM metric_ip WHERE stat_time >= toDateTime(1673574154) AND stat_time < toDateTime(1673577754) AND ip = \'116.178.236.216\' GROUP BY ip,side ) GROUP BY ip&format=json&option=real_time\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"msg\",\n \"value\" : \"OK\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandle\' as preHandle;\r\nimport \'@/public/toHump\' as toHump\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"ip\":ip\r\n}\r\n\r\npreHandle(parameter);\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"SELECT ip AS ip, SUM(client_sessions) AS client_sessions, SUM(server_sessions) AS server_sessions FROM( SELECT ip AS ip, IF(side = \'client\',SUM(sessions),0) AS client_sessions, IF(side = \'server\',SUM(sessions),0) AS server_sessions FROM metric_ip WHERE stat_time >= ${startTime} AND stat_time < ${endTime} AND ip = \'${ip}\' GROUP BY ip,side ) GROUP BY ip\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"applicationPerformanceRelatedSessions\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar result = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nif(result.success){\r\n var o={};\r\n o.resultType=\"object\"\r\n o.result={};\r\n if(result.data.length > 0){\r\n var pojo = result.data[0];\r\n var tempObj= {};\r\n for (key,value in pojo){\r\n var tempKey = toHump(key);\r\n tempObj[tempKey] = pojo[key];\r\n }\r\n tempObj.sessionsRate = ((tempObj.clientSessions.asDouble() + tempObj.serverSessions.asDouble()) / parameter.timeDiff).toFixed(2); \r\n o.result = tempObj;\r\n }\r\n result.code=200;\r\n result.data=o;\r\n result.msg = result.message;\r\n result.message=null;\r\n}\r\n\r\nreturn result;');
@@ -137,7 +137,7 @@ INSERT INTO `magic_api_file` VALUES ('/api/interface/link/overview/drilldown/dim
INSERT INTO `magic_api_file` VALUES ('/api/interface/link/overview/drilldown/dimension/SSL握手延迟.ms', '{\n \"properties\" : { },\n \"id\" : \"385669308ee840a486b4d2fcb1b8c0c7\",\n \"script\" : null,\n \"groupId\" : \"ce1f73aa3ed54951ace90e439c52afb0\",\n \"name\" : \"SSL握手延迟\",\n \"createTime\" : null,\n \"updateTime\" : 1696846225603,\n \"lock\" : null,\n \"createBy\" : null,\n \"updateBy\" : \"admin\",\n \"path\" : \"/sslConDelay\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1673485693\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1673489293\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"params\",\n \"value\" : \"\'116.178.236.216\',\'2408:877a:2000:3:4000:0:b00:100\',\'116.178.79.27\'\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"q\",\n \"value\" : \"out_link_id \",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"type\",\n \"value\" : \"ip\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"cycle\",\n \"value\" : null,\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"code\\\": 999,\\n \\\"time\\\": \\\"2023-08-16 07:14:21\\\",\\n \\\"message\\\": \\\"404 null at Row:10~10,Col:32~36\\\\n\\\\nvar galaxyResult = httpRequest.get().getBody();\\\\r\\\\n ^^^^^ \\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"code\",\n \"value\" : \"999\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"time\",\n \"value\" : \"2023-08-16 07:14:21\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"404 null at Row:10~10,Col:32~36\\\\n\\\\nvar galaxyResult = httpRequest.get().getBody();\\\\r\\\\n ^^^^^\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandle\' as preHandle;\r\nimport \'@/post/table\' as objHandle\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\nimport \'@/pre/typeHandle2nd\' as type2Handle;\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"params\":params,\r\n \"q\":q,\r\n \"type\":type,\r\n \"cycle\":cycle\r\n}\r\n\r\npreHandle(parameter);\r\ntype2Handle(parameter);\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"<#if cycle?default(\'\')?trim? length gt 0 && cycle ==1>SELECT ${dimension} AS ${label},ROUND(AVG(ssl_handshake_latency_ms)) AS ssl_con_latency FROM session_record_cn WHERE recv_time >= ${startTime}-${timeDiff} AND recv_time < ${endTime}-${timeDiff} AND l7_protocol = \'SSL\' AND ssl_handshake_latency_ms != 0 AND ${label} IN (<#if params?default(\'\')?trim? length gt 0> ${params} </#if>) <#if q?default(\'\')?trim? length gt 0> AND (${q}) </#if> GROUP BY ${label} <#else> SELECT ${dimension} AS ${label},ROUND(AVG(ssl_handshake_latency_ms)) AS ssl_con_latency FROM session_record_cn WHERE recv_time >= ${startTime} AND recv_time < ${endTime} AND l7_protocol = \'SSL\' AND ssl_handshake_latency_ms != 0 AND ${label} IN (<#if params?default(\'\')?trim? length gt 0> ${params} </#if>) <#if q?default(\'\')?trim? length gt 0> AND (${q}) </#if> GROUP BY ${label} </#if>\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"linkOverviewDrilldownDimensionSslConDelay\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar galaxyRes = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nvar result = objHandle(galaxyRes);\r\n\r\nreturn result;');
INSERT INTO `magic_api_file` VALUES ('/api/interface/link/overview/drilldown/dimension/各维度下钻上周期流量数据统计.ms', '{\n \"properties\" : { },\n \"id\" : \"copy1673319993043d42432\",\n \"script\" : null,\n \"groupId\" : \"ce1f73aa3ed54951ace90e439c52afb0\",\n \"name\" : \"各维度下钻上周期流量数据统计\",\n \"createTime\" : null,\n \"updateTime\" : 1692170145524,\n \"lock\" : null,\n \"createBy\" : null,\n \"updateBy\" : \"ljy\",\n \"path\" : \"/cycleAnalysis\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1673485693\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1673489293\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"params\",\n \"value\" : \"\'116.178.236.216\',\'2408:877a:2000:3:4000:0:b00:100\',\'116.178.79.27\'\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"q\",\n \"value\" : \"out_link_id = 2048 or in_link_id = 2049\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"type\",\n \"value\" : \"ip\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"code\\\": 999,\\n \\\"time\\\": \\\"2023-08-16 07:15:23\\\",\\n \\\"message\\\": \\\"404 null at Row:10~10,Col:32~36\\\\n\\\\nvar galaxyResult = httpRequest.get().getBody();\\\\r\\\\n ^^^^^ \\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"code\",\n \"value\" : \"999\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"time\",\n \"value\" : \"2023-08-16 07:15:23\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"404 null at Row:10~10,Col:32~36\\\\n\\\\nvar galaxyResult = httpRequest.get().getBody();\\\\r\\\\n ^^^^^\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandle\' as preHandle;\r\nimport \'@/public/toHump\' as toHump\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\nimport \'@/pre/typeHandle2nd\' as type2Handle;\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"params\":params,\r\n \"q\":q,\r\n \"type\":type\r\n}\r\n\r\npreHandle(parameter);\r\ntype2Handle(parameter);\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"SELECT ${dimension} AS ${label},SUM(sent_bytes + received_bytes) AS bytes,SUM(sent_pkts + received_pkts) AS packets,SUM(sessions) AS sessions FROM session_record_cn WHERE recv_time >= ${startTime}-${timeDiff} AND recv_time < ${endTime}-${timeDiff} AND ${label} IN (<#if params?default(\'\')?trim? length gt 0> ${params} </#if>) <#if q?default(\'\')?trim? length gt 0> AND (${q}) </#if> GROUP BY ${label}\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"linkOverviewDrilldownDimensionCycleAnalysis\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar result = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nif(result.success){\r\n var o={};\r\n o.resultType=\"table\";\r\n o.result=result.data;\r\n if(o.result.length > 0){\r\n for(i,j in o.result){\r\n var pojo = o.result[i];\r\n var tempObj = {};\r\n for (key,value in pojo){\r\n var tempKey = toHump(key);\r\n tempObj[tempKey] = pojo[key];\r\n if(key == \'bytes\'){\r\n tempObj[\'bitsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2).asDouble() * 8;\r\n }\r\n }\r\n o.result[i] = tempObj;\r\n }\r\n }\r\n result.code=200;\r\n result.data=o;\r\n result.msg = result.message;\r\n result.message=null;\r\n}\r\n\r\nreturn result;');
INSERT INTO `magic_api_file` VALUES ('/api/interface/link/overview/drilldown/dimension/各维度下钻流量数据统计.ms', '{\n \"properties\" : { },\n \"id\" : \"copy1673320074293d64478\",\n \"script\" : null,\n \"groupId\" : \"ce1f73aa3ed54951ace90e439c52afb0\",\n \"name\" : \"各维度下钻流量数据统计\",\n \"createTime\" : null,\n \"updateTime\" : 1695260552291,\n \"lock\" : null,\n \"createBy\" : null,\n \"updateBy\" : \"ljy\",\n \"path\" : \"/analysis\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1695256453\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1695260053\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"q\",\n \"value\" : \"out_link_id = 1792 or in_link_id = 1793\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"type\",\n \"value\" : \"countryRegion\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"limit\",\n \"value\" : \"50\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"orderBy\",\n \"value\" : \"totalBytes\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"params\",\n \"value\" : \"\'China\'\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"message\\\": \\\"Please log in to the system first\\\",\\n \\\"code\\\": 518008,\\n \\\"time\\\": 1679307515047\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"message\",\n \"value\" : \"Please log in to the system first\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"code\",\n \"value\" : \"518008\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"time\",\n \"value\" : \"1679307515047\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandleNone\' as preHandle;\r\nimport \'@/public/toHump\' as toHump\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\nimport \'@/pre/typeHandle2nd\' as type2Handle;\r\nimport \'@/public/orderHandle\' as orderHandle\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"q\":q,\r\n \"type\":type,\r\n \"limit\":limit,\r\n \"params\":params,\r\n \"orderBy\":orderBy\r\n}\r\nparameter.orderBy = orderHandle(parameter.orderBy);\r\npreHandle(parameter);\r\ntype2Handle(parameter);\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"SELECT ${label} AS ${label},SUM(bytes_total) AS total_bytes,SUM(packets_total) AS total_packets,SUM(sessions) AS sessions,SUM(inbound_bytes) AS inbound_bytes,SUM(inbound_packets) AS inbound_packets,SUM(outbound_bytes) AS outbound_bytes,SUM(outbound_packets) AS outbound_packets,SUM(internal_bytes) AS internal_bytes,SUM(internal_packets) AS internal_packets,SUM(external_bytes) AS through_bytes,SUM(external_packets) AS through_packets FROM ( SELECT ${dimension} as ${label},SUM(received_bytes + sent_bytes) AS bytes_total,SUM(received_pkts + sent_pkts) AS packets_total,SUM(sessions) AS sessions,IF(client_zone = \'internal\' AND server_zone = \'external\' , SUM(received_bytes), IF(client_zone = \'external\' AND server_zone = \'internal\', SUM(sent_bytes), 0)) AS inbound_bytes,IF(client_zone = \'internal\' AND server_zone = \'external\' , SUM(received_pkts), IF(client_zone = \'external\' AND server_zone = \'internal\', SUM(sent_pkts), 0)) AS inbound_packets,IF(client_zone = \'external\' AND server_zone = \'internal\' , SUM(received_bytes), IF(client_zone = \'internal\' AND server_zone = \'external\', SUM(sent_bytes), 0)) AS outbound_bytes,IF(client_zone = \'external\' AND server_zone = \'internal\' , SUM(received_pkts), IF(client_zone = \'internal\' AND server_zone = \'external\', SUM(sent_pkts), 0)) AS outbound_packets,IF(client_zone = \'internal\' AND server_zone = \'internal\' , SUM(received_bytes + sent_bytes),0) AS internal_bytes,IF(client_zone = \'internal\' AND server_zone = \'internal\' , SUM(received_pkts + sent_pkts), 0) AS internal_packets,IF(client_zone = \'external\' AND server_zone = \'external\' , SUM(received_bytes + sent_bytes),0) AS external_bytes,IF(client_zone = \'external\' AND server_zone = \'external\' , SUM(received_pkts + sent_pkts), 0) AS external_packets FROM session_record_cn WHERE recv_time >= ${startTime} AND recv_time < ${endTime} AND notEmpty(${label}) <#if params?default(\'\')?trim? length gt 0> AND ${label} IN (${params})</#if> <#if q?default(\'\')?trim? length gt 0> AND (${q}) </#if> GROUP BY ${label},client_zone,server_zone) GROUP BY ${label} <#if orderBy?default(\'\')?trim? length gt 0> ORDER BY ${orderBy} desc <#else> ORDER BY total_bytes desc </#if> <#if limit?default(\'\')?trim? length gt 0> LIMIT ${limit} </#if>\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"linkOverviewDrilldownDimensionAnalysis\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar result = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nif(result.success){\r\n var o={};\r\n o.resultType=\"table\";\r\n o.result=result.data;\r\n if(o.result.length > 0){\r\n for(i,j in o.result){\r\n var pojo = o.result[i];\r\n var tempObj = {};\r\n for (key,value in pojo){\r\n var tempKey = toHump(key);\r\n tempObj[tempKey] = pojo[key];\r\n if(key.indexOf(\"total_bytes\") != -1){\r\n tempObj[\'totalBitsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2).asDouble() * 8\r\n }else if(key.indexOf(\"inbound_bytes\") != -1){\r\n tempObj[\'inboundBitsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2).asDouble() * 8\r\n }else if(key.indexOf(\"outbound_bytes\") != -1){\r\n tempObj[\'outboundBitsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2).asDouble() * 8\r\n }else if(key.indexOf(\"internal_bytes\") != -1){\r\n tempObj[\'internalBitsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2).asDouble() * 8\r\n }else if(key.indexOf(\"through_bytes\") != -1){\r\n tempObj[\'throughBitsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2).asDouble() * 8\r\n }else if(key.indexOf(\"total_packets\") != -1){\r\n tempObj[\'totalPacketsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }else if(key.indexOf(\"inbound_packets\") != -1){\r\n tempObj[\'inboundPacketsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }else if(key.indexOf(\"outbound_packets\") != -1){\r\n tempObj[\'outboundPacketsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }else if(key.indexOf(\"internal_packets\") != -1){\r\n tempObj[\'internalPacketsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }else if(key.indexOf(\"through_packets\") != -1){\r\n tempObj[\'throughPacketsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }else if(key.indexOf(\"sessions\") != -1){\r\n tempObj[\'sessionsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }\r\n }\r\n o.result[i] = tempObj;\r\n }\r\n }\r\n result.code=200;\r\n result.data=o;\r\n result.msg = result.message;\r\n result.message=null;\r\n}\r\n\r\nreturn result;');
-INSERT INTO `magic_api_file` VALUES ('/api/interface/link/overview/drilldown/dimension/链路下钻TCP会话创建延迟.缺包率.重传率.ms', '{\n \"properties\" : { },\n \"id\" : \"copy1673319834033d69681\",\n \"script\" : null,\n \"groupId\" : \"ce1f73aa3ed54951ace90e439c52afb0\",\n \"name\" : \"链路下钻TCP会话创建延迟.缺包率.重传率\",\n \"createTime\" : null,\n \"updateTime\" : 1692170108713,\n \"lock\" : null,\n \"createBy\" : null,\n \"updateBy\" : \"ljy\",\n \"path\" : \"/networkAnalysis\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1673485693\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1673489293\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"params\",\n \"value\" : \"\'116.178.236.216\',\'2408:877a:2000:3:4000:0:b00:100\',\'116.178.79.27\'\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"q\",\n \"value\" : \"out_link_id \",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"type\",\n \"value\" : \"ip\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"cycle\",\n \"value\" : null,\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"status\\\": 200,\\n \\\"code\\\": 200,\\n \\\"queryKey\\\": \\\"71c90389696eda99ffd57499bbd7c553\\\",\\n \\\"success\\\": true,\\n \\\"message\\\": null,\\n \\\"statistics\\\": {\\n \\\"elapsed\\\": 312,\\n \\\"rows_read\\\": 112684,\\n \\\"bytes_read\\\": 17648483,\\n \\\"result_size\\\": 323,\\n \\\"result_rows\\\": 3\\n },\\n \\\"job\\\": null,\\n \\\"formatType\\\": \\\"json\\\",\\n \\\"meta\\\": [{\\n \\\"name\\\": \\\"ip\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Dimension\\\"\\n }, {\\n \\\"name\\\": \\\"establish_latency_ms\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"tcp_lostlen_percent\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"pkt_retrans_percent\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }],\\n \\\"data\\\": {\\n \\\"resultType\\\": \\\"object\\\",\\n \\\"result\\\": {\\n \\\"ip\\\": \\\"116.178.79.27\\\",\\n \\\"establishLatencyMs\\\": 90,\\n \\\"tcpLostlenPercent\\\": 0.0021,\\n \\\"pktRetransPercent\\\": 0.0301\\n }\\n },\\n \\\"msg\\\": \\\"OK\\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"status\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"code\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"queryKey\",\n \"value\" : \"71c90389696eda99ffd57499bbd7c553\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"success\",\n \"value\" : \"true\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Boolean\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"statistics\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"elapsed\",\n \"value\" : \"312\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"rows_read\",\n \"value\" : \"112684\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"bytes_read\",\n \"value\" : \"17648483\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_size\",\n \"value\" : \"323\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_rows\",\n \"value\" : \"3\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"job\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"formatType\",\n \"value\" : \"json\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"meta\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"name\",\n \"value\" : \"ip\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"type\",\n \"value\" : \"string\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"category\",\n \"value\" : \"Dimension\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"data\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"resultType\",\n \"value\" : \"object\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"ip\",\n \"value\" : \"116.178.79.27\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"establishLatencyMs\",\n \"value\" : \"90\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"tcpLostlenPercent\",\n \"value\" : \"0.0021\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Double\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"pktRetransPercent\",\n \"value\" : \"0.0301\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Double\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"msg\",\n \"value\" : \"OK\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandle\' as preHandle;\r\nimport \'@/post/table\' as objHandle\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\nimport \'@/pre/typeHandle2nd\' as type2Handle;\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"params\":params,\r\n \"q\":q,\r\n \"type\":type,\r\n \"cycle\":cycle\r\n}\r\n\r\npreHandle(parameter);\r\ntype2Handle(parameter);\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"<#if cycle?default(\'\')?trim? length gt 0 && cycle == 1>SELECT ${dimension} AS ${label},ROUND(AVG(tcp_rtt_ms)) AS establish_latency_ms,ROUND(SUM(tcp_c2s_lost_bytes + tcp_s2c_lost_bytes)/SUM(sent_bytes + received_bytes + tcp_c2s_lost_bytes + tcp_s2c_lost_bytes),4) AS tcp_lostlen_percent,ROUND(SUM(tcp_c2s_rtx_pkts + tcp_s2c_rtx_pkts)/ SUM(sent_pkts + received_pkts),4) AS pkt_retrans_percent FROM session_record_cn WHERE recv_time >= ${startTime}-${timeDiff} AND recv_time < ${endTime}-${timeDiff} AND decoded_path IN (\'IPv4_TCP\', \'IPv6_TCP\') AND ${label} IN (<#if params?default(\'\')?trim? length gt 0> ${params} </#if>) <#if q?default(\'\')?trim? length gt 0> AND (${q}) </#if> GROUP BY ${label} <#else> SELECT ${dimension} AS ${label},ROUND(AVG(tcp_rtt_ms)) AS establish_latency_ms,ROUND(SUM(tcp_c2s_lost_bytes + tcp_s2c_lost_bytes)/SUM(sent_bytes + received_bytes + tcp_c2s_lost_bytes + tcp_s2c_lost_bytes),4) AS tcp_lostlen_percent,ROUND(SUM(tcp_c2s_rtx_pkts + tcp_s2c_rtx_pkts)/ SUM(sent_pkts + received_pkts),4) AS pkt_retrans_percent FROM session_record_cn WHERE recv_time >= ${startTime} AND recv_time < ${endTime} AND decoded_path IN (\'IPv4_TCP\', \'IPv6_TCP\') AND ${label} IN (<#if params?default(\'\')?trim? length gt 0> ${params} </#if>) <#if q?default(\'\')?trim? length gt 0> AND (${q}) </#if> GROUP BY ${label} </#if>\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"linkOverviewDrilldownDimensionNetworkAnalysis\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar galaxyRes = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nvar result = objHandle(galaxyRes);\r\n\r\nreturn result;');
+INSERT INTO `magic_api_file` VALUES ('/api/interface/link/overview/drilldown/dimension/链路下钻TCP会话创建延迟.缺包率.重传率.ms', '{\n \"properties\" : { },\n \"id\" : \"copy1673319834033d69681\",\n \"script\" : null,\n \"groupId\" : \"ce1f73aa3ed54951ace90e439c52afb0\",\n \"name\" : \"链路下钻TCP会话创建延迟.缺包率.重传率\",\n \"createTime\" : null,\n \"updateTime\" : 1717647375943,\n \"lock\" : null,\n \"createBy\" : null,\n \"updateBy\" : null,\n \"path\" : \"/networkAnalysis\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1673485693\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1673489293\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"params\",\n \"value\" : \"\'116.178.236.216\',\'2408:877a:2000:3:4000:0:b00:100\',\'116.178.79.27\'\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"q\",\n \"value\" : \"out_link_id \",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"type\",\n \"value\" : \"ip\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"cycle\",\n \"value\" : null,\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"status\\\": 200,\\n \\\"code\\\": 200,\\n \\\"queryKey\\\": \\\"71c90389696eda99ffd57499bbd7c553\\\",\\n \\\"success\\\": true,\\n \\\"message\\\": null,\\n \\\"statistics\\\": {\\n \\\"elapsed\\\": 312,\\n \\\"rows_read\\\": 112684,\\n \\\"bytes_read\\\": 17648483,\\n \\\"result_size\\\": 323,\\n \\\"result_rows\\\": 3\\n },\\n \\\"job\\\": null,\\n \\\"formatType\\\": \\\"json\\\",\\n \\\"meta\\\": [{\\n \\\"name\\\": \\\"ip\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Dimension\\\"\\n }, {\\n \\\"name\\\": \\\"establish_latency_ms\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"tcp_lostlen_percent\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"pkt_retrans_percent\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }],\\n \\\"data\\\": {\\n \\\"resultType\\\": \\\"object\\\",\\n \\\"result\\\": {\\n \\\"ip\\\": \\\"116.178.79.27\\\",\\n \\\"establishLatencyMs\\\": 90,\\n \\\"tcpLostlenPercent\\\": 0.0021,\\n \\\"pktRetransPercent\\\": 0.0301\\n }\\n },\\n \\\"msg\\\": \\\"OK\\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"status\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"code\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"queryKey\",\n \"value\" : \"71c90389696eda99ffd57499bbd7c553\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"success\",\n \"value\" : \"true\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Boolean\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"statistics\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"elapsed\",\n \"value\" : \"312\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"rows_read\",\n \"value\" : \"112684\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"bytes_read\",\n \"value\" : \"17648483\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_size\",\n \"value\" : \"323\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_rows\",\n \"value\" : \"3\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"job\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"formatType\",\n \"value\" : \"json\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"meta\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"name\",\n \"value\" : \"ip\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"type\",\n \"value\" : \"string\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"category\",\n \"value\" : \"Dimension\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"data\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"resultType\",\n \"value\" : \"object\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"ip\",\n \"value\" : \"116.178.79.27\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"establishLatencyMs\",\n \"value\" : \"90\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"tcpLostlenPercent\",\n \"value\" : \"0.0021\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Double\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"pktRetransPercent\",\n \"value\" : \"0.0301\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Double\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"msg\",\n \"value\" : \"OK\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandle\' as preHandle;\r\nimport \'@/post/table\' as objHandle\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\nimport \'@/pre/typeHandle2nd\' as type2Handle;\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"params\":params,\r\n \"q\":q,\r\n \"type\":type,\r\n \"cycle\":cycle\r\n}\r\n\r\npreHandle(parameter);\r\ntype2Handle(parameter);\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"<#if cycle?default(\'\')?trim? length gt 0 && cycle == 1>SELECT ${dimension} AS ${label},ROUND(AVG(tcp_rtt_ms)) AS establish_latency_ms,ROUND(SUM(tcp_c2s_lost_bytes + tcp_s2c_lost_bytes)/SUM(sent_bytes + received_bytes + tcp_c2s_lost_bytes + tcp_s2c_lost_bytes),4) AS tcp_lostlen_percent,ROUND(SUM(tcp_c2s_rtx_pkts + tcp_s2c_rtx_pkts)/ SUM(sent_pkts + received_pkts),4) AS pkt_retrans_percent FROM session_record_cn WHERE recv_time >= ${startTime}-${timeDiff} AND recv_time < ${endTime}-${timeDiff} AND ip_protocol IN (\'tcp\') AND ${label} IN (<#if params?default(\'\')?trim? length gt 0> ${params} </#if>) <#if q?default(\'\')?trim? length gt 0> AND (${q}) </#if> GROUP BY ${label} <#else> SELECT ${dimension} AS ${label},ROUND(AVG(tcp_rtt_ms)) AS establish_latency_ms,ROUND(SUM(tcp_c2s_lost_bytes + tcp_s2c_lost_bytes)/SUM(sent_bytes + received_bytes + tcp_c2s_lost_bytes + tcp_s2c_lost_bytes),4) AS tcp_lostlen_percent,ROUND(SUM(tcp_c2s_rtx_pkts + tcp_s2c_rtx_pkts)/ SUM(sent_pkts + received_pkts),4) AS pkt_retrans_percent FROM session_record_cn WHERE recv_time >= ${startTime} AND recv_time < ${endTime} AND ip_protocol IN (\'tcp\') AND ${label} IN (<#if params?default(\'\')?trim? length gt 0> ${params} </#if>) <#if q?default(\'\')?trim? length gt 0> AND (${q}) </#if> GROUP BY ${label} </#if>\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"linkOverviewDrilldownDimensionNetworkAnalysis\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar galaxyRes = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nvar result = objHandle(galaxyRes);\r\n\r\nreturn result;');
INSERT INTO `magic_api_file` VALUES ('/api/interface/link/overview/drilldown/group.json', '{\n \"properties\" : { },\n \"id\" : \"58207d3125eb446cb38846eddbd378f5\",\n \"name\" : \"drilldown\",\n \"type\" : \"api\",\n \"parentId\" : \"951d24a0f18745cd8ab7b3b54fb6d860\",\n \"path\" : \"/drilldown\",\n \"createTime\" : 1673315717468,\n \"updateTime\" : null,\n \"createBy\" : \"th\",\n \"updateBy\" : null,\n \"paths\" : [ ],\n \"options\" : [ ]\n}');
INSERT INTO `magic_api_file` VALUES ('/api/interface/link/overview/drilldown/下钻整体网络数据统计.ms', '{\n \"properties\" : { },\n \"id\" : \"copy1673320394511d44891\",\n \"script\" : null,\n \"groupId\" : \"58207d3125eb446cb38846eddbd378f5\",\n \"name\" : \"下钻整体网络数据统计\",\n \"createTime\" : null,\n \"updateTime\" : 1693376147329,\n \"lock\" : null,\n \"createBy\" : null,\n \"updateBy\" : \"ljy\",\n \"path\" : \"/networkAnalysis\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1673485693\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1673489293\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"q\",\n \"value\" : null,\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"outParam\",\n \"value\" : \"common_egress_link_id+=+2048\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"inParam\",\n \"value\" : \"common_ingress_link_id+=+2049\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ {\n \"name\" : \"cn-Authorization\",\n \"value\" : \"cntest\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"message\\\": \\\"Please log in to the system first\\\",\\n \\\"code\\\": 518008,\\n \\\"time\\\": 1693300805182\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"message\",\n \"value\" : \"Please log in to the system first\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"code\",\n \"value\" : \"518008\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"time\",\n \"value\" : \"1693300805182\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandle\' as preHandle;\r\nimport \'@/public/toHump\' as toHump\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"q\":q,\r\n \"outParam\":outParam,\r\n \"inParam\":inParam\r\n}\r\n\r\npreHandle(parameter);\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"SELECT SUM(IF( ${outParam}, traffic_outbound_byte, 0) + IF( ${inParam}, traffic_inbound_byte, 0)) as total_bytes,SUM(IF( ${outParam}, traffic_outbound_pkt, 0) + IF( ${inParam}, traffic_inbound_pkt, 0)) AS total_packets,ROUND(AVG(avg_tcp_rtt_ms), 4) AS establish_latency_ms,ROUND(AVG(avg_http_response_latency_ms), 4) AS http_response_latency,ROUND(AVG(avg_ssl_handshake_latency_ms), 4) AS ssl_con_latency,ROUND(AVG(tcp_lost_bytes_ratio), 4) AS tcp_lostlen_percent,ROUND(AVG(tcp_rtx_pkts_ratio), 4) AS pkt_retrans_percent FROM metric_link WHERE stat_time >= ${startTime} AND stat_time < ${endTime} <#if q?default(\'\')?trim? length gt 0> AND (${q}) </#if>\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"linkOverviewDrilldownNetworkAnalysis\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar result = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nif(result.success){\r\n var o={};\r\n o.resultType=\"table\";\r\n o.result=result.data;\r\n if(o.result.length > 0){\r\n for(i,j in o.result){\r\n var pojo = o.result[i];\r\n var tempObj = {};\r\n for (key,value in pojo){\r\n var tempKey = toHump(key);\r\n tempObj[tempKey] = pojo[key];\r\n if(key == \'total_bytes\'){\r\n tempObj[\'totalBitsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2).asDouble() * 8;\r\n }\r\n }\r\n o.result[i] = tempObj;\r\n }\r\n }\r\n result.code=200;\r\n result.data=o;\r\n result.msg = result.message;\r\n result.message=null;\r\n}\r\n\r\nreturn result;');
INSERT INTO `magic_api_file` VALUES ('/api/interface/link/overview/drilldown/四元组入口方向统计.ms', '{\n \"properties\" : { },\n \"id\" : \"copy1673320218232d28747\",\n \"script\" : null,\n \"groupId\" : \"58207d3125eb446cb38846eddbd378f5\",\n \"name\" : \"四元组入口方向统计\",\n \"createTime\" : null,\n \"updateTime\" : 1692169724179,\n \"lock\" : null,\n \"createBy\" : null,\n \"updateBy\" : \"ljy\",\n \"path\" : \"/quadrupleIngressAnalysis\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1673485693\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1673489293\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"q\",\n \"value\" : \"out_link_id in (1281)\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"code\\\": 999,\\n \\\"time\\\": \\\"2023-08-16 07:08:27\\\",\\n \\\"message\\\": \\\"404 null at Row:10~10,Col:32~36\\\\n\\\\nvar galaxyResult = httpRequest.get().getBody();\\\\r\\\\n ^^^^^ \\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"code\",\n \"value\" : \"999\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"time\",\n \"value\" : \"2023-08-16 07:08:27\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"404 null at Row:10~10,Col:32~36\\\\n\\\\nvar galaxyResult = httpRequest.get().getBody();\\\\r\\\\n ^^^^^\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandle\' as preHandle;\r\nimport \'@/public/toHump\' as toHump\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"q\":q\r\n}\r\n\r\npreHandle(parameter);\r\n\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"SELECT IF(client_zone = \'external\' AND server_zone = \'internal\', server_super_admin_area, IF(client_zone = \'internal\' AND server_zone = \'external\', client_super_admin_area, NULL)) AS internal_location,IF(client_zone = \'external\' AND server_zone = \'internal\', client_super_admin_area, IF(client_zone = \'internal\' AND server_zone = \'external\', server_super_admin_area, NULL)) AS external_location,in_link_direction AS in_link_direction,in_link_id AS in_link_id,SUM(traffic_inbound_byte) AS in_bytes FROM metric_link WHERE stat_time >= ${startTime} AND stat_time < ${endTime} AND notEmpty(in_link_direction) AND notEmpty(external_location) AND notEmpty(internal_location) <#if q?default(\'\')?trim? length gt 0> AND (${q}) </#if> GROUP BY external_location,in_link_direction,in_link_id,internal_location\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"linkOverviewDrilldownQuadrupleIngressAnalysis\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar result = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nif(result.success){\r\n var o={};\r\n o.resultType=\"table\";\r\n o.result=result.data;\r\n if(o.result.length > 0){\r\n for(i,j in o.result){\r\n var pojo = o.result[i];\r\n var tempObj = {};\r\n for (key,value in pojo){\r\n var tempKey = toHump(key);\r\n tempObj[tempKey] = pojo[key];\r\n if(key == \'in_bytes\'){\r\n tempObj[\'inBitsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2).asDouble() * 8;\r\n }\r\n }\r\n o.result[i] = tempObj;\r\n }\r\n }\r\n result.code=200;\r\n result.data=o;\r\n result.msg = result.message;\r\n result.message=null;\r\n}\r\n\r\nreturn result;');
@@ -163,7 +163,7 @@ INSERT INTO `magic_api_file` VALUES ('/api/interface/overview/drilldown/', 'this
INSERT INTO `magic_api_file` VALUES ('/api/interface/overview/drilldown/group.json', '{\n \"properties\" : { },\n \"id\" : \"db1899711e8149dba646a989cf47a5cd\",\n \"name\" : \"drilldown\",\n \"type\" : \"api\",\n \"parentId\" : \"bc06ac0a0d374572bc3a94475f63b200\",\n \"path\" : \"/drilldown\",\n \"createTime\" : 1673402210777,\n \"updateTime\" : null,\n \"createBy\" : \"th\",\n \"updateBy\" : null,\n \"paths\" : [ ],\n \"options\" : [ ]\n}');
INSERT INTO `magic_api_file` VALUES ('/api/interface/overview/drilldown/HTTP响应延迟.ms', '{\n \"properties\" : { },\n \"id\" : \"copy1673402494718d13522\",\n \"script\" : null,\n \"groupId\" : \"db1899711e8149dba646a989cf47a5cd\",\n \"name\" : \"HTTP响应延迟\",\n \"createTime\" : null,\n \"updateTime\" : 1696845645797,\n \"lock\" : null,\n \"createBy\" : null,\n \"updateBy\" : \"admin\",\n \"path\" : \"/dimensionHttpResponseDelay\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1673485693\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1673489293\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"type\",\n \"value\" : \"ip\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"params\",\n \"value\" : \"\'116.178.236.216\',\'116.178.78.204\',\'116.178.78.195\'\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"q\",\n \"value\" : null,\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"code\\\": 999,\\n \\\"time\\\": \\\"2023-01-12 09:02:06\\\",\\n \\\"message\\\": \\\"找不到函数:/public/typeHandle7th at Row:7~7,Col:1~48\\\\n\\\\nimport \'@/public/typeHandle7th\' as typeHandle7th\\\\r\\\\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ \\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"code\",\n \"value\" : \"999\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"time\",\n \"value\" : \"2023-01-12 09:02:06\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"找不到函数:/public/typeHandle7th at Row:7~7,Col:1~48\\\\n\\\\nimport \'@/public/typeHandle7th\' as typeHandle7th\\\\r\\\\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandle\' as preHandle;\r\nimport \'@/post/table\' as objHandle\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\nimport \'@/pre/typeHandle7th\' as typeHandle7th\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"type\":type,\r\n \"params\":params,\r\n \"q\":q\r\n}\r\n\r\npreHandle(parameter);\r\ntypeHandle7th(parameter);\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"SELECT ${fieldName} as ${lad},ROUND(AVG(http_response_latency_ms)) AS http_response_latency FROM session_record_cn WHERE recv_time >= ${startTime} AND recv_time < ${endTime} AND l7_protocol = \'HTTP\' AND http_response_latency_ms !=0 AND ${lad} IN (<#if params?default(\'\')?trim? length gt 0> ${params} </#if>) <#if q?default(\'\')?trim? length gt 0> AND (${q}) </#if> GROUP BY ${lad}\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"overviewDrilldownDimensionHttpResponseDelay\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar galaxyRes = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nvar result = objHandle(galaxyRes);\r\n\r\nreturn result;');
INSERT INTO `magic_api_file` VALUES ('/api/interface/overview/drilldown/SSL握手延迟.ms', '{\n \"properties\" : { },\n \"id\" : \"1c91e4b58a6a4e2bb6671f3c6df45ebc\",\n \"script\" : null,\n \"groupId\" : \"db1899711e8149dba646a989cf47a5cd\",\n \"name\" : \"SSL握手延迟\",\n \"createTime\" : null,\n \"updateTime\" : 1696845698063,\n \"lock\" : null,\n \"createBy\" : null,\n \"updateBy\" : \"admin\",\n \"path\" : \"/dimensionSslConDelay\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1673485693\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1673489293\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"type\",\n \"value\" : \"ip\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"params\",\n \"value\" : \"\'116.178.236.216\',\'116.178.78.204\',\'116.178.78.195\'\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"q\",\n \"value\" : null,\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"status\\\": 200,\\n \\\"code\\\": 200,\\n \\\"queryKey\\\": \\\"936a70b3f877d6dbf841b6eddd842386\\\",\\n \\\"success\\\": true,\\n \\\"message\\\": null,\\n \\\"statistics\\\": {\\n \\\"elapsed\\\": 18,\\n \\\"rows_read\\\": 112684,\\n \\\"bytes_read\\\": 8463128,\\n \\\"result_size\\\": 121,\\n \\\"result_rows\\\": 3\\n },\\n \\\"job\\\": null,\\n \\\"formatType\\\": \\\"json\\\",\\n \\\"meta\\\": [{\\n \\\"name\\\": \\\"ip\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Dimension\\\"\\n }, {\\n \\\"name\\\": \\\"ssl_con_latency\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }],\\n \\\"data\\\": {\\n \\\"resultType\\\": \\\"object\\\",\\n \\\"result\\\": {\\n \\\"ip\\\": \\\"116.178.78.204\\\",\\n \\\"sslConLatency\\\": 0\\n }\\n },\\n \\\"msg\\\": \\\"OK\\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"status\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"code\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"queryKey\",\n \"value\" : \"936a70b3f877d6dbf841b6eddd842386\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"success\",\n \"value\" : \"true\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Boolean\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"statistics\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"elapsed\",\n \"value\" : \"18\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"rows_read\",\n \"value\" : \"112684\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"bytes_read\",\n \"value\" : \"8463128\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_size\",\n \"value\" : \"121\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_rows\",\n \"value\" : \"3\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"job\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"formatType\",\n \"value\" : \"json\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"meta\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"name\",\n \"value\" : \"ip\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"type\",\n \"value\" : \"string\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"category\",\n \"value\" : \"Dimension\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"data\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"resultType\",\n \"value\" : \"object\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"ip\",\n \"value\" : \"116.178.78.204\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"sslConLatency\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"msg\",\n \"value\" : \"OK\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandle\' as preHandle;\r\nimport \'@/post/table\' as objHandle\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\nimport \'@/pre/typeHandle7th\' as typeHandle7th\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"type\":type,\r\n \"params\":params,\r\n \"q\":q\r\n}\r\n\r\npreHandle(parameter);\r\ntypeHandle7th(parameter);\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"SELECT ${fieldName} as ${lad},ROUND(AVG(ssl_handshake_latency_ms)) AS ssl_con_latency FROM session_record_cn WHERE recv_time >= ${startTime} AND recv_time < ${endTime} AND l7_protocol = \'SSL\' AND ssl_handshake_latency_ms != 0 AND ${lad} IN (<#if params?default(\'\')?trim? length gt 0> ${params} </#if>) <#if q?default(\'\')?trim? length gt 0> AND (${q}) </#if> GROUP BY ${lad}\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"overviewDrilldownDimensionSslConDelay\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar galaxyRes = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nvar result = objHandle(galaxyRes);\r\n\r\nreturn result;');
-INSERT INTO `magic_api_file` VALUES ('/api/interface/overview/drilldown/TCP会话创建延迟.缺包率.重传率.ms', '{\n \"properties\" : { },\n \"id\" : \"copy1673402622337d38756\",\n \"script\" : null,\n \"groupId\" : \"db1899711e8149dba646a989cf47a5cd\",\n \"name\" : \"TCP会话创建延迟.缺包率.重传率\",\n \"createTime\" : null,\n \"updateTime\" : 1673514222578,\n \"lock\" : null,\n \"createBy\" : null,\n \"updateBy\" : \"ljy\",\n \"path\" : \"/dimensionTcpPktRetranPercent\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1673485693\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1673489293\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"type\",\n \"value\" : \"ip\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"params\",\n \"value\" : \"\'116.178.236.216\',\'116.178.78.204\',\'116.178.78.195\'\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"q\",\n \"value\" : null,\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"code\\\": 999,\\n \\\"time\\\": \\\"2023-01-12 09:03:38\\\",\\n \\\"message\\\": \\\"找不到函数:/public/typeHandle7th at Row:7~7,Col:1~48\\\\n\\\\nimport \'@/public/typeHandle7th\' as typeHandle7th\\\\r\\\\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ \\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"code\",\n \"value\" : \"999\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"time\",\n \"value\" : \"2023-01-12 09:03:38\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"找不到函数:/public/typeHandle7th at Row:7~7,Col:1~48\\\\n\\\\nimport \'@/public/typeHandle7th\' as typeHandle7th\\\\r\\\\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandle\' as preHandle;\r\nimport \'@/post/table\' as objHandle\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\nimport \'@/pre/typeHandle7th\' as typeHandle7th\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"type\":type,\r\n \"params\":params,\r\n \"q\":q\r\n}\r\n\r\npreHandle(parameter);\r\ntypeHandle7th(parameter);\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"SELECT ${fieldName} as ${lad},ROUND(AVG(tcp_rtt_ms)) AS establish_latency_ms,ROUND(SUM(tcp_c2s_lost_bytes + tcp_s2c_lost_bytes)/SUM(sent_bytes + received_bytes + tcp_c2s_lost_bytes + tcp_s2c_lost_bytes),4) AS tcp_lostlen_percent,ROUND(SUM(tcp_c2s_rtx_pkts + tcp_s2c_rtx_pkts)/ SUM(sent_pkts + received_pkts),4) AS pkt_retrans_percent FROM session_record_cn WHERE recv_time >= ${startTime} AND recv_time < ${endTime} AND decoded_path IN (\'IPv4_TCP\', \'IPv6_TCP\') AND ${lad} IN (<#if params?default(\'\')?trim? length gt 0> ${params} </#if>) <#if q?default(\'\')?trim? length gt 0> AND (${q}) </#if> GROUP BY ${lad}\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"overviewDrilldownDimensionTcpPktRetranPercent\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar galaxyRes = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nvar result = objHandle(galaxyRes);\r\n\r\nreturn result;');
+INSERT INTO `magic_api_file` VALUES ('/api/interface/overview/drilldown/TCP会话创建延迟.缺包率.重传率.ms', '{\n \"properties\" : { },\n \"id\" : \"copy1673402622337d38756\",\n \"script\" : null,\n \"groupId\" : \"db1899711e8149dba646a989cf47a5cd\",\n \"name\" : \"TCP会话创建延迟.缺包率.重传率\",\n \"createTime\" : null,\n \"updateTime\" : 1717646750681,\n \"lock\" : null,\n \"createBy\" : null,\n \"updateBy\" : null,\n \"path\" : \"/dimensionTcpPktRetranPercent\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1673485693\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1673489293\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"type\",\n \"value\" : \"ip\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"params\",\n \"value\" : \"\'116.178.236.216\',\'116.178.78.204\',\'116.178.78.195\'\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"q\",\n \"value\" : null,\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"code\\\": 999,\\n \\\"time\\\": \\\"2023-01-12 09:03:38\\\",\\n \\\"message\\\": \\\"找不到函数:/public/typeHandle7th at Row:7~7,Col:1~48\\\\n\\\\nimport \'@/public/typeHandle7th\' as typeHandle7th\\\\r\\\\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ \\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"code\",\n \"value\" : \"999\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"time\",\n \"value\" : \"2023-01-12 09:03:38\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"找不到函数:/public/typeHandle7th at Row:7~7,Col:1~48\\\\n\\\\nimport \'@/public/typeHandle7th\' as typeHandle7th\\\\r\\\\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandle\' as preHandle;\r\nimport \'@/post/table\' as objHandle\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\nimport \'@/pre/typeHandle7th\' as typeHandle7th\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"type\":type,\r\n \"params\":params,\r\n \"q\":q\r\n}\r\n\r\npreHandle(parameter);\r\ntypeHandle7th(parameter);\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"SELECT ${fieldName} as ${lad},ROUND(AVG(tcp_rtt_ms)) AS establish_latency_ms,ROUND(SUM(tcp_c2s_lost_bytes + tcp_s2c_lost_bytes)/SUM(sent_bytes + received_bytes + tcp_c2s_lost_bytes + tcp_s2c_lost_bytes),4) AS tcp_lostlen_percent,ROUND(SUM(tcp_c2s_rtx_pkts + tcp_s2c_rtx_pkts)/ SUM(sent_pkts + received_pkts),4) AS pkt_retrans_percent FROM session_record_cn WHERE recv_time >= ${startTime} AND recv_time < ${endTime} AND ip_protocol IN (\'tcp\') AND ${lad} IN (<#if params?default(\'\')?trim? length gt 0> ${params} </#if>) <#if q?default(\'\')?trim? length gt 0> AND (${q}) </#if> GROUP BY ${lad}\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"overviewDrilldownDimensionTcpPktRetranPercent\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar galaxyRes = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nvar result = objHandle(galaxyRes);\r\n\r\nreturn result;');
INSERT INTO `magic_api_file` VALUES ('/api/interface/overview/drilldown/上周期流量.包数.会话统计.ms', '{\n \"properties\" : { },\n \"id\" : \"copy1673402712675d99162\",\n \"script\" : null,\n \"groupId\" : \"db1899711e8149dba646a989cf47a5cd\",\n \"name\" : \"上周期流量.包数.会话统计\",\n \"createTime\" : null,\n \"updateTime\" : 1673941757440,\n \"lock\" : null,\n \"createBy\" : null,\n \"updateBy\" : \"ljy\",\n \"path\" : \"/dimensionCycleTrafficAnalysis\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1673485693\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1673489293\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"type\",\n \"value\" : \"ip\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"params\",\n \"value\" : \"\'116.178.236.216\',\'116.178.78.204\',\'116.178.78.195\'\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"q\",\n \"value\" : null,\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"status\\\": 200,\\n \\\"code\\\": 200,\\n \\\"queryKey\\\": \\\"650cdcb06a37b6007562d82840ec2d18\\\",\\n \\\"success\\\": true,\\n \\\"message\\\": null,\\n \\\"statistics\\\": {\\n \\\"elapsed\\\": 18,\\n \\\"rows_read\\\": 112264,\\n \\\"bytes_read\\\": 10513780,\\n \\\"result_size\\\": 212,\\n \\\"result_rows\\\": 3\\n },\\n \\\"job\\\": null,\\n \\\"formatType\\\": \\\"json\\\",\\n \\\"meta\\\": [{\\n \\\"name\\\": \\\"ip\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Dimension\\\"\\n }, {\\n \\\"name\\\": \\\"bytes\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"packets\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"sessions\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }],\\n \\\"data\\\": {\\n \\\"resultType\\\": \\\"table\\\",\\n \\\"result\\\": [{\\n \\\"ip\\\": \\\"116.178.78.204\\\",\\n \\\"bytes\\\": \\\"1488663744\\\",\\n \\\"packets\\\": \\\"1277792\\\",\\n \\\"sessions\\\": \\\"607\\\",\\n \\\"sessionsRate\\\": \\\"0.17\\\"\\n }, {\\n \\\"ip\\\": \\\"116.178.236.216\\\",\\n \\\"bytes\\\": \\\"5773040598\\\",\\n \\\"packets\\\": \\\"5047271\\\",\\n \\\"sessions\\\": \\\"1915\\\",\\n \\\"sessionsRate\\\": \\\"0.53\\\"\\n }, {\\n \\\"ip\\\": \\\"116.178.78.195\\\",\\n \\\"bytes\\\": \\\"1570153550\\\",\\n \\\"packets\\\": \\\"1360506\\\",\\n \\\"sessions\\\": \\\"584\\\",\\n \\\"sessionsRate\\\": \\\"0.16\\\"\\n }]\\n },\\n \\\"msg\\\": \\\"OK\\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"status\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"code\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"queryKey\",\n \"value\" : \"650cdcb06a37b6007562d82840ec2d18\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"success\",\n \"value\" : \"true\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Boolean\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"statistics\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"elapsed\",\n \"value\" : \"18\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"rows_read\",\n \"value\" : \"112264\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"bytes_read\",\n \"value\" : \"10513780\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_size\",\n \"value\" : \"212\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_rows\",\n \"value\" : \"3\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"job\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"formatType\",\n \"value\" : \"json\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"meta\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"name\",\n \"value\" : \"ip\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"type\",\n \"value\" : \"string\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"category\",\n \"value\" : \"Dimension\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"data\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"resultType\",\n \"value\" : \"table\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"ip\",\n \"value\" : \"116.178.78.204\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"bytes\",\n \"value\" : \"1488663744\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"packets\",\n \"value\" : \"1277792\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"sessions\",\n \"value\" : \"607\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"sessionsRate\",\n \"value\" : \"0.17\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n } ]\n }, {\n \"name\" : \"msg\",\n \"value\" : \"OK\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandle\' as preHandle;\r\nimport \'@/public/toHump\' as toHump\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\nimport \'@/pre/typeHandle7th\' as typeHandle7th\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"type\":type,\r\n \"params\":params,\r\n \"q\":q\r\n}\r\n\r\npreHandle(parameter);\r\ntypeHandle7th(parameter);\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"SELECT ${fieldName} as ${lad},SUM(sent_bytes + received_bytes) AS bytes,SUM(sent_pkts + received_pkts) AS packets,SUM(sessions) AS sessions FROM session_record_cn WHERE recv_time >= ${startTime} - ${timeDiff} AND recv_time < ${endTime} - ${timeDiff} AND ${lad} IN (<#if params?default(\'\')?trim? length gt 0> ${params} </#if>) <#if q?default(\'\')?trim? length gt 0> AND (${q}) </#if> GROUP BY ${lad}\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"overviewDrilldownDimensionCycleTrafficAnalysis\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar result = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nif(result.success){\r\n var o={};\r\n o.resultType=\"table\";\r\n o.result=result.data;\r\n if(o.result.length > 0){\r\n for(i,j in o.result){\r\n var pojo = o.result[i];\r\n var tempObj = {};\r\n for (key,value in pojo){ \r\n var tempKey = toHump(key);\r\n tempObj[tempKey] = pojo[key];\r\n if(key.indexOf(\"bytes\") != -1){\r\n tempObj[\'bitsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2).asDouble() * 8\r\n }else if(key.indexOf(\"packets\") != -1){\r\n tempObj[\'packetsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }else if(key.indexOf(\"sessions\") != -1){\r\n tempObj[\'sessionsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }\r\n }\r\n o.result[i] = tempObj;\r\n }\r\n }\r\n result.code=200;\r\n result.data=o;\r\n result.msg = result.message;\r\n result.message=null;\r\n}\r\n\r\nreturn result;');
INSERT INTO `magic_api_file` VALUES ('/api/interface/overview/drilldown/各维度下钻列表.ms', '{\n \"properties\" : { },\n \"id\" : \"copy1673403901000d19329\",\n \"script\" : null,\n \"groupId\" : \"db1899711e8149dba646a989cf47a5cd\",\n \"name\" : \"各维度下钻列表\",\n \"createTime\" : null,\n \"updateTime\" : 1692867097715,\n \"lock\" : null,\n \"createBy\" : null,\n \"updateBy\" : \"ljy\",\n \"path\" : \"/list\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1673485693\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1673489293\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"type\",\n \"value\" : \"ip\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"limit\",\n \"value\" : null,\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"name\",\n \"value\" : null,\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"code\\\": 999,\\n \\\"time\\\": \\\"2023-08-24 08:51:29\\\",\\n \\\"message\\\": \\\"404 null at Row:10~10,Col:32~36\\\\n\\\\nvar galaxyResult = httpRequest.get().getBody();\\\\r\\\\n ^^^^^ \\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"code\",\n \"value\" : \"999\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"time\",\n \"value\" : \"2023-08-24 08:51:29\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"404 null at Row:10~10,Col:32~36\\\\n\\\\nvar galaxyResult = httpRequest.get().getBody();\\\\r\\\\n ^^^^^\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandle\' as preHandle;\r\nimport \'@/post/object\' as objHandle\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\nimport \'@/pre/typeHandle6th\' as typeHandle6th\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"type\":type,\r\n \"limit\":limit,\r\n \"name\":name\r\n}\r\n\r\npreHandle(parameter);\r\ntypeHandle6th(parameter);\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"SELECT ${fieldName} AS ${lad} FROM ${tableName} WHERE stat_time >= ${startTime} AND stat_time < ${endTime} AND notEmpty(${lad}) <#if name?default(\'\')?trim? length gt 0> AND ${lad} like \'%${name}%\'</#if><#if filter?default(\'\')?trim? length gt 0> ${filter} </#if> GROUP BY ${lad} ORDER BY SUM(received_bytes + sent_bytes) DESC <#if limit?default(\'\')?trim? length gt 0> LIMIT ${limit} </#if>\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"overviewDrilldownList\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar result = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nif(result.success){\r\n var o={};\r\n o.resultType=\"array\";\r\n o.result=result.data;\r\n if(o.result.length > 0){\r\n for(i,j in o.result){\r\n var pojo = o.result[i];\r\n var val = \'\';\r\n for (key,value in pojo){ \r\n val = pojo[key];\r\n }\r\n o.result[i] = val;\r\n }\r\n }\r\n result.code=200;\r\n result.data=o;\r\n result.msg = result.message;\r\n result.message=null;\r\n}\r\n\r\nreturn result;');
INSERT INTO `magic_api_file` VALUES ('/api/interface/overview/drilldown/流量统计.ms', '{\n \"properties\" : { },\n \"id\" : \"copy1673402788170d31791\",\n \"script\" : null,\n \"groupId\" : \"db1899711e8149dba646a989cf47a5cd\",\n \"name\" : \"流量统计\",\n \"createTime\" : null,\n \"updateTime\" : 1692697614120,\n \"lock\" : null,\n \"createBy\" : null,\n \"updateBy\" : \"ljy\",\n \"path\" : \"/dimensionTrafficAnalysis\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1673485693\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1673489293\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"type\",\n \"value\" : \"country\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"orderBy\",\n \"value\" : null,\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"q\",\n \"value\" : null,\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"limit\",\n \"value\" : \"10\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"params\",\n \"value\" : null,\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"status\\\": 200,\\n \\\"code\\\": 200,\\n \\\"queryKey\\\": \\\"140b0be6b148ab870c10a4708c280d02\\\",\\n \\\"success\\\": true,\\n \\\"message\\\": null,\\n \\\"statistics\\\": {\\n \\\"elapsed\\\": 0,\\n \\\"rows_read\\\": 0,\\n \\\"bytes_read\\\": 0,\\n \\\"result_size\\\": 0,\\n \\\"result_rows\\\": 0\\n },\\n \\\"job\\\": null,\\n \\\"formatType\\\": \\\"json\\\",\\n \\\"meta\\\": [{\\n \\\"name\\\": \\\"country_region\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Dimension\\\"\\n }, {\\n \\\"name\\\": \\\"total_bytes\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"total_packets\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"sessions\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"inbound_bytes\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"inbound_packets\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"outbound_bytes\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"outbound_packets\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"internal_bytes\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"internal_packets\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"through_bytes\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }, {\\n \\\"name\\\": \\\"through_packets\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }],\\n \\\"data\\\": {\\n \\\"resultType\\\": \\\"table\\\",\\n \\\"result\\\": []\\n },\\n \\\"originalUrl\\\": \\\"http://192.168.44.55:9999/?query=SELECT country_region AS country_region,SUM(bytes_total) AS total_bytes,SUM(packets_total) AS total_packets,SUM(sessions) AS sessions,SUM(inbound_bytes) AS inbound_bytes,SUM(inbound_packets) AS inbound_packets,SUM(outbound_bytes) AS outbound_bytes,SUM(outbound_packets) AS outbound_packets,SUM(internal_bytes) AS internal_bytes,SUM(internal_packets) AS internal_packets,SUM(external_bytes) AS through_bytes,SUM(external_packets) AS through_packets FROM ( SELECT arrayJoin(splitByChar(\'_\',concat(client_country_region,\'_\',server_country_region))) as country_region,SUM(received_bytes + sent_bytes) AS bytes_total,SUM(received_pkts + sent_pkts) AS packets_total,SUM(sessions) AS sessions,IF(client_zone = \'internal\' AND server_zone = \'external\' , SUM(received_bytes), IF(client_zone = \'external\' AND server_zone = \'internal\', SUM(sent_bytes), 0)) AS inbound_bytes,IF(client_zone = \'internal\' AND server_zone = \'external\' , SUM(received_pkts), IF(client_zone = \'external\' AND server_zone = \'internal\', SUM(sent_pkts), 0)) AS inbound_packets,IF(client_zone = \'external\' AND server_zone = \'internal\' , SUM(received_bytes), IF(client_zone = \'internal\' AND server_zone = \'external\', SUM(sent_bytes), 0)) AS outbound_bytes,IF(client_zone = \'external\' AND server_zone = \'internal\' , SUM(received_pkts), IF(client_zone = \'internal\' AND server_zone = \'external\', SUM(sent_pkts), 0)) AS outbound_packets,IF(client_zone = \'internal\' AND server_zone = \'internal\' , SUM(received_bytes + sent_bytes),0) AS internal_bytes,IF(client_zone = \'internal\' AND server_zone = \'internal\' , SUM(received_pkts + sent_pkts), 0) AS internal_packets,IF(client_zone = \'external\' AND server_zone = \'external\' , SUM(received_bytes + sent_bytes),0) AS external_bytes,IF(client_zone = \'external\' AND server_zone = \'external\' , SUM(received_pkts + sent_pkts), 0) AS external_packets FROM session_record_cn WHERE recv_time >= 1673485693 AND recv_time < 1673489293 AND notEmpty(country_region) GROUP BY country_region,client_zone,server_zone) GROUP BY country_region ORDER BY total_bytes desc LIMIT 10 &format=json&option=real_time\\\",\\n \\\"msg\\\": \\\"OK\\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"status\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"code\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"queryKey\",\n \"value\" : \"140b0be6b148ab870c10a4708c280d02\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"success\",\n \"value\" : \"true\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Boolean\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"statistics\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"elapsed\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"rows_read\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"bytes_read\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_size\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result_rows\",\n \"value\" : \"0\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"job\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"formatType\",\n \"value\" : \"json\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"meta\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"name\",\n \"value\" : \"country_region\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"type\",\n \"value\" : \"string\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"category\",\n \"value\" : \"Dimension\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n } ]\n }, {\n \"name\" : \"data\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"resultType\",\n \"value\" : \"table\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"result\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Array\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"originalUrl\",\n \"value\" : \"http://192.168.44.55:9999/?query=SELECT country_region AS country_region,SUM(bytes_total) AS total_bytes,SUM(packets_total) AS total_packets,SUM(sessions) AS sessions,SUM(inbound_bytes) AS inbound_bytes,SUM(inbound_packets) AS inbound_packets,SUM(outbound_bytes) AS outbound_bytes,SUM(outbound_packets) AS outbound_packets,SUM(internal_bytes) AS internal_bytes,SUM(internal_packets) AS internal_packets,SUM(external_bytes) AS through_bytes,SUM(external_packets) AS through_packets FROM ( SELECT arrayJoin(splitByChar(\'_\',concat(client_country_region,\'_\',server_country_region))) as country_region,SUM(received_bytes + sent_bytes) AS bytes_total,SUM(received_pkts + sent_pkts) AS packets_total,SUM(sessions) AS sessions,IF(client_zone = \'internal\' AND server_zone = \'external\' , SUM(received_bytes), IF(client_zone = \'external\' AND server_zone = \'internal\', SUM(sent_bytes), 0)) AS inbound_bytes,IF(client_zone = \'internal\' AND server_zone = \'external\' , SUM(received_pkts), IF(client_zone = \'external\' AND server_zone = \'internal\', SUM(sent_pkts), 0)) AS inbound_packets,IF(client_zone = \'external\' AND server_zone = \'internal\' , SUM(received_bytes), IF(client_zone = \'internal\' AND server_zone = \'external\', SUM(sent_bytes), 0)) AS outbound_bytes,IF(client_zone = \'external\' AND server_zone = \'internal\' , SUM(received_pkts), IF(client_zone = \'internal\' AND server_zone = \'external\', SUM(sent_pkts), 0)) AS outbound_packets,IF(client_zone = \'internal\' AND server_zone = \'internal\' , SUM(received_bytes + sent_bytes),0) AS internal_bytes,IF(client_zone = \'internal\' AND server_zone = \'internal\' , SUM(received_pkts + sent_pkts), 0) AS internal_packets,IF(client_zone = \'external\' AND server_zone = \'external\' , SUM(received_bytes + sent_bytes),0) AS external_bytes,IF(client_zone = \'external\' AND server_zone = \'external\' , SUM(received_pkts + sent_pkts), 0) AS external_packets FROM session_record_cn WHERE recv_time >= 1673485693 AND recv_time < 1673489293 AND notEmpty(country_region) GROUP BY country_region,client_zone,server_zone) GROUP BY country_region ORDER BY total_bytes desc LIMIT 10 &format=json&option=real_time\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"msg\",\n \"value\" : \"OK\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandleNone\' as preHandle;\r\nimport \'@/public/toHump\' as toHump\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\nimport \'@/pre/typeHandle7th\' as typeHandle7th\r\nimport \'@/public/orderHandle\' as orderHandle\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"type\":type,\r\n \"params\":params,\r\n \"orderBy\":orderBy,\r\n \"limit\":limit,\r\n \"q\":q\r\n}\r\nparameter.orderBy = orderHandle(parameter.orderBy);\r\npreHandle(parameter);\r\ntypeHandle7th(parameter);\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"SELECT ${lad} AS ${lad},SUM(bytes_total) AS total_bytes,SUM(packets_total) AS total_packets,SUM(sessions) AS sessions,SUM(inbound_bytes) AS inbound_bytes,SUM(inbound_packets) AS inbound_packets,SUM(outbound_bytes) AS outbound_bytes,SUM(outbound_packets) AS outbound_packets,SUM(internal_bytes) AS internal_bytes,SUM(internal_packets) AS internal_packets,SUM(external_bytes) AS through_bytes,SUM(external_packets) AS through_packets FROM ( SELECT ${fieldName} as ${lad},SUM(received_bytes + sent_bytes) AS bytes_total,SUM(received_pkts + sent_pkts) AS packets_total,SUM(sessions) AS sessions,IF(client_zone = \'internal\' AND server_zone = \'external\' , SUM(received_bytes), IF(client_zone = \'external\' AND server_zone = \'internal\', SUM(sent_bytes), 0)) AS inbound_bytes,IF(client_zone = \'internal\' AND server_zone = \'external\' , SUM(received_pkts), IF(client_zone = \'external\' AND server_zone = \'internal\', SUM(sent_pkts), 0)) AS inbound_packets,IF(client_zone = \'external\' AND server_zone = \'internal\' , SUM(received_bytes), IF(client_zone = \'internal\' AND server_zone = \'external\', SUM(sent_bytes), 0)) AS outbound_bytes,IF(client_zone = \'external\' AND server_zone = \'internal\' , SUM(received_pkts), IF(client_zone = \'internal\' AND server_zone = \'external\', SUM(sent_pkts), 0)) AS outbound_packets,IF(client_zone = \'internal\' AND server_zone = \'internal\' , SUM(received_bytes + sent_bytes),0) AS internal_bytes,IF(client_zone = \'internal\' AND server_zone = \'internal\' , SUM(received_pkts + sent_pkts), 0) AS internal_packets,IF(client_zone = \'external\' AND server_zone = \'external\' , SUM(received_bytes + sent_bytes),0) AS external_bytes,IF(client_zone = \'external\' AND server_zone = \'external\' , SUM(received_pkts + sent_pkts), 0) AS external_packets FROM session_record_cn WHERE recv_time >= ${startTime} AND recv_time < ${endTime} AND notEmpty(${lad}) <#if params?default(\'\')?trim? length gt 0> AND ${lad} IN (${params})</#if> <#if q?default(\'\')?trim? length gt 0> AND (${q}) </#if> GROUP BY ${lad},client_zone,server_zone) GROUP BY ${lad} <#if orderBy?default(\'\')?trim? length gt 0> ORDER BY ${orderBy} desc <#else> ORDER BY total_bytes desc </#if> <#if limit?default(\'\')?trim? length gt 0> LIMIT ${limit} </#if>\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"overviewDrilldownDimensionTrafficAnalysis\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar result = postGalaxyResult(param);\r\n\r\n\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nif(result.success){\r\n var o={};\r\n o.resultType=\"table\";\r\n o.result=result.data;\r\n if(o.result.length > 0){\r\n for(i,j in o.result){\r\n var pojo = o.result[i];\r\n var tempObj = {};\r\n for (key,value in pojo){ \r\n var tempKey = toHump(key);\r\n tempObj[tempKey] = pojo[key];\r\n if(key.indexOf(\"total_bytes\") != -1){\r\n tempObj[\'totalBitsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2).asDouble() * 8\r\n }else if(key.indexOf(\"total_packets\") != -1){\r\n tempObj[\'totalPacketsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }else if(key.indexOf(\"total_sessions\") != -1){\r\n tempObj[\'totalSessionsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }else if(key.indexOf(\"inbound_bytes\") != -1){\r\n tempObj[\'inboundBitsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2).asDouble() * 8\r\n }else if(key.indexOf(\"inbound_packets\") != -1){\r\n tempObj[\'inboundPacketsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }else if(key.indexOf(\"outbound_bytes\") != -1){\r\n tempObj[\'outboundBitsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2).asDouble() * 8\r\n }else if(key.indexOf(\"outbound_packets\") != -1){\r\n tempObj[\'outboundPacketsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }else if(key.indexOf(\"internal_bytes\") != -1){\r\n tempObj[\'internalBitsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2).asDouble() * 8\r\n }else if(key.indexOf(\"internal_packets\") != -1){\r\n tempObj[\'internalPacketsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }else if(key.indexOf(\"through_bytes\") != -1){\r\n tempObj[\'throughBitsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2).asDouble() * 8\r\n }else if(key.indexOf(\"through_packets\") != -1){\r\n tempObj[\'throughPacketsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }else if(key.indexOf(\"sessions\") != -1){\r\n tempObj[\'sessionsRate\'] = (pojo[key].asDouble() / parameter.timeDiff).toFixed(2)\r\n }\r\n }\r\n o.result[i] = tempObj;\r\n }\r\n }\r\n result.code=200;\r\n result.data=o;\r\n result.msg = result.message;\r\n result.message=null;\r\n}\r\n\r\nreturn result;');
@@ -378,6 +378,9 @@ INSERT INTO `magic_api_file` VALUES ('/api/v1/entity/graph/relation/summaryCount
INSERT INTO `magic_api_file` VALUES ('/api/v1/entity/graph/relation/summaryCount/关联实体数量.ms', '{\n \"properties\" : { },\n \"id\" : \"4118fc3a9cf2424b937665260c09b952\",\n \"script\" : null,\n \"groupId\" : \"9e0d68f5227d48b4b5f490196afdfcbc\",\n \"name\" : \"关联实体数量\",\n \"createTime\" : null,\n \"updateTime\" : 1703656975879,\n \"lock\" : null,\n \"createBy\" : null,\n \"updateBy\" : \"th\",\n \"path\" : \"/{entityType}\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"resource\",\n \"value\" : \"safebrowsing.googleapis.com\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"startTime\",\n \"value\" : \"\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ {\n \"name\" : \"cn-Authorization\",\n \"value\" : \"cntest\",\n \"description\" : null,\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"paths\" : [ {\n \"name\" : \"entityType\",\n \"value\" : \"domain\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"responseBody\" : \"{\\n \\\"code\\\": 200,\\n \\\"data\\\": {\\n \\\"appCount\\\": 1,\\n \\\"domainCount\\\": null\\n },\\n \\\"time\\\": \\\"2023-08-31 03:45:31\\\",\\n \\\"message\\\": \\\"success\\\",\\n \\\"status\\\": 200\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : {\n \"name\" : \"\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"code\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"data\",\n \"value\" : \"\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Object\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ {\n \"name\" : \"appCount\",\n \"value\" : \"1\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"domainCount\",\n \"value\" : \"null\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }, {\n \"name\" : \"time\",\n \"value\" : \"2023-08-31 03:45:31\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"message\",\n \"value\" : \"success\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n }, {\n \"name\" : \"status\",\n \"value\" : \"200\",\n \"description\" : \"\",\n \"required\" : false,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : \"\",\n \"error\" : \"\",\n \"expression\" : \"\",\n \"children\" : [ ]\n } ]\n }\n}\r\n================================\r\nimport net.geedge.common.utils.R as R;\r\nimport \'@/pre/timeHandleHalf\' as timeHandle;\r\nimport \'@get:/v1/entity/detail/ip/relate/apps\' as getIpApps;\r\nimport \'@get:/v1/entity/detail/ip/relate/domains\' as getIpDomains;\r\nimport \'@get:/v1/entity/detail/app/relate/ips\' as getAppIps;\r\nimport \'@get:/v1/entity/detail/app/relate/domains\' as getAppDomains;\r\nimport \'@get:/v1/entity/detail/domain/relate/fqdns\' as getDomainFqdns;\r\nimport \'@get:/v1/entity/detail/domain/relate/ips\' as getDomainIps;\r\nimport \'@get:/v1/entity/detail/domain/relate/apps\' as getDomainsApps;\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"entityType\":entityType,\r\n \"resource\":resource,\r\n \"startTime\":startTime,\r\n \"endTime\":endTime\r\n}\r\ntimeHandle(parameter);\r\nstartTime = parameter.startTime;\r\nendTime = parameter.endTime;\r\n\r\nvar data = {};\r\nif(\"ip\".equals(parameter.entityType)) {\r\n data.appCount = getIpApps().data.total;\r\n data.domainCount = getIpDomains().data.total;\r\n} else if(\"app\".equals(parameter.entityType)) {\r\n data.ipCount = getAppIps().data.total;\r\n data.domainCount = getAppDomains().data.total;\r\n} else if(\"domain\".equals(parameter.entityType)) {\r\n data.subDomainCount = getDomainFqdns().data.total;\r\n data.ipCount = getDomainIps().data.total;\r\n data.appCount = getDomainsApps().data.total;\r\n}\r\n\r\n\r\nreturn R.ok(data).put(\"status\",200);');
INSERT INTO `magic_api_file` VALUES ('/api/v1/entity/group.json', '{\n \"properties\" : { },\n \"id\" : \"d12747533faa48698e64aec0aae936bd\",\n \"name\" : \"entity\",\n \"type\" : \"api\",\n \"parentId\" : \"67d55368d07840ca80c04d7ade154d76\",\n \"path\" : \"/entity\",\n \"createTime\" : null,\n \"updateTime\" : 1685675361731,\n \"createBy\" : null,\n \"updateBy\" : \"ljy\",\n \"paths\" : [ ],\n \"options\" : [ ]\n}');
INSERT INTO `magic_api_file` VALUES ('/api/v1/group.json', '{\n \"properties\" : { },\n \"id\" : \"67d55368d07840ca80c04d7ade154d76\",\n \"name\" : \"v1\",\n \"type\" : \"api\",\n \"parentId\" : \"0\",\n \"path\" : \"v1\",\n \"createTime\" : 1685675319858,\n \"updateTime\" : null,\n \"createBy\" : \"ljy\",\n \"updateBy\" : null,\n \"paths\" : [ ],\n \"options\" : [ ]\n}');
+INSERT INTO `magic_api_file` VALUES ('/api/v1/link/', 'this is directory');
+INSERT INTO `magic_api_file` VALUES ('/api/v1/link/group.json', '{\r\n \"properties\" : { },\r\n \"id\" : \"615f1c25c1f442ff86d3813517406c09\",\r\n \"name\" : \"link\",\r\n \"type\" : \"api\",\r\n \"parentId\" : \"67d55368d07840ca80c04d7ade154d76\",\r\n \"path\" : \"/link\",\r\n \"createTime\" : 1714441540917,\r\n \"updateTime\" : null,\r\n \"createBy\" : \"admin\",\r\n \"updateBy\" : null,\r\n \"paths\" : [ ],\r\n \"options\" : [ ]\r\n}');
+INSERT INTO `magic_api_file` VALUES ('/api/v1/link/Link丢包排行.ms', '{\r\n \"properties\" : { },\r\n \"id\" : \"b3044142252148cdb9e510b736a718c9\",\r\n \"script\" : null,\r\n \"groupId\" : \"615f1c25c1f442ff86d3813517406c09\",\r\n \"name\" : \"Link丢包排行\",\r\n \"createTime\" : null,\r\n \"updateTime\" : 1714445870069,\r\n \"lock\" : null,\r\n \"createBy\" : null,\r\n \"updateBy\" : \"admin\",\r\n \"path\" : \"/tcpLostBytesRatio/rank\",\r\n \"method\" : \"GET\",\r\n \"parameters\" : [ {\r\n \"name\" : \"direction\",\r\n \"value\" : \"in\",\r\n \"description\" : null,\r\n \"required\" : true,\r\n \"dataType\" : \"String\",\r\n \"type\" : null,\r\n \"defaultValue\" : null,\r\n \"validateType\" : null,\r\n \"error\" : null,\r\n \"expression\" : null,\r\n \"children\" : null\r\n }, {\r\n \"name\" : \"startTime\",\r\n \"value\" : \"1714332965\",\r\n \"description\" : null,\r\n \"required\" : true,\r\n \"dataType\" : \"Long\",\r\n \"type\" : null,\r\n \"defaultValue\" : null,\r\n \"validateType\" : null,\r\n \"error\" : null,\r\n \"expression\" : null,\r\n \"children\" : null\r\n }, {\r\n \"name\" : \"endTime\",\r\n \"value\" : \"1714442965\",\r\n \"description\" : null,\r\n \"required\" : true,\r\n \"dataType\" : \"Long\",\r\n \"type\" : null,\r\n \"defaultValue\" : null,\r\n \"validateType\" : null,\r\n \"error\" : null,\r\n \"expression\" : null,\r\n \"children\" : null\r\n }, {\r\n \"name\" : \"pageNo\",\r\n \"value\" : \"1\",\r\n \"description\" : null,\r\n \"required\" : false,\r\n \"dataType\" : \"Integer\",\r\n \"type\" : null,\r\n \"defaultValue\" : null,\r\n \"validateType\" : null,\r\n \"error\" : null,\r\n \"expression\" : null,\r\n \"children\" : null\r\n }, {\r\n \"name\" : \"pageSize\",\r\n \"value\" : \"20\",\r\n \"description\" : null,\r\n \"required\" : false,\r\n \"dataType\" : \"Integer\",\r\n \"type\" : null,\r\n \"defaultValue\" : null,\r\n \"validateType\" : null,\r\n \"error\" : null,\r\n \"expression\" : null,\r\n \"children\" : null\r\n } ],\r\n \"options\" : [ ],\r\n \"requestBody\" : \"\",\r\n \"headers\" : [ ],\r\n \"paths\" : [ ],\r\n \"responseBody\" : \"{\\n \\\"status\\\": 200,\\n \\\"message\\\": \\\"OK\\\",\\n \\\"request_id\\\": \\\"dba9bfa0-00c9-47b7-a423-772181254f59\\\",\\n \\\"success\\\": true,\\n \\\"code\\\": \\\"20000666\\\",\\n \\\"job\\\": null,\\n \\\"output_mode\\\": \\\"json\\\",\\n \\\"statistics\\\": {\\n \\\"elapsed\\\": 2,\\n \\\"rows_read\\\": 40542,\\n \\\"bytes_read\\\": 1013550,\\n \\\"result_bytes\\\": 0,\\n \\\"result_rows\\\": 0\\n },\\n \\\"meta\\\": null,\\n \\\"data\\\": [],\\n \\\"originalUrl\\\": \\\"SELECT in_link_id AS linkId, ROUND(AVG(tcp_lost_bytes_ratio),4) AS tcpLostBytesRatio FROM metric_link WHERE stat_time >= 1714332965 AND stat_time < 1714442965 GROUP BY linkId ORDER BY tcpLostBytesRatio DESC LIMIT 20,20\\\"\\n}\",\r\n \"description\" : null,\r\n \"requestBodyDefinition\" : null,\r\n \"responseBodyDefinition\" : null\r\n}\r\n================================\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandleNone\' as preHandle;\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult;\r\nimport \'@/pre/pageFieldsHandle\' as pageFieldsHandle;\r\n\r\n\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"direction\":direction,\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"pageNo\":pageNo,\r\n \"pageSize\":pageSize\r\n}\r\npageFieldsHandle(parameter);\r\npreHandle(parameter);\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\": \\\"SELECT <#if direction==\\\"in\\\"> in_link_id <#elseif direction==\\\"out\\\"> out_link_id <#else> CAST(arrayJoin(splitByChar(\'_\',concat(in_link_id,\'_\',out_link_id))) AS INT) </#if> AS linkId, ROUND(AVG(tcp_lost_bytes_ratio),4) AS tcpLostBytesRatio FROM metric_link WHERE stat_time >= ${startTime} AND stat_time < ${endTime} GROUP BY linkId ORDER BY tcpLostBytesRatio DESC <#if pageSize?default(\\\'\\\')?trim? length gt 0&&pageNo?default(\\\'\\\')?trim? length gt 0> LIMIT ${pageNo},${pageSize}</#if>\\\",\\\"option\\\": \\\"real_time\\\",\\\"format\\\": \\\"json\\\"}\"\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"v1LinkTcpLostBytesRatioRank\",q,parameter);\r\n\r\n/**\r\n * 调用galaxy接口获取结果信息\r\n */\r\nvar res = jsonUtil.toBean(result,HashMap.class);\r\nvar galaxyRes = postGalaxyResult(res);\r\n\r\nreturn galaxyRes;');
INSERT INTO `magic_api_file` VALUES ('/api/v1/locationIntelligence/', 'this is directory');
INSERT INTO `magic_api_file` VALUES ('/api/v1/locationIntelligence/group.json', '{\r\n \"properties\" : { },\r\n \"id\" : \"1b2392073eee441f9c7a12a815bf3eae\",\r\n \"name\" : \"locationIntelligence\",\r\n \"type\" : \"api\",\r\n \"parentId\" : \"67d55368d07840ca80c04d7ade154d76\",\r\n \"path\" : \"/locationIntelligence\",\r\n \"createTime\" : 1708672055580,\r\n \"updateTime\" : null,\r\n \"createBy\" : \"admin\",\r\n \"updateBy\" : null,\r\n \"paths\" : [ ],\r\n \"options\" : [ ]\r\n}');
INSERT INTO `magic_api_file` VALUES ('/api/v1/locationIntelligence/Location人口统计.ms', '{\r\n \"properties\" : { },\r\n \"id\" : \"1ff8fd7aac0544a49bdc219af1e9b957\",\r\n \"script\" : null,\r\n \"groupId\" : \"1b2392073eee441f9c7a12a815bf3eae\",\r\n \"name\" : \"Location人口统计\",\r\n \"createTime\" : null,\r\n \"updateTime\" : 1709695175988,\r\n \"lock\" : null,\r\n \"createBy\" : null,\r\n \"updateBy\" : \"admin\",\r\n \"path\" : \"/population/density\",\r\n \"method\" : \"GET\",\r\n \"parameters\" : [ {\r\n \"name\" : \"startTime\",\r\n \"value\" : null,\r\n \"description\" : null,\r\n \"required\" : true,\r\n \"dataType\" : \"Long\",\r\n \"type\" : null,\r\n \"defaultValue\" : null,\r\n \"validateType\" : null,\r\n \"error\" : null,\r\n \"expression\" : null,\r\n \"children\" : null\r\n }, {\r\n \"name\" : \"endTime\",\r\n \"value\" : null,\r\n \"description\" : null,\r\n \"required\" : true,\r\n \"dataType\" : \"Long\",\r\n \"type\" : null,\r\n \"defaultValue\" : null,\r\n \"validateType\" : null,\r\n \"error\" : null,\r\n \"expression\" : null,\r\n \"children\" : null\r\n }, {\r\n \"name\" : \"level\",\r\n \"value\" : null,\r\n \"description\" : null,\r\n \"required\" : true,\r\n \"dataType\" : \"Integer\",\r\n \"type\" : null,\r\n \"defaultValue\" : null,\r\n \"validateType\" : null,\r\n \"error\" : null,\r\n \"expression\" : null,\r\n \"children\" : null\r\n } ],\r\n \"options\" : [ ],\r\n \"requestBody\" : \"\",\r\n \"headers\" : [ ],\r\n \"paths\" : [ ],\r\n \"responseBody\" : null,\r\n \"description\" : null,\r\n \"requestBodyDefinition\" : null,\r\n \"responseBodyDefinition\" : null\r\n}\r\n================================\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport net.geedge.common.utils.R as R;\r\nimport \'@/pre/timeHandleNone\' as timeHandle;\r\nimport \'@/post/object\' as postHandle;\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult;\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"level\":level\r\n}\r\ntimeHandle(parameter);\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\r\\n \\\"query\\\": \\\"SELECT <#if level?default(\'\')?trim? length gt 0 && level == 2> second_location <#elseif level?default(\'\')?trim? length gt 0 && level == 3> third_location <#else> first_location </#if> AS hexId,COUNT(DISTINCT(subscriber_id)) AS number,COUNT(*) AS hitCount FROM location_subscriber WHERE stat_time >= ${startTime} AND stat_time < ${endTime} GROUP BY <#if level?default(\'\')?trim? length gt 0 && level == 2> second_location <#elseif level?default(\'\')?trim? length gt 0 && level == 3> third_location <#else> first_location </#if>\\\",\\r\\n \\\"option\\\": \\\"real_time\\\",\\r\\n \\\"format\\\": \\\"json\\\"\\r\\n}\"\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"v1LocationIntelligencePopulationDensity\",q,parameter);\r\n\r\n/**\r\n * 调用galaxy接口获取结果信息\r\n */\r\nvar res = jsonUtil.toBean(result,HashMap.class);\r\nvar galaxyRes = postGalaxyResult(res);\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\ngalaxyRes.msg=\'success\';\r\nreturn galaxyRes;');
@@ -387,9 +390,6 @@ INSERT INTO `magic_api_file` VALUES ('/api/v1/locationIntelligence/Location地�
INSERT INTO `magic_api_file` VALUES ('/api/v1/locationIntelligence/Location活跃用户总数.ms', '{\r\n \"properties\" : { },\r\n \"id\" : \"4ae2ab16e9f742ab974113664612ca81\",\r\n \"script\" : null,\r\n \"groupId\" : \"1b2392073eee441f9c7a12a815bf3eae\",\r\n \"name\" : \"Location活跃用户总数\",\r\n \"createTime\" : null,\r\n \"updateTime\" : 1709171378841,\r\n \"lock\" : null,\r\n \"createBy\" : null,\r\n \"updateBy\" : \"admin\",\r\n \"path\" : \"/active/count\",\r\n \"method\" : \"GET\",\r\n \"parameters\" : [ {\r\n \"name\" : \"startTime\",\r\n \"value\" : null,\r\n \"description\" : null,\r\n \"required\" : true,\r\n \"dataType\" : \"Long\",\r\n \"type\" : null,\r\n \"defaultValue\" : null,\r\n \"validateType\" : null,\r\n \"error\" : null,\r\n \"expression\" : null,\r\n \"children\" : null\r\n }, {\r\n \"name\" : \"endTime\",\r\n \"value\" : null,\r\n \"description\" : null,\r\n \"required\" : true,\r\n \"dataType\" : \"Long\",\r\n \"type\" : null,\r\n \"defaultValue\" : null,\r\n \"validateType\" : null,\r\n \"error\" : null,\r\n \"expression\" : null,\r\n \"children\" : null\r\n }, {\r\n \"name\" : \"cycle\",\r\n \"value\" : null,\r\n \"description\" : null,\r\n \"required\" : false,\r\n \"dataType\" : \"Integer\",\r\n \"type\" : null,\r\n \"defaultValue\" : null,\r\n \"validateType\" : null,\r\n \"error\" : null,\r\n \"expression\" : null,\r\n \"children\" : null\r\n } ],\r\n \"options\" : [ ],\r\n \"requestBody\" : \"\",\r\n \"headers\" : [ ],\r\n \"paths\" : [ ],\r\n \"responseBody\" : null,\r\n \"description\" : null,\r\n \"requestBodyDefinition\" : null,\r\n \"responseBodyDefinition\" : null\r\n}\r\n================================\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport net.geedge.common.utils.R as R;\r\nimport \'@/pre/timeHandleNone\' as timeHandle;\r\nimport \'@/post/object\' as postHandle;\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult;\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"cycle\":cycle\r\n}\r\ntimeHandle(parameter);\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\r\\n \\\"query\\\": \\\"SELECT COUNT(DISTINCT(subscriber_id)) AS total FROM location_subscriber WHERE <#if cycle?default(\'\')?trim? length gt 0 && cycle == 1> stat_time >= ${startTime} - ${timeDiff} and stat_time < ${endTime} - ${timeDiff} <#else> stat_time >= ${startTime} AND stat_time < ${endTime} </#if>\\\",\\r\\n \\\"option\\\": \\\"real_time\\\",\\r\\n \\\"format\\\": \\\"json\\\"\\r\\n}\"\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"v1LocationIntelligenceActiveCount\",q,parameter);\r\n\r\n/**\r\n * 调用galaxy接口获取结果信息\r\n */\r\nvar res = jsonUtil.toBean(result,HashMap.class);\r\nvar galaxyRes = postGalaxyResult(res);\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nif(galaxyRes.success){\r\n if(galaxyRes.data.length > 0){\r\n data = galaxyRes.data[0];\r\n }\r\n}\r\n\r\nreturn R.ok(data).put(\"originalUrl\",galaxyRes.originalUrl).put(\"status\",200);');
INSERT INTO `magic_api_file` VALUES ('/api/v1/locationIntelligence/Location活跃用户趋势.ms', '{\r\n \"properties\" : { },\r\n \"id\" : \"26d1ea0029664809a46ec2bb31ba994e\",\r\n \"script\" : null,\r\n \"groupId\" : \"1b2392073eee441f9c7a12a815bf3eae\",\r\n \"name\" : \"Location活跃用户趋势\",\r\n \"createTime\" : null,\r\n \"updateTime\" : 1709257715724,\r\n \"lock\" : null,\r\n \"createBy\" : null,\r\n \"updateBy\" : \"admin\",\r\n \"path\" : \"/active/trend\",\r\n \"method\" : \"GET\",\r\n \"parameters\" : [ {\r\n \"name\" : \"startTime\",\r\n \"value\" : null,\r\n \"description\" : null,\r\n \"required\" : true,\r\n \"dataType\" : \"Long\",\r\n \"type\" : null,\r\n \"defaultValue\" : null,\r\n \"validateType\" : null,\r\n \"error\" : null,\r\n \"expression\" : null,\r\n \"children\" : null\r\n }, {\r\n \"name\" : \"endTime\",\r\n \"value\" : null,\r\n \"description\" : null,\r\n \"required\" : true,\r\n \"dataType\" : \"Long\",\r\n \"type\" : null,\r\n \"defaultValue\" : null,\r\n \"validateType\" : null,\r\n \"error\" : null,\r\n \"expression\" : null,\r\n \"children\" : null\r\n } ],\r\n \"options\" : [ ],\r\n \"requestBody\" : \"\",\r\n \"headers\" : [ ],\r\n \"paths\" : [ ],\r\n \"responseBody\" : null,\r\n \"description\" : null,\r\n \"requestBodyDefinition\" : null,\r\n \"responseBodyDefinition\" : null\r\n}\r\n================================\r\nimport http;\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandleNone\' as preHandle;\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult\r\nimport \'@/public/toHump\' as toHump\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime\r\n}\r\n\r\npreHandle(parameter);\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\":\\\"SELECT TIME_FLOOR_WITH_FILL(stat_time,\'PT${step}S\',\'zero\') AS stat_time, COUNT(DISTINCT(subscriber_id)) AS active_subscriber_count FROM location_subscriber WHERE stat_time >= ${startTime} AND stat_time < ${endTime} GROUP BY stat_time ORDER BY stat_time ASC\\\",\\\"option\\\":\\\"real_time\\\",\\\"format\\\":\\\"json\\\"}\"\r\n\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"v1LocationIntelligenceActiveTrend\",q,parameter);\r\nvar param = jsonUtil.toBean(result,HashMap.class);\r\nvar result = postGalaxyResult(param);\r\nif(result.success){\r\n var list = result.data;\r\n var values = new ArrayList();\r\n if(list.length > 0){\r\n for(i,j in list){\r\n var pojo = list[i];\r\n var tempArray = new ArrayList();\r\n tempArray.add(pojo[\'stat_time\']);\r\n tempArray.add(pojo[\'active_subscriber_count\']);\r\n values.add(tempArray);\r\n }\r\n }\r\n var o = {};\r\n o.resultType=\"matrix\";\r\n o.result=values;\r\n result.code=200;\r\n result.data=o;\r\n result.msg = result.message;\r\n result.message=null;\r\n}\r\nreturn result;');
INSERT INTO `magic_api_file` VALUES ('/api/v1/locationIntelligence/Location用户轨迹.ms', '{\n \"properties\" : { },\n \"id\" : \"c6417fa306d143888cbdbd08a4c765f3\",\n \"script\" : null,\n \"groupId\" : \"1b2392073eee441f9c7a12a815bf3eae\",\n \"name\" : \"Location用户轨迹\",\n \"createTime\" : null,\n \"updateTime\" : 1716434172874,\n \"lock\" : null,\n \"createBy\" : \"admin\",\n \"updateBy\" : null,\n \"path\" : \"/trace/tracking\",\n \"method\" : \"GET\",\n \"parameters\" : [ {\n \"name\" : \"startTime\",\n \"value\" : \"1706319667\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"endTime\",\n \"value\" : \"1709020488\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Long\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"subscriberIds\",\n \"value\" : \"\'gary6411\'\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n }, {\n \"name\" : \"level\",\n \"value\" : null,\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"Integer\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"options\" : [ ],\n \"requestBody\" : \"\",\n \"headers\" : [ {\n \"name\" : \"cn-Authorization\",\n \"value\" : \"1a653ea0-d39b-4246-94b0-1ba95db4b6a7\",\n \"description\" : null,\n \"required\" : true,\n \"dataType\" : \"String\",\n \"type\" : null,\n \"defaultValue\" : null,\n \"validateType\" : null,\n \"error\" : null,\n \"expression\" : null,\n \"children\" : null\n } ],\n \"paths\" : [ ],\n \"responseBody\" : \"{\\n \\\"status\\\": 200,\\n \\\"message\\\": null,\\n \\\"request_id\\\": \\\"65ded22e249ce57053dc044a5bc41f50\\\",\\n \\\"success\\\": true,\\n \\\"code\\\": 200,\\n \\\"job\\\": null,\\n \\\"formatType\\\": \\\"json\\\",\\n \\\"statistics\\\": {\\n \\\"elapsed\\\": 3,\\n \\\"rows_read\\\": 8194,\\n \\\"bytes_read\\\": 1200993,\\n \\\"result_bytes\\\": 138882,\\n \\\"result_rows\\\": 589\\n },\\n \\\"meta\\\": [\\n {\\n \\\"name\\\": \\\"subscriberId\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n },\\n {\\n \\\"name\\\": \\\"imei\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n },\\n {\\n \\\"name\\\": \\\"imsi\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n },\\n {\\n \\\"name\\\": \\\"phoneNumber\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n },\\n {\\n \\\"name\\\": \\\"apn\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n },\\n {\\n \\\"name\\\": \\\"subscriberLongitude\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n },\\n {\\n \\\"name\\\": \\\"subscriberLatitude\\\",\\n \\\"type\\\": \\\"double\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n },\\n {\\n \\\"name\\\": \\\"hexId\\\",\\n \\\"type\\\": \\\"string\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n },\\n {\\n \\\"name\\\": \\\"time\\\",\\n \\\"type\\\": \\\"long\\\",\\n \\\"category\\\": \\\"Metric\\\"\\n }\\n ],\\n \\\"data\\\": {\\n \\\"resultType\\\": \\\"table\\\",\\n \\\"result\\\": [\\n {\\n \\\"subscriberId\\\": \\\"gary6411\\\",\\n \\\"trackRecords\\\": [\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null,\\n null\\n ]\\n }\\n ]\\n },\\n \\\"originalUrl\\\": \\\"SELECT subscriber_id AS subscriberId, imei AS imei, imsi AS imsi, phone_number AS phoneNumber, apn AS apn, subscriber_longitude AS subscriberLongitude, subscriber_latitude AS subscriberLatitude, first_location AS hexId,stat_time as time FROM location_subscriber WHERE stat_time >= 1706319667 AND stat_time < 1709020488 AND subscriber_id IN (\'gary6411\') ORDER BY stat_time DESC\\\",\\n \\\"msg\\\": \\\"OK\\\"\\n}\",\n \"description\" : null,\n \"requestBodyDefinition\" : null,\n \"responseBodyDefinition\" : null\n}\r\n================================\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport net.geedge.common.utils.R as R;\r\nimport cn.hutool.core.util.ObjectUtil;\r\nimport net.geedge.common.utils.GeoUtil;\r\nimport \'@/pre/timeHandleNone\' as timeHandle;\r\nimport \'@/post/object\' as postHandle;\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult;\r\nimport \'@/public/toHump\' as toHump;\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"subscriberIds\":subscriberIds,\r\n \"level\":level\r\n}\r\ntimeHandle(parameter);\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\r\\n \\\"query\\\": \\\"SELECT subscriber_id AS subscriberId, imei AS imei, imsi AS imsi, phone_number AS phoneNumber, apn AS apn, subscriber_longitude AS subscriberLongitude, subscriber_latitude AS subscriberLatitude, <#if level?default(\'\')?trim? length gt 0 && level == 2> second_location <#elseif level?default(\'\')?trim? length gt 0 && level == 3> third_location <#else> first_location </#if> AS hexId,stat_time as time FROM location_subscriber WHERE stat_time >= ${startTime} AND stat_time < ${endTime} AND subscriber_id IN (${subscriberIds}) ORDER BY stat_time DESC\\\",\\r\\n \\\"option\\\": \\\"real_time\\\",\\r\\n \\\"format\\\": \\\"json\\\"\\r\\n}\"\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"v1LocationIntelligenceTraceTracking\",q,parameter);\r\n\r\n/**\r\n * 调用galaxy接口获取结果信息\r\n */\r\nvar res = jsonUtil.toBean(result,HashMap.class);\r\nvar result = postGalaxyResult(res);\r\n/**\r\n * 处理galaxy返回的数据结果 将新结果返回前端界面\r\n */\r\nif(result.success){\r\n var o={};\r\n o.resultType=\"table\"\r\n o.result=[];\r\n if(result.data.length > 0){\r\n var idObj = {};\r\n for(i,j in result.data){\r\n var pojo = result.data[i];\r\n pojo.putAll(GeoUtil.reverseGeocode(pojo.subscriberLongitude,pojo.subscriberLatitude));\r\n var list = idObj[pojo[\'subscriberId\']];\r\n if(ObjectUtil.isNotEmpty(list)){\r\n list.add(pojo);\r\n }else{\r\n list = new ArrayList();\r\n list.add(pojo);\r\n idObj[pojo[\'subscriberId\']]=list;\r\n }\r\n }\r\n var handlerResult = new ArrayList();\r\n for(i,j in idObj){\r\n var obj = idObj[i];\r\n var hr = {};\r\n hr.subscriberId = i;\r\n hr.trackRecords = obj;\r\n handlerResult.add(hr);\r\n }\r\n o.result = handlerResult;\r\n }\r\n result.code=200;\r\n result.data=o;\r\n result.msg = result.message;\r\n result.message=null;\r\n}\r\n\r\nreturn result;');
-INSERT INTO `magic_api_file` VALUES ('/api/v1/link/', 'this is directory');
-INSERT INTO `magic_api_file` VALUES ('/api/v1/link/group.json', '{\r\n \"properties\" : { },\r\n \"id\" : \"615f1c25c1f442ff86d3813517406c09\",\r\n \"name\" : \"link\",\r\n \"type\" : \"api\",\r\n \"parentId\" : \"67d55368d07840ca80c04d7ade154d76\",\r\n \"path\" : \"/link\",\r\n \"createTime\" : 1714441540917,\r\n \"updateTime\" : null,\r\n \"createBy\" : \"admin\",\r\n \"updateBy\" : null,\r\n \"paths\" : [ ],\r\n \"options\" : [ ]\r\n}');
-INSERT INTO `magic_api_file` VALUES ('/api/v1/link/Link丢包排行.ms', '{\r\n \"properties\" : { },\r\n \"id\" : \"b3044142252148cdb9e510b736a718c9\",\r\n \"script\" : null,\r\n \"groupId\" : \"615f1c25c1f442ff86d3813517406c09\",\r\n \"name\" : \"Link丢包排行\",\r\n \"createTime\" : null,\r\n \"updateTime\" : 1714445870069,\r\n \"lock\" : null,\r\n \"createBy\" : null,\r\n \"updateBy\" : \"admin\",\r\n \"path\" : \"/tcpLostBytesRatio/rank\",\r\n \"method\" : \"GET\",\r\n \"parameters\" : [ {\r\n \"name\" : \"direction\",\r\n \"value\" : \"in\",\r\n \"description\" : null,\r\n \"required\" : true,\r\n \"dataType\" : \"String\",\r\n \"type\" : null,\r\n \"defaultValue\" : null,\r\n \"validateType\" : null,\r\n \"error\" : null,\r\n \"expression\" : null,\r\n \"children\" : null\r\n }, {\r\n \"name\" : \"startTime\",\r\n \"value\" : \"1714332965\",\r\n \"description\" : null,\r\n \"required\" : true,\r\n \"dataType\" : \"Long\",\r\n \"type\" : null,\r\n \"defaultValue\" : null,\r\n \"validateType\" : null,\r\n \"error\" : null,\r\n \"expression\" : null,\r\n \"children\" : null\r\n }, {\r\n \"name\" : \"endTime\",\r\n \"value\" : \"1714442965\",\r\n \"description\" : null,\r\n \"required\" : true,\r\n \"dataType\" : \"Long\",\r\n \"type\" : null,\r\n \"defaultValue\" : null,\r\n \"validateType\" : null,\r\n \"error\" : null,\r\n \"expression\" : null,\r\n \"children\" : null\r\n }, {\r\n \"name\" : \"pageNo\",\r\n \"value\" : \"1\",\r\n \"description\" : null,\r\n \"required\" : false,\r\n \"dataType\" : \"Integer\",\r\n \"type\" : null,\r\n \"defaultValue\" : null,\r\n \"validateType\" : null,\r\n \"error\" : null,\r\n \"expression\" : null,\r\n \"children\" : null\r\n }, {\r\n \"name\" : \"pageSize\",\r\n \"value\" : \"20\",\r\n \"description\" : null,\r\n \"required\" : false,\r\n \"dataType\" : \"Integer\",\r\n \"type\" : null,\r\n \"defaultValue\" : null,\r\n \"validateType\" : null,\r\n \"error\" : null,\r\n \"expression\" : null,\r\n \"children\" : null\r\n } ],\r\n \"options\" : [ ],\r\n \"requestBody\" : \"\",\r\n \"headers\" : [ ],\r\n \"paths\" : [ ],\r\n \"responseBody\" : \"{\\n \\\"status\\\": 200,\\n \\\"message\\\": \\\"OK\\\",\\n \\\"request_id\\\": \\\"dba9bfa0-00c9-47b7-a423-772181254f59\\\",\\n \\\"success\\\": true,\\n \\\"code\\\": \\\"20000666\\\",\\n \\\"job\\\": null,\\n \\\"output_mode\\\": \\\"json\\\",\\n \\\"statistics\\\": {\\n \\\"elapsed\\\": 2,\\n \\\"rows_read\\\": 40542,\\n \\\"bytes_read\\\": 1013550,\\n \\\"result_bytes\\\": 0,\\n \\\"result_rows\\\": 0\\n },\\n \\\"meta\\\": null,\\n \\\"data\\\": [],\\n \\\"originalUrl\\\": \\\"SELECT in_link_id AS linkId, ROUND(AVG(tcp_lost_bytes_ratio),4) AS tcpLostBytesRatio FROM metric_link WHERE stat_time >= 1714332965 AND stat_time < 1714442965 GROUP BY linkId ORDER BY tcpLostBytesRatio DESC LIMIT 20,20\\\"\\n}\",\r\n \"description\" : null,\r\n \"requestBodyDefinition\" : null,\r\n \"responseBodyDefinition\" : null\r\n}\r\n================================\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandleNone\' as preHandle;\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult;\r\nimport \'@/pre/pageFieldsHandle\' as pageFieldsHandle;\r\n\r\n\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"direction\":direction,\r\n \"startTime\":startTime,\r\n \"endTime\":endTime,\r\n \"pageNo\":pageNo,\r\n \"pageSize\":pageSize\r\n}\r\npageFieldsHandle(parameter);\r\npreHandle(parameter);\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\": \\\"SELECT <#if direction==\\\"in\\\"> in_link_id <#elseif direction==\\\"out\\\"> out_link_id <#else> CAST(arrayJoin(splitByChar(\'_\',concat(in_link_id,\'_\',out_link_id))) AS INT) </#if> AS linkId, ROUND(AVG(tcp_lost_bytes_ratio),4) AS tcpLostBytesRatio FROM metric_link WHERE stat_time >= ${startTime} AND stat_time < ${endTime} GROUP BY linkId ORDER BY tcpLostBytesRatio DESC <#if pageSize?default(\\\'\\\')?trim? length gt 0&&pageNo?default(\\\'\\\')?trim? length gt 0> LIMIT ${pageNo},${pageSize}</#if>\\\",\\\"option\\\": \\\"real_time\\\",\\\"format\\\": \\\"json\\\"}\"\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"v1LinkTcpLostBytesRatioRank\",q,parameter);\r\n\r\n/**\r\n * 调用galaxy接口获取结果信息\r\n */\r\nvar res = jsonUtil.toBean(result,HashMap.class);\r\nvar galaxyRes = postGalaxyResult(res);\r\n\r\nreturn galaxyRes;');
INSERT INTO `magic_api_file` VALUES ('/api/v1/network/', 'this is directory');
INSERT INTO `magic_api_file` VALUES ('/api/v1/network/group.json', '{\r\n \"properties\" : { },\r\n \"id\" : \"019d8c550b6145cc9af0935414c1a95c\",\r\n \"name\" : \"network\",\r\n \"type\" : \"api\",\r\n \"parentId\" : \"67d55368d07840ca80c04d7ade154d76\",\r\n \"path\" : \"/network\",\r\n \"createTime\" : 1714444658914,\r\n \"updateTime\" : null,\r\n \"createBy\" : \"admin\",\r\n \"updateBy\" : null,\r\n \"paths\" : [ ],\r\n \"options\" : [ ]\r\n}');
INSERT INTO `magic_api_file` VALUES ('/api/v1/network/网络性能统计.ms', '{\r\n \"properties\" : { },\r\n \"id\" : \"f9843a9c9ca04cd28ebede18b55b5841\",\r\n \"script\" : null,\r\n \"groupId\" : \"019d8c550b6145cc9af0935414c1a95c\",\r\n \"name\" : \"网络性能统计\",\r\n \"createTime\" : null,\r\n \"updateTime\" : 1714445550991,\r\n \"lock\" : null,\r\n \"createBy\" : null,\r\n \"updateBy\" : \"admin\",\r\n \"path\" : \"/performance/overview\",\r\n \"method\" : \"GET\",\r\n \"parameters\" : [ {\r\n \"name\" : \"startTime\",\r\n \"value\" : \"1714432965\",\r\n \"description\" : null,\r\n \"required\" : true,\r\n \"dataType\" : \"Long\",\r\n \"type\" : null,\r\n \"defaultValue\" : null,\r\n \"validateType\" : null,\r\n \"error\" : null,\r\n \"expression\" : null,\r\n \"children\" : null\r\n }, {\r\n \"name\" : \"endTime\",\r\n \"value\" : \"1714442965\",\r\n \"description\" : null,\r\n \"required\" : true,\r\n \"dataType\" : \"Long\",\r\n \"type\" : null,\r\n \"defaultValue\" : null,\r\n \"validateType\" : null,\r\n \"error\" : null,\r\n \"expression\" : null,\r\n \"children\" : null\r\n } ],\r\n \"options\" : [ ],\r\n \"requestBody\" : \"\",\r\n \"headers\" : [ ],\r\n \"paths\" : [ ],\r\n \"responseBody\" : \"{\\n \\\"status\\\": 200,\\n \\\"message\\\": \\\"OK\\\",\\n \\\"request_id\\\": \\\"b2066b24-9cca-469c-8174-74568162e60b\\\",\\n \\\"success\\\": true,\\n \\\"code\\\": \\\"20000666\\\",\\n \\\"job\\\": null,\\n \\\"output_mode\\\": \\\"json\\\",\\n \\\"statistics\\\": {\\n \\\"elapsed\\\": 1,\\n \\\"rows_read\\\": 1725,\\n \\\"bytes_read\\\": 44850,\\n \\\"result_bytes\\\": 4,\\n \\\"result_rows\\\": 1\\n },\\n \\\"meta\\\": null,\\n \\\"data\\\": {\\n \\\"tcpLostBytesRatioAvg\\\": null,\\n \\\"avgTcpRttMsAvg\\\": null,\\n \\\"avgTcpRttMsP50\\\": null,\\n \\\"avgTcpRttMsP95\\\": null,\\n \\\"avgTcpRttMsP99\\\": null\\n },\\n \\\"originalUrl\\\": \\\"SELECT ROUND(AVG(tcp_lost_bytes_ratio), 4) AS tcpLostBytesRatioAvg, ROUND(AVG(avg_tcp_rtt_ms)) AS avgTcpRttMsAvg, ROUND(QUANTILE(avg_tcp_rtt_ms,0.5)) AS avgTcpRttMsP50, ROUND(QUANTILE(avg_tcp_rtt_ms,0.95)) AS avgTcpRttMsP95, ROUND(QUANTILE(avg_tcp_rtt_ms,0.99)) AS avgTcpRttMsP99 FROM metric_link WHERE stat_time >= 1714442965 AND stat_time < 1714442965\\\"\\n}\",\r\n \"description\" : null,\r\n \"requestBodyDefinition\" : null,\r\n \"responseBodyDefinition\" : null\r\n}\r\n================================\r\nimport net.geedge.common.utils.FreeMarkerUtil as freeMarkerUtil;\r\nimport net.geedge.common.utils.JSONUtil as jsonUtil;\r\nimport \'@/pre/timeHandleNone\' as preHandle;\r\nimport \'@/public/postGalaxyResult\' as postGalaxyResult;\r\nimport \'@/pre/pageFieldsHandle\' as pageFieldsHandle;\r\n\r\n\r\n/**\r\n * 入参整理 包括调用公共函数\r\n */\r\nvar parameter={\r\n \"startTime\":startTime,\r\n \"endTime\":endTime\r\n}\r\npageFieldsHandle(parameter);\r\npreHandle(parameter);\r\n/**\r\n * 接口sql相关内容整理 通过freemarker模板生成最后执行语句\r\n */\r\nvar q = \"{\\\"query\\\": \\\"SELECT ROUND(AVG(tcp_lost_bytes_ratio), 4) AS tcpLostBytesRatioAvg, ROUND(AVG(avg_tcp_rtt_ms)) AS avgTcpRttMsAvg, ROUND(QUANTILE(avg_tcp_rtt_ms,0.5)) AS avgTcpRttMsP50, ROUND(QUANTILE(avg_tcp_rtt_ms,0.95)) AS avgTcpRttMsP95, ROUND(QUANTILE(avg_tcp_rtt_ms,0.99)) AS avgTcpRttMsP99 FROM metric_link WHERE stat_time >= ${startTime} AND stat_time < ${endTime}\\\",\\\"option\\\": \\\"real_time\\\",\\\"format\\\": \\\"json\\\"}\"\r\nvar result = freeMarkerUtil.processTemplateIntoString(\"v1NetworkPerformanceOverview\",q,parameter);\r\n\r\n/**\r\n * 调用galaxy接口获取结果信息\r\n */\r\nvar res = jsonUtil.toBean(result,HashMap.class);\r\nvar galaxyRes = postGalaxyResult(res);\r\nif(galaxyRes.success){\r\n if(galaxyRes.data.length > 0){\r\n galaxyRes.data = galaxyRes.data[0];\r\n }\r\n}\r\n\r\nreturn galaxyRes;');