From e0eeb855a7e8e8a37fee8db0ef7f7d7c8f28ff59 Mon Sep 17 00:00:00 2001 From: liyongde <1419499670@qq.com> Date: Thu, 29 May 2025 20:08:34 +0800 Subject: [PATCH] =?UTF-8?q?opt:=20es=E6=9F=A5=E8=AF=A2=E4=BC=98=E5=8C=96?= =?UTF-8?q?=EF=BC=8C=E5=89=8D=E7=AB=AF=E7=95=8C=E9=9D=A2=E4=BC=98=E5=8C=96?= =?UTF-8?q?=EF=BC=8C=E8=A7=A3=E6=9E=90SQL=EF=BC=8C=E5=A4=8D=E5=88=B6SQL?= =?UTF-8?q?=EF=BC=8C=E5=8E=BB=E9=99=A4lucene?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- nladmin-system/README.md | 3 + .../org/nl/config/lucene/TagNameEnum.java | 1 + .../system/service/lucene/LuceneService.java | 31 --- .../service/lucene/dto/LuceneLogDto.java | 116 --------- .../service/lucene/impl/EsLogServiceImpl.java | 8 +- .../impl/LuceneExecuteLogServiceImpl.java | 111 --------- .../lucene/impl/LuceneServiceImpl.java | 60 ----- .../system/service/quartz/task/TestTask.java | 23 ++ .../src/main/resources/logback-spring.xml | 50 ++-- nladmin-ui/package.json | 1 + nladmin-ui/src/views/lucene/index.vue | 231 ++++++++++++++---- 11 files changed, 241 insertions(+), 394 deletions(-) delete mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/system/service/lucene/LuceneService.java delete mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/system/service/lucene/dto/LuceneLogDto.java delete mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/system/service/lucene/impl/LuceneExecuteLogServiceImpl.java delete mode 100644 nladmin-system/nlsso-server/src/main/java/org/nl/system/service/lucene/impl/LuceneServiceImpl.java diff --git a/nladmin-system/README.md b/nladmin-system/README.md index dea0b8b..4af111c 100644 --- a/nladmin-system/README.md +++ b/nladmin-system/README.md @@ -1 +1,4 @@ # 诺力开发平台 + +## ES日志分支 +> 开启了ES,除了使用在日志上还可以用于其他功能,用户登录记录、操作记录、请求记录等长期存储的数据。 diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/config/lucene/TagNameEnum.java b/nladmin-system/nlsso-server/src/main/java/org/nl/config/lucene/TagNameEnum.java index 2dd161c..e8f6d88 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/config/lucene/TagNameEnum.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/config/lucene/TagNameEnum.java @@ -15,6 +15,7 @@ public enum TagNameEnum { * LMS系统 */ LMS("LMS系统"), + TEST("测试标签"), /** * 标记符号 */ diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/lucene/LuceneService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/lucene/LuceneService.java deleted file mode 100644 index ccb0a15..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/lucene/LuceneService.java +++ /dev/null @@ -1,31 +0,0 @@ -//package org.nl.system.service.lucene; -// -//import com.alibaba.fastjson.JSONObject; -// -//import java.util.List; -//import java.util.Map; -// -///** -// *

-// * 、 -// *

-// * -// * @author generator -// * @since 2023-11-16 -// */ -//public interface LuceneService { -// -// /** -// * 获取数据分页 -// * -// * @param whereJson 条件 -// * @return Map -// */ -// Map getAll(JSONObject whereJson); -// -// /** -// * 获取枚举的标签名称 -// * @return -// */ -// List getTagName(); -//} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/lucene/dto/LuceneLogDto.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/lucene/dto/LuceneLogDto.java deleted file mode 100644 index b8fe557..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/lucene/dto/LuceneLogDto.java +++ /dev/null @@ -1,116 +0,0 @@ -//package org.nl.system.service.lucene.dto; -// -//import lombok.AllArgsConstructor; -//import lombok.Builder; -//import lombok.Data; -//import lombok.NoArgsConstructor; -// -///** -// *

-// * 日志DTO -// *

