diff --git a/lms/nladmin-system/nlsso-server/pom.xml b/lms/nladmin-system/nlsso-server/pom.xml
index 4737bde..77cc8b1 100644
--- a/lms/nladmin-system/nlsso-server/pom.xml
+++ b/lms/nladmin-system/nlsso-server/pom.xml
@@ -355,7 +355,12 @@
com.alicp.jetcache
jetcache-starter-redis
- 2.5.14
+ 2.7.3
+
+
+ redis.clients
+ jedis
+ 4.3.1
diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/AppRun.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/AppRun.java
index a119464..2c6a8ed 100644
--- a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/AppRun.java
+++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/AppRun.java
@@ -3,15 +3,16 @@ package org.nl;
import cn.dev33.satoken.annotation.SaIgnore;
import com.alicp.jetcache.anno.config.EnableCreateCacheAnnotation;
import com.alicp.jetcache.anno.config.EnableMethodCache;
+import lombok.extern.slf4j.Slf4j;
import org.dromara.dynamictp.core.spring.EnableDynamicTp;
import org.mybatis.spring.annotation.MapperScan;
import org.nl.common.annotation.Limit;
import org.nl.config.SpringContextHolder;
+import org.slf4j.MDC;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory;
+import org.springframework.boot.autoconfigure.quartz.QuartzAutoConfiguration;
import org.springframework.boot.web.servlet.ServletComponentScan;
-import org.springframework.boot.web.servlet.server.ServletWebServerFactory;
import org.springframework.context.annotation.Bean;
import org.springframework.scheduling.annotation.EnableAsync;
import org.springframework.transaction.annotation.EnableTransactionManagement;
@@ -26,10 +27,12 @@ import org.springframework.web.bind.annotation.RestController;
* @author ldjun
* @date 2021/2/22 9:20:19
*/
+@Slf4j
@EnableAsync
@RestController
@EnableDynamicTp
@SpringBootApplication(exclude = {
+ QuartzAutoConfiguration.class,
org.springframework.boot.autoconfigure.security.servlet.SecurityAutoConfiguration.class
})
@ServletComponentScan
@@ -48,7 +51,6 @@ public class AppRun {
return new SpringContextHolder();
}
-
/**
* 访问首页提示
@@ -59,6 +61,8 @@ public class AppRun {
@Limit(period = 2, count = 1)
@SaIgnore
public String index() {
+ MDC.put("system", "SSS");
+ log.info("sssss");
return "Backend service started successfully";
}
}
diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/config/lucene/LogMessageConstant.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/config/lucene/LogMessageConstant.java
index 31242b6..e776132 100644
--- a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/config/lucene/LogMessageConstant.java
+++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/config/lucene/LogMessageConstant.java
@@ -7,9 +7,17 @@ package org.nl.config.lucene;
*/
public class LogMessageConstant {
/**
- *
+ * 标签
+ */
+ public final static String LABEL = "label";
+ /**
+ * 时间
*/
public final static String SORT_NAME = "time";
+ /**
+ * IP
+ */
+ public final static String IP = "ip";
/**
* 级别
*/
@@ -30,6 +38,9 @@ public class LogMessageConstant {
* 日志内容
*/
public final static String FIELD_MESSAGE = "message";
+ /**
+ * tlogTraceId
+ */
public final static String FIELD_TRACEID = "tlogTraceId";
// 定义颜色值
/**
diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/config/lucene/LuceneAppender.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/config/lucene/LuceneAppender.java
index 94d6d6a..48d037c 100644
--- a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/config/lucene/LuceneAppender.java
+++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/config/lucene/LuceneAppender.java
@@ -20,9 +20,13 @@ import org.nl.common.utils.YmlConfigFileUtil;
import org.wltea.analyzer.lucene.IKAnalyzer;
import java.io.IOException;
+import java.net.InetAddress;
+import java.net.UnknownHostException;
import java.nio.file.Paths;
import java.util.Map;
import java.util.Properties;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
public class LuceneAppender extends AppenderBase {
@@ -61,18 +65,43 @@ public class LuceneAppender extends AppenderBase {
Map mdcPropertyMap = event.getMDCPropertyMap();
Document doc = new Document();
long timeStamp = event.getTimeStamp();
+ // 获取本机的IP地址
+ String ipAddress = "-";
+ try {
+ ipAddress = InetAddress.getLocalHost().getHostAddress();
+ } catch (UnknownHostException e) {
+ throw new RuntimeException(e);
+ }
String formattedDateTime = DateUtil.format(new java.util.Date(timeStamp), "yyyy-MM-dd HH:mm:ss.SSS");
doc.add(new LongPoint(LogMessageConstant.SORT_NAME, timeStamp));
doc.add(new NumericDocValuesField(LogMessageConstant.SORT_NAME, timeStamp));
doc.add(new StringField(LogMessageConstant.FIELD_LEVEL, event.getLevel().toString(), Field.Store.YES));
doc.add(new StringField(LogMessageConstant.FIELD_TIMESTAMP, formattedDateTime, Field.Store.YES));
doc.add(new StoredField(LogMessageConstant.FIELD_CLASS_NAME, event.getLoggerName()));
+ doc.add(new StoredField(LogMessageConstant.IP, ipAddress));
doc.add(new StoredField(LogMessageConstant.FIELD_THREAD, event.getThreadName()));
if (ObjectUtil.isNotEmpty(mdcPropertyMap) && ObjectUtil.isNotEmpty(mdcPropertyMap.get(LogMessageConstant.FIELD_TRACEID))) {
String traceId = mdcPropertyMap.get(LogMessageConstant.FIELD_TRACEID);
doc.add(new StringField(LogMessageConstant.FIELD_TRACEID, traceId, Field.Store.YES));
+ doc.add(new StringField(LogMessageConstant.LABEL, ObjectUtil.isNotEmpty(mdcPropertyMap.get("tag_name"))
+ ? mdcPropertyMap.get("tag_name") : "-", Field.Store.YES));
} else {
- doc.add(new StringField(LogMessageConstant.FIELD_TRACEID, "无生成链路ID", Field.Store.YES));
+ // 定义正则表达式,匹配17位数字
+ String regex = "\\d{17}";
+ // 创建 Pattern 对象
+ Pattern pattern = Pattern.compile(regex);
+ // 创建 Matcher 对象
+ Matcher matcher = pattern.matcher(message);
+ String matchedNumber = null;
+ // 查找匹配的数字
+ while (matcher.find()) {
+ matchedNumber = matcher.group();
+ }
+ if (ObjectUtil.isNotEmpty(matchedNumber)) {
+ doc.add(new StringField(LogMessageConstant.FIELD_TRACEID, matchedNumber, Field.Store.YES));
+ } else {
+ doc.add(new StringField(LogMessageConstant.FIELD_TRACEID, "无生成链路ID", Field.Store.YES));
+ }
}
doc.add(new TextField(LogMessageConstant.FIELD_MESSAGE, message, Field.Store.YES));
try {
diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/config/lucene/Searcher.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/config/lucene/Searcher.java
index 2126e2b..8fb0631 100644
--- a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/config/lucene/Searcher.java
+++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/config/lucene/Searcher.java
@@ -92,17 +92,20 @@ public class Searcher {
whereJson.get(LogMessageConstant.FIELD_LEVEL).toString()));
booleanQueryBuilder.add(termQuery, BooleanClause.Occur.MUST);
}
- docs = searcher.search(booleanQueryBuilder.build(), end, sort);
List list = new ArrayList<>();
+ TopFieldCollector collector = TopFieldCollector.create(sort, 20000, 0);
+ searcher.search(booleanQueryBuilder.build(), collector);
+ docs = collector.topDocs(pageNum*pageSize, pageSize);
ScoreDoc[] scoreDocs = docs.scoreDocs;
- if (end > docs.totalHits.value) {
- end = (int) docs.totalHits.value;
- }
+ int totalSize = collector.getTotalHits();
- for (int i = start; i < end; i++) {
- ScoreDoc scoreDoc = scoreDocs[i];
+ for (ScoreDoc scoreDoc : scoreDocs) {
Document doc = reader.document(scoreDoc.doc);
- String logInfo = LogMessageConstant.COLOR_YELLOW + doc.get(LogMessageConstant.FIELD_TRACEID) +
+ String logInfo = LogMessageConstant.COLOR_CYAN + doc.get(LogMessageConstant.LABEL) +
+ LogMessageConstant.COLOR_RESET + " - " +
+ LogMessageConstant.COLOR_BLUE + doc.get(LogMessageConstant.IP) +
+ LogMessageConstant.COLOR_RESET + " - " +
+ LogMessageConstant.COLOR_YELLOW + doc.get(LogMessageConstant.FIELD_TRACEID) +
LogMessageConstant.COLOR_RESET + " - " +
LogMessageConstant.COLOR_RED + doc.get(LogMessageConstant.FIELD_TIMESTAMP) +
LogMessageConstant.COLOR_RESET + " - " +
@@ -118,7 +121,7 @@ public class Searcher {
reader.close();
JSONObject jo = new JSONObject();
jo.put("content", list);
- jo.put("totalElements", docs.totalHits.value);
+ jo.put("totalElements", totalSize);
return jo;
}
diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/config/thread/TestCollector.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/config/thread/TestCollector.java
index c919f76..35bc57d 100644
--- a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/config/thread/TestCollector.java
+++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/config/thread/TestCollector.java
@@ -11,9 +11,7 @@ import org.dromara.dynamictp.core.monitor.collector.AbstractCollector;
public class TestCollector extends AbstractCollector {
@Override
public void collect(ThreadPoolStats threadPoolStats) {
- if (threadPoolStats.getPoolName().equals("el-thread")) {
- System.out.println("ssssssssssssssss:" + threadPoolStats);
- }
+// System.out.println("ssssssssssssssss:" + threadPoolStats);
}
@Override
diff --git a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/param/SysParamController.java b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/param/SysParamController.java
index ac8048b..8273a55 100644
--- a/lms/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/param/SysParamController.java
+++ b/lms/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/param/SysParamController.java
@@ -36,7 +36,6 @@ class SysParamController {
@GetMapping
@Log("查询系统参数")
-
//@SaCheckPermission("param:list")
public ResponseEntity