From c95300cd5cee7010e27cbeca4f185499f0af10a9 Mon Sep 17 00:00:00 2001 From: GUO <1923636941@qq.com> Date: Thu, 6 Jun 2024 23:21:11 +0800 Subject: [PATCH] =?UTF-8?q?=E6=97=A5=E5=BF=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/zhgd/config/StdOutImplCustom.java | 9 +++-- .../zhgd/mybatis/DataScopeInterceptor.java | 14 ++++---- ...ityQualityInspectionRecordServiceImpl.java | 2 ++ .../java/com/zhgd/xmgl/util/LogMdcUtil.java | 7 ++-- .../com/zhgd/xmgl/util/PrintColorUtil.java | 34 +++++++++++++++++++ src/main/resources/logback-spring.xml | 3 +- 6 files changed, 54 insertions(+), 15 deletions(-) create mode 100644 src/main/java/com/zhgd/xmgl/util/PrintColorUtil.java diff --git a/src/main/java/com/zhgd/config/StdOutImplCustom.java b/src/main/java/com/zhgd/config/StdOutImplCustom.java index 3b6809921..c66be453c 100644 --- a/src/main/java/com/zhgd/config/StdOutImplCustom.java +++ b/src/main/java/com/zhgd/config/StdOutImplCustom.java @@ -33,14 +33,14 @@ public class StdOutImplCustom implements Log { @Override public void debug(String s) { if (LogMdcUtil.isPrint()) { - System.out.println(s); + System.out.println(processSql(s)); } } @Override public void trace(String s) { if (LogMdcUtil.isPrint()) { - System.out.println(s); + System.out.println(processSql(s)); } } @@ -48,4 +48,9 @@ public class StdOutImplCustom implements Log { public void warn(String s) { System.out.println(s); } + + // 自定义方法处理SQL语句,去除换行符 + private String processSql(String sql) { + return sql.replaceAll("(?m)^[ \t]*\r?\n", ""); + } } diff --git a/src/main/java/com/zhgd/mybatis/DataScopeInterceptor.java b/src/main/java/com/zhgd/mybatis/DataScopeInterceptor.java index 72f79b66f..05d7d04e1 100644 --- a/src/main/java/com/zhgd/mybatis/DataScopeInterceptor.java +++ b/src/main/java/com/zhgd/mybatis/DataScopeInterceptor.java @@ -11,6 +11,7 @@ import com.zhgd.annotation.DataScope; import com.zhgd.xmgl.security.util.SecurityUtils; import com.zhgd.xmgl.util.EnvironmentUtil; import com.zhgd.xmgl.util.LogMdcUtil; +import com.zhgd.xmgl.util.PrintColorUtil; import lombok.Setter; import lombok.extern.slf4j.Slf4j; import net.sf.jsqlparser.schema.Table; @@ -71,6 +72,7 @@ public class DataScopeInterceptor extends JsqlParserSupport implements InnerInte StackTraceElement[] stackTrace = Thread.currentThread().getStackTrace(); for (StackTraceElement e : stackTrace) { if (e.getClassName().startsWith("com.zhgd") && LogMdcUtil.notInPackage(e.getClassName()) && !e.getClassName().contains("$$")) { + sb.append("\r\n "); sb.append(StrUtil.subAfter(e.getClassName(), ".", true)); sb.append("."); sb.append(e.getMethodName()); @@ -79,11 +81,9 @@ public class DataScopeInterceptor extends JsqlParserSupport implements InnerInte sb.append(".java:"); sb.append(e.getLineNumber()); sb.append(")"); - sb.append(" \r\n "); - sb.append(" > "); } } - return sb.toString(); + return PrintColorUtil.getPrintColorStr(sb.toString()); } private static String getCallPosition() { @@ -115,13 +115,13 @@ public class DataScopeInterceptor extends JsqlParserSupport implements InnerInte if (EnvironmentUtil.getActiveEnvironment().equals("gsx-other-env-show-dev")) { //开发环境 if (sct == SqlCommandType.SELECT) { - log.debug("查询mapper: {} {}#{}", getCallPositionForDev(), clazz.getName(), methodName); + log.debug("查询mapper ↙↙↙ \r\n {}#{}{}", clazz.getName(), methodName, getCallPositionForDev()); } else if (sct == SqlCommandType.UPDATE) { - log.debug("更新mapper: {} {}#{}", getCallPositionForDev(), clazz.getName(), methodName); + log.debug("更新mapper ↙↙↙ \r\n {}#{}{}", clazz.getName(), methodName, getCallPositionForDev()); } else if (sct == SqlCommandType.INSERT) { - log.debug("插入mapper: {} {}#{}", getCallPositionForDev(), clazz.getName(), methodName); + log.debug("插入mapper ↙↙↙ \r\n {}#{}{}", clazz.getName(), methodName, getCallPositionForDev()); } else if (sct == SqlCommandType.DELETE) { - log.debug("删除mapper: {} {}#{}", getCallPositionForDev(), clazz.getName(), methodName); + log.debug("删除mapper ↙↙↙ \r\n {}#{}{}", clazz.getName(), methodName, getCallPositionForDev()); } } else { if (sct == SqlCommandType.SELECT) { diff --git a/src/main/java/com/zhgd/xmgl/modules/xz.security/service/impl/XzSecurityXzSecurityQualityInspectionRecordServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/xz.security/service/impl/XzSecurityXzSecurityQualityInspectionRecordServiceImpl.java index 86819d07d..e42be9fb7 100644 --- a/src/main/java/com/zhgd/xmgl/modules/xz.security/service/impl/XzSecurityXzSecurityQualityInspectionRecordServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/xz.security/service/impl/XzSecurityXzSecurityQualityInspectionRecordServiceImpl.java @@ -55,6 +55,7 @@ import com.zhgd.xmgl.modules.xz.security.service.IXzSecurityQualityInspectionRec import com.zhgd.xmgl.modules.xz.service.IXzWorkerSafeWatchConfigService; import com.zhgd.xmgl.push.config.PushPayloads; import com.zhgd.xmgl.util.*; +import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.collections.MapUtils; import org.apache.commons.lang3.StringUtils; @@ -79,6 +80,7 @@ import java.util.stream.Collectors; */ @Service @Transactional(rollbackFor = Exception.class) +@Slf4j public class XzSecurityXzSecurityQualityInspectionRecordServiceImpl extends ServiceImpl implements IXzSecurityQualityInspectionRecordService { @Autowired SanjiangDataCall sanjiangDataCall; diff --git a/src/main/java/com/zhgd/xmgl/util/LogMdcUtil.java b/src/main/java/com/zhgd/xmgl/util/LogMdcUtil.java index 81e5f1fb9..f6d6640b0 100644 --- a/src/main/java/com/zhgd/xmgl/util/LogMdcUtil.java +++ b/src/main/java/com/zhgd/xmgl/util/LogMdcUtil.java @@ -60,10 +60,10 @@ public class LogMdcUtil { private static String getCallPositionForDev() { StringBuilder sb = new StringBuilder(); - sb.append("^^^********^^^"); StackTraceElement[] stackTrace = Thread.currentThread().getStackTrace(); for (StackTraceElement e : stackTrace) { if (e.getClassName().startsWith("com.zhgd") && notInPackage(e.getClassName()) && !e.getClassName().contains("$$")) { + sb.append("\r\n "); sb.append(StrUtil.subAfter(e.getClassName(), ".", true)); sb.append("."); sb.append(e.getMethodName()); @@ -72,14 +72,13 @@ public class LogMdcUtil { sb.append(".java:"); sb.append(e.getLineNumber()); sb.append(")"); - sb.append(" > "); } } - return sb.toString(); + return PrintColorUtil.getPrintColorStr(sb.toString()); } public static boolean notInPackage(String className) { return !className.startsWith("com.zhgd.mybatis") && !className.startsWith("com.zhgd.xmgl.config") && !className.startsWith("com.zhgd.xmgl.security") - && !className.contains("LogMdcUtil") && !className.contains("LogPrintFilter"); + && !className.contains("LogMdcUtil") && !className.contains("LogPrintFilter") && !className.contains("LogInterceptor") ; } } diff --git a/src/main/java/com/zhgd/xmgl/util/PrintColorUtil.java b/src/main/java/com/zhgd/xmgl/util/PrintColorUtil.java new file mode 100644 index 000000000..45727ee24 --- /dev/null +++ b/src/main/java/com/zhgd/xmgl/util/PrintColorUtil.java @@ -0,0 +1,34 @@ +package com.zhgd.xmgl.util; + +import lombok.extern.slf4j.Slf4j; + +@Slf4j +public class PrintColorUtil { + /** + * @param content 要打印的内容 + * @param colour 颜色代号:背景颜色代号(41-46);前景色代号(31-36) + * @param type 样式代号:0无;1加粗;3斜体;4下划线 + */ + public static String getFormatLogString(String content, int colour, int type) { + boolean hasType = type != 1 && type != 3 && type != 4; + if (hasType) { + return String.format("\033[%dm%s\033[0m", colour, content); + } else { + return String.format("\033[%d;%dm%s\033[0m", colour, type, content); + } + } + + public static String getPrintColorStr(String content) { + return getFormatLogString(content, 33, 0); + } + + public static void main(String[] args) { + System.out.println("控制台颜色测试:"); + System.out.println(getFormatLogString("[ 红色 ]", 31, 0)); + System.out.println(getFormatLogString("[ 黄色 ]", 32, 0)); + System.out.println(getFormatLogString("[ 橙色 ]", 33, 0)); + System.out.println(getFormatLogString("[ 蓝色 ]", 34, 0)); + System.out.println(getFormatLogString("[ 紫色 ]", 35, 0)); + System.out.println(getFormatLogString("[ 绿色 ]", 36, 0)); + } +} diff --git a/src/main/resources/logback-spring.xml b/src/main/resources/logback-spring.xml index abcbd698d..917cfbd12 100644 --- a/src/main/resources/logback-spring.xml +++ b/src/main/resources/logback-spring.xml @@ -6,8 +6,7 @@ - %d{yyyy-MM-dd HH:mm:ss} [%highlight(%X{requestId})][%thread] %highlight(%-5level) - %cyan(%logger{50}).%method:%L - %highlight(%msg) %X{stackInfo} %n + %green(%d{yyyy-MM-dd HH:mm:ss} [%X{requestId}][%thread] %-5level %logger{0}.%method:%L) - %highlight(%msg) %X{stackInfo} %n