-// * -// * @author generator -// * @since 2023-11-16 -// */ -//@Data -//@Builder -//@NoArgsConstructor -//@AllArgsConstructor -//public class LuceneLogDto { -// -// /** -// * 日志标识 -// */ -// private String log_uuid; -// /** -// * 日志类型 -// */ -// private String logType; -// /** -// * 设备编号 -// */ -// private String device_code; -// /** -// * 内容详情 -// */ -// private String content; -// /** -// * 任务编码 -// */ -// private String task_code; -// /** -// * 指令编码 -// */ -// private String instruct_code; -// /** -// * 任务标识 -// */ -// private String task_id; -// /** -// * 载具号 -// */ -// private String vehicle_code; -// /** -// * 备注 -// */ -// private String remark; -// /** -// * 日志类型 -// */ -// private String log_type; -// /** -// * 方法 -// */ -// private String method; -// /** -// * 请求参数 -// */ -// private String requestparam; -// /** -// * 响应参数 -// */ -// private String responseparam; -// /** -// * 请求地址 -// */ -// private String requesturl; -// /** -// * 状态码 -// */ -// private String status_code; -// /** -// * 是否删除 1:是;0:否 -// */ -// private String is_delete; -// /** -// * 创建者 -// */ -// private String create_by; -// /** -// * 创建时间 YYYY-MM-DD hh:mm:ss -// */ -// private String create_time; -// /** -// * 修改者 -// */ -// private String update_by; -// /** -// * 修改时间 -// */ -// private String update_time; -// -// public LuceneLogDto (final String opc_server_code,final String opc_plc_code, -// final String device_code,final String to_home,final int last_home, -// final int home) { -// super (); -// this.device_code = device_code; -// this.content = "信号" -// + opc_server_code + "." -// + opc_plc_code + "." -// + device_code + "." -// + to_home + "变更从" -// + last_home + "->" -// + home; -// } -//} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/lucene/impl/EsLogServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/lucene/impl/EsLogServiceImpl.java index b5ce9e2..1a7f5ca 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/lucene/impl/EsLogServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/lucene/impl/EsLogServiceImpl.java @@ -38,7 +38,11 @@ public class EsLogServiceImpl implements EsLogService { int size = whereJson.getInteger("size") != null ? whereJson.getInteger("size") : 10; // 创建分页和排序(按时间倒序) - Pageable pageable = PageRequest.of(page, size, Sort.by(Sort.Direction.DESC, "time")); + Sort sort = Sort.by( + Sort.Order.desc("@timestamp"), + Sort.Order.desc("_doc") + ); + Pageable pageable = PageRequest.of(page, size, sort); // 构建动态查询条件 BoolQueryBuilder boolQuery = QueryBuilders.boolQuery(); @@ -85,7 +89,7 @@ public class EsLogServiceImpl implements EsLogService { String endTime = whereJson.getString("endTime"); // 前端传来的数据:startTime -> 2025-05-27T16:00:00.000Z,endTime -> 2025-05-29T16:00:00.000Z // es的time字段: 2025-05-29T14:55:47.498+08:00 - // todo: 通过时间范围查询 + // 通过时间范围查询 boolQuery.must(QueryBuilders.rangeQuery("time") .gte(startTime) .lte(endTime) diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/lucene/impl/LuceneExecuteLogServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/lucene/impl/LuceneExecuteLogServiceImpl.java deleted file mode 100644 index 4f03989..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/lucene/impl/LuceneExecuteLogServiceImpl.java +++ /dev/null @@ -1,111 +0,0 @@ -//package org.nl.system.service.lucene.impl; -// -//import cn.hutool.core.date.DateTime; -//import cn.hutool.core.date.DateUtil; -//import cn.hutool.core.util.ObjectUtil; -//import lombok.RequiredArgsConstructor; -//import lombok.SneakyThrows; -//import lombok.extern.slf4j.Slf4j; -//import org.apache.lucene.document.Document; -//import org.apache.lucene.document.Field; -//import org.apache.lucene.document.StringField; -//import org.apache.lucene.index.IndexWriter; -//import org.nl.common.enums.LogTypeEnum; -//import org.nl.config.lucene.DynamicLogger; -//import org.nl.config.lucene.LuceneIndexWriter; -//import org.nl.system.service.lucene.LuceneExecuteLogService; -//import org.nl.system.service.lucene.dto.LuceneLogDto; -//import org.slf4j.Logger; -//import org.slf4j.MDC; -//import org.springframework.beans.factory.annotation.Value; -//import org.springframework.stereotype.Service; -// -//import java.io.IOException; -// -///** -// * @author jlm -// * @description 服务实现 -// * @date 2023-04-11 -// */ -//@Service -//@RequiredArgsConstructor -//@Slf4j -//public class LuceneExecuteLogServiceImpl implements LuceneExecuteLogService { -// -// /** -// * 日志目录 -// */ -// @Value("${logging.file.path}") -// private String logPath; -// -// @Override -// public void deviceItemValue(String device_code, String key, String value) { -// String now = DateUtil.now(); -// } -// -// @SneakyThrows -// @Override -// public void deviceExecuteLog(LuceneLogDto luceneLogDto) { -// luceneLogDto.setLogType(LogTypeEnum.DEVICE_LOG.getDesc()); -// addIndex(luceneLogDto); -// } -// -// @Override -// public void interfaceExecuteLog(LuceneLogDto luceneLogDto) throws IOException { -// luceneLogDto.setLogType(LogTypeEnum.INTERFACE_LOG.getDesc()); -// addIndex(luceneLogDto); -// } -// -// private void addIndex(LuceneLogDto luceneLogDto) throws IOException { -// IndexWriter indexWriter = LuceneIndexWriter.getIndexWriter(); -// //创建一个Document对象 -// Document document = new Document(); -// try { -// //记录索引开始时间 -// long startTime = System.currentTimeMillis(); -// //向document对象中添加域。 -// if (ObjectUtil.isNotEmpty(luceneLogDto.getDevice_code())) { -// document.add(new StringField("device_code", luceneLogDto.getDevice_code(), Field.Store.YES)); -// } -// if (ObjectUtil.isNotEmpty(luceneLogDto.getContent())) { -// document.add(new StringField("fieldContent", luceneLogDto.getContent(), Field.Store.YES)); -// } -// if (ObjectUtil.isNotEmpty(luceneLogDto.getMethod())) { -// document.add(new StringField("method", luceneLogDto.getMethod(), Field.Store.YES)); -// } -// if (ObjectUtil.isNotEmpty(luceneLogDto.getStatus_code())) { -// document.add(new StringField("status_code", luceneLogDto.getStatus_code(), Field.Store.YES)); -// } -// if (ObjectUtil.isNotEmpty(luceneLogDto.getRequestparam())) { -// document.add(new StringField("requestparam", luceneLogDto.getRequestparam(), Field.Store.YES)); -// } -// if (ObjectUtil.isNotEmpty(luceneLogDto.getResponseparam())) { -// document.add(new StringField("responseparam", luceneLogDto.getResponseparam(), Field.Store.YES)); -// } -// document.add(new StringField("logType", luceneLogDto.getLogType(), Field.Store.YES)); -// document.add(new StringField("logTime", DateUtil.format(new DateTime(), "yyyy-MM-dd HH:mm:ss.SSS"), Field.Store.YES)); -// indexWriter.addDocument(document); -// //记录索引结束时间 -// long endTime = System.currentTimeMillis(); -// indexWriter.commit(); -// //实现日志文件按业务独立生成日志文件到指定路径 -// DynamicLogger loggerBuilder =new DynamicLogger(logPath+"\\"+luceneLogDto.getLogType()+"\\"); -// Logger logger = loggerBuilder.getLogger(luceneLogDto.getDevice_code()); -// logger.info("{}",luceneLogDto.toString()); -// } catch (Exception e) { -// log.error(e.getMessage(), e); -// } -// } -// -// @Override -// public void extLog(String name, String message) { -// try { -// MDC.put(name, name); -// log.info("{}", message); -// } catch (Exception e) { -// e.printStackTrace(); -// } finally { -// MDC.remove(name); -// } -// } -//} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/lucene/impl/LuceneServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/lucene/impl/LuceneServiceImpl.java deleted file mode 100644 index aed695c..0000000 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/lucene/impl/LuceneServiceImpl.java +++ /dev/null @@ -1,60 +0,0 @@ -//package org.nl.system.service.lucene.impl; -// -//import com.alibaba.fastjson.JSONArray; -//import com.alibaba.fastjson.JSONObject; -//import lombok.RequiredArgsConstructor; -//import lombok.extern.slf4j.Slf4j; -//import org.nl.config.language.LangProcess; -//import org.nl.config.lucene.Searcher; -//import org.nl.config.lucene.TagNameEnum; -//import org.nl.system.service.lucene.LuceneService; -//import org.springframework.beans.factory.annotation.Value; -//import org.springframework.stereotype.Service; -// -//import java.util.Arrays; -//import java.util.List; -//import java.util.Map; -//import java.util.stream.Collectors; -// -///** -// *

