From b44858bf9b9015daec11499a75e7e3a4ddecfb1f Mon Sep 17 00:00:00 2001 From: lyd <1419499670@qq.com> Date: Tue, 11 Oct 2022 15:36:35 +0800 Subject: [PATCH] =?UTF-8?q?loki=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../nl/modules/loki/rest/LokiController.java | 12 +- .../nl/modules/loki/service/LokiService.java | 19 ++-- .../loki/service/impl/LokiServiceImpl.java | 60 +++++++--- .../java/org/nl/wms/log/LokiLogAspect.java | 2 +- .../nl/wms/pda/mps/rest/OutController.java | 4 +- nladmin-ui/src/views/loki/api/loki.js | 24 ++-- nladmin-ui/src/views/loki/view/index.vue | 104 ++++++------------ 7 files changed, 102 insertions(+), 123 deletions(-) diff --git a/nladmin-system/src/main/java/org/nl/modules/loki/rest/LokiController.java b/nladmin-system/src/main/java/org/nl/modules/loki/rest/LokiController.java index 69cd1d0fc..e498cb664 100644 --- a/nladmin-system/src/main/java/org/nl/modules/loki/rest/LokiController.java +++ b/nladmin-system/src/main/java/org/nl/modules/loki/rest/LokiController.java @@ -25,16 +25,10 @@ public class LokiController { private final LokiService lokiService; - @GetMapping("/labels") + @GetMapping("/labels/values") @ApiOperation("获取标签") - public ResponseEntity labels() { - return new ResponseEntity<>(lokiService.getLabels(), HttpStatus.OK); - } - - @PostMapping("/values") - @ApiOperation("根据标签获取值") - public ResponseEntity getAllValues(@RequestBody String label) { - return new ResponseEntity<>(lokiService.getValuesByLabel(label), HttpStatus.OK); + public ResponseEntity labelsValues() { + return new ResponseEntity<>(lokiService.getLabelsValues(), HttpStatus.OK); } @PostMapping("/logs") diff --git a/nladmin-system/src/main/java/org/nl/modules/loki/service/LokiService.java b/nladmin-system/src/main/java/org/nl/modules/loki/service/LokiService.java index dedd921eb..10101c914 100644 --- a/nladmin-system/src/main/java/org/nl/modules/loki/service/LokiService.java +++ b/nladmin-system/src/main/java/org/nl/modules/loki/service/LokiService.java @@ -1,5 +1,6 @@ package org.nl.modules.loki.service; +import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; /** @@ -8,18 +9,6 @@ import com.alibaba.fastjson.JSONObject; * @Date: 2022-08-15 */ public interface LokiService { - /** - * 获取日志的所有标签 - * @return - */ - JSONObject getLabels(); - - /** - * 根据label获取值 - * @param label - * @return - */ - JSONObject getValuesByLabel(String label); /** * 获取日志信息 @@ -27,4 +16,10 @@ public interface LokiService { * @return */ JSONObject getLogData(JSONObject json); + + /** + * 获取labels和values树 + * @return + */ + JSONArray getLabelsValues(); } diff --git a/nladmin-system/src/main/java/org/nl/modules/loki/service/impl/LokiServiceImpl.java b/nladmin-system/src/main/java/org/nl/modules/loki/service/impl/LokiServiceImpl.java index 237fc6665..f6eeb49c0 100644 --- a/nladmin-system/src/main/java/org/nl/modules/loki/service/impl/LokiServiceImpl.java +++ b/nladmin-system/src/main/java/org/nl/modules/loki/service/impl/LokiServiceImpl.java @@ -2,6 +2,7 @@ package org.nl.modules.loki.service.impl; import cn.hutool.core.util.CharsetUtil; import cn.hutool.http.HttpUtil; +import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import lombok.RequiredArgsConstructor; import org.nl.modules.loki.service.LokiService; @@ -23,20 +24,6 @@ public class LokiServiceImpl implements LokiService { @Value("${loki.systemName}") private String systemName; - @Override - public JSONObject getLabels() { - String result = HttpUtil.get(lokiUrl + "/labels", CharsetUtil.CHARSET_UTF_8); - JSONObject parse = (JSONObject) JSONObject.parse(result); - return parse; - } - - @Override - public JSONObject getValuesByLabel(String label) { - String result = HttpUtil.get(lokiUrl + "/label/" + label + "/values", CharsetUtil.CHARSET_UTF_8); - JSONObject parse = (JSONObject) JSONObject.parse(result); - return parse; - } - @Override public JSONObject getLogData(JSONObject json) { String logLabel = ""; @@ -78,4 +65,49 @@ public class LokiServiceImpl implements LokiService { return parse; } + /** + * 获取labels和values树 + * + * @return + */ + @Override + public JSONArray getLabelsValues() { + /** + * [{ + * label: + * value: + * children:[{ + * label + * value + * }] + * }] + */ + JSONArray result = new JSONArray(); + // 获取所有标签 + String labelString = HttpUtil.get(lokiUrl + "/labels", CharsetUtil.CHARSET_UTF_8); + JSONObject parse = (JSONObject) JSONObject.parse(labelString); + JSONArray labels = parse.getJSONArray("data"); + for (int i=0; i confirm(@RequestBody JSONObject whereJson) { - return new ResponseEntity<>(casingService.confirm(whereJson), HttpStatus.OK); + casingService.confirm(whereJson); + return new ResponseEntity<>(HttpStatus.NO_CONTENT); + } } diff --git a/nladmin-ui/src/views/loki/api/loki.js b/nladmin-ui/src/views/loki/api/loki.js index 4adb6b525..f71149d45 100644 --- a/nladmin-ui/src/views/loki/api/loki.js +++ b/nladmin-ui/src/views/loki/api/loki.js @@ -1,20 +1,5 @@ import request from '@/utils/request' -export function getAllLabels() { - return request({ - url: 'api/loki/labels', - method: 'get' - }) -} - -export function getAllValues(label) { - return request({ - url: 'api/loki/values', - method: 'post', - data: label - }) -} - export function getLogData(param) { return request({ url: 'api/loki/logs', @@ -23,4 +8,11 @@ export function getLogData(param) { }) } -export default { getAllLabels, getAllValues, getLogData } +export function labelsValues() { + return request({ + url: 'api/loki/labels/values', + method: 'get' + }) +} + +export default { getLogData, labelsValues } diff --git a/nladmin-ui/src/views/loki/view/index.vue b/nladmin-ui/src/views/loki/view/index.vue index 3ce8a1ff2..8a7aeda2b 100644 --- a/nladmin-ui/src/views/loki/view/index.vue +++ b/nladmin-ui/src/views/loki/view/index.vue @@ -2,34 +2,23 @@
- - - - - + + + - - - - + + - - - backward - forward - - - + - + - - - - + + + backward + forward + - + - + { - this.labelOptions = res.data - }) - }, - getValues() { - this.logLabelValue = null - logOperation.getAllValues(this.logLabel).then(res => { - this.labelValueOptions = res.data + initLabelsValues() { + logOperation.labelsValues().then(res => { + this.labelsOptions = res }) }, queryData() { + console.log(this.labelAndValue) // 清空查询数据 this.clearParam() - if (this.logLabel !== '') { // 标签 - queryParam.logLabel = this.logLabel - } - if (this.logLabelValue !== '') { // 标签值 - queryParam.logLabelValue = this.logLabelValue + if (this.labelAndValue.length > 0) { + queryParam.logLabel = this.labelAndValue[0] + queryParam.logLabelValue = this.labelAndValue[1] } if (queryParam.logLabelValue === null) { // 判空 this.$message({ @@ -263,14 +238,8 @@ export default { if (this.timeRange.length !== 0) { // 如果是输入时间范围 queryParam.start = (new Date(this.timeRange[0]).getTime() * 1000000).toString() queryParam.end = (new Date(this.timeRange[1]).getTime() * 1000000).toString() - console.log(queryParam.start) - console.log('-----------------------------') - console.log(queryParam.end) } if (this.timeZoneValue) { - // console.log('时差:', this.timeZoneValue) - // console.log('start时间:', new Date().getTime() - this.timeZoneValue) - // console.log('end时间:', new Date().getTime()) const time = new Date() queryParam.start = ((time.getTime() - this.timeZoneValue) * 1000000).toString() queryParam.end = (time.getTime() * 1000000).toString() @@ -282,10 +251,8 @@ export default { queryParam.limits = this.limits } queryParam.direction = this.direction - console.log('最后参数:', queryParam) var ansi_up = new AnsiUp() logOperation.getLogData(queryParam).then(res => { - console.log('结果', res) this.showEmpty = false if (res.data.result.length === 1) { this.logs = res.data.result[0].values @@ -331,7 +298,6 @@ export default { const scrollHeight = document.documentElement.scrollHeight// 内容高度 const bottomest = Math.ceil(scrollTop + clientHeight) if (bottomest >= scrollHeight) { - console.log(1) // 加载新数据 queryParam.limits = this.scrollStep queryParam.direction = this.direction @@ -346,7 +312,6 @@ export default { if (zone === 0) { zone = 3600 * 1000 * 6 } - console.log('时间差:', zone) if (this.direction === 'backward') { // 设置时间区间 queryParam.start = (this.logs[this.logs.length - 1][0] - zone).toString() queryParam.end = this.logs[this.logs.length - 1][0] @@ -354,7 +319,6 @@ export default { queryParam.start = this.logs[this.logs.length - 1][0] queryParam.end = (parseFloat(this.logs[this.logs.length - 1][0]) + parseFloat(zone.toString())).toString() } - console.log('滚动的参数:', queryParam) var ansi_up = new AnsiUp() logOperation.getLogData(queryParam).then(res => { this.showEmpty = false @@ -471,7 +435,7 @@ export default {