-// * 、 -// *

-// * -// * @author generator -// * @since 2023-11-16 -// */ -//@Service -//@RequiredArgsConstructor -//@Slf4j -//public class LuceneServiceImpl implements LuceneService { -// -// /** -// * 日志索引目录 -// */ -// @Value("${lucene.index.path}") -// private String luceneUrl; -// -// @Override -// public Map getAll(JSONObject whereJson) { -// JSONObject jo = new JSONObject(); -// try { -// JSONObject jsonObject = (JSONObject) Searcher.search(luceneUrl, whereJson); -// JSONArray array = jsonObject.getJSONArray("content"); -// int totalElements = Integer.parseInt(jsonObject.get("totalElements").toString()); -// jo.put("content", array); -// jo.put("totalElements", totalElements); -// } catch (Exception e) { -// log.error("索引查询为空", e); -// throw new NullPointerException(LangProcess.msg("error_NullPoint")); -// } -// -// return jo; -// } -// -// @Override -// public List getTagName() { -// return Arrays.stream(TagNameEnum.values()).map(TagNameEnum::getTag).collect(Collectors.toList()); -// } -// -//} diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/task/TestTask.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/task/TestTask.java index 9a402db..1b2bce3 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/task/TestTask.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/quartz/task/TestTask.java @@ -1,6 +1,8 @@ package org.nl.system.service.quartz.task; import lombok.extern.slf4j.Slf4j; +import org.nl.config.lucene.TagNameEnum; +import org.slf4j.MDC; import org.springframework.stereotype.Component; /** @@ -13,7 +15,28 @@ import org.springframework.stereotype.Component; public class TestTask { public void run(){ + MDC.put("tag", TagNameEnum.TEST.getTag()); log.info("run 执行成功"); + this.skip1(); + } + + private void skip1() { + log.info("跳跃这里啦"); + this.skip2(); + } + + private void skip2() { + try { + int a = 1 / 0; + } catch (Exception e) { + log.error("报错啦:{}", e.getStackTrace()); + } finally { + skip3(); + } + } + + private void skip3() { + int a = 12 / 0; } public void run1(String str){ diff --git a/nladmin-system/nlsso-server/src/main/resources/logback-spring.xml b/nladmin-system/nlsso-server/src/main/resources/logback-spring.xml index f637990..4b51ec9 100644 --- a/nladmin-system/nlsso-server/src/main/resources/logback-spring.xml +++ b/nladmin-system/nlsso-server/src/main/resources/logback-spring.xml @@ -50,31 +50,6 @@ https://juejin.cn/post/6844903775631572999 - - - - - - - - - - - - - - - - - - - - - - - - - @@ -138,7 +113,6 @@ https://juejin.cn/post/6844903775631572999 - @@ -146,23 +120,23 @@ https://juejin.cn/post/6844903775631572999 - + - + - + - + - + @@ -230,43 +204,55 @@ https://juejin.cn/post/6844903775631572999 + - + + + + + + + + + + + + diff --git a/nladmin-ui/package.json b/nladmin-ui/package.json index 1912240..a071f73 100644 --- a/nladmin-ui/package.json +++ b/nladmin-ui/package.json @@ -64,6 +64,7 @@ "qs": "^6.9.1", "screenfull": "4.2.0", "sortablejs": "1.8.4", + "sql-formatter": "^15.6.2", "throttle-debounce": "^5.0.0", "vue": "2.6.10", "vue-bus": "^1.2.1", diff --git a/nladmin-ui/src/views/lucene/index.vue b/nladmin-ui/src/views/lucene/index.vue index 1fdcee5..52347f2 100644 --- a/nladmin-ui/src/views/lucene/index.vue +++ b/nladmin-ui/src/views/lucene/index.vue @@ -78,7 +78,7 @@ - +
@@ -96,91 +96,85 @@ {{ log.message }}
-
- - +
+ + 时间: - {{ timestampToDate(log.time) }} + {{ timestampToDate(log.time) }} - - + + host: - {{ log.host }} + {{ log.host }} - - + + 执行IP: - {{ log.currIp === null ? '0.0.0.0' : log.currIp }} + {{ log.currIp === null ? '0.0.0.0' : log.currIp }} - - + + API路径: - {{ log.apiPath === null ? '无' : log.apiPath }} + {{ log.apiPath === null ? '无' : log.apiPath }} - - + + MDC标签: - {{ log.tag === null ? '未配置MDC' : log.tag }} + {{ log.tag === null ? '未配置MDC' : log.tag }} - - + + 日志级别: - {{ log.severity }} + {{ log.severity }} - - + + 类名: - {{ log.logger }} + {{ log.logger }} - - + + 线程名: - {{ log.thread }} + {{ log.thread }} - - + + 链路标识: - {{ log.tlogTraceId === null ? '无链路id' : log.tlogTraceId }} + {{ log.tlogTraceId === null ? '无链路id' : log.tlogTraceId }} - - + + 日志信息: - - {{ log.message }} - + {{ transSQL(log.message) }}
@@ -203,7 +197,6 @@