日志
This commit is contained in:
parent
95c0ddb8d5
commit
c95300cd5c
@ -33,14 +33,14 @@ public class StdOutImplCustom implements Log {
|
|||||||
@Override
|
@Override
|
||||||
public void debug(String s) {
|
public void debug(String s) {
|
||||||
if (LogMdcUtil.isPrint()) {
|
if (LogMdcUtil.isPrint()) {
|
||||||
System.out.println(s);
|
System.out.println(processSql(s));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void trace(String s) {
|
public void trace(String s) {
|
||||||
if (LogMdcUtil.isPrint()) {
|
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) {
|
public void warn(String s) {
|
||||||
System.out.println(s);
|
System.out.println(s);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 自定义方法处理SQL语句,去除换行符
|
||||||
|
private String processSql(String sql) {
|
||||||
|
return sql.replaceAll("(?m)^[ \t]*\r?\n", "");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -11,6 +11,7 @@ import com.zhgd.annotation.DataScope;
|
|||||||
import com.zhgd.xmgl.security.util.SecurityUtils;
|
import com.zhgd.xmgl.security.util.SecurityUtils;
|
||||||
import com.zhgd.xmgl.util.EnvironmentUtil;
|
import com.zhgd.xmgl.util.EnvironmentUtil;
|
||||||
import com.zhgd.xmgl.util.LogMdcUtil;
|
import com.zhgd.xmgl.util.LogMdcUtil;
|
||||||
|
import com.zhgd.xmgl.util.PrintColorUtil;
|
||||||
import lombok.Setter;
|
import lombok.Setter;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import net.sf.jsqlparser.schema.Table;
|
import net.sf.jsqlparser.schema.Table;
|
||||||
@ -71,6 +72,7 @@ public class DataScopeInterceptor extends JsqlParserSupport implements InnerInte
|
|||||||
StackTraceElement[] stackTrace = Thread.currentThread().getStackTrace();
|
StackTraceElement[] stackTrace = Thread.currentThread().getStackTrace();
|
||||||
for (StackTraceElement e : stackTrace) {
|
for (StackTraceElement e : stackTrace) {
|
||||||
if (e.getClassName().startsWith("com.zhgd") && LogMdcUtil.notInPackage(e.getClassName()) && !e.getClassName().contains("$$")) {
|
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(StrUtil.subAfter(e.getClassName(), ".", true));
|
||||||
sb.append(".");
|
sb.append(".");
|
||||||
sb.append(e.getMethodName());
|
sb.append(e.getMethodName());
|
||||||
@ -79,11 +81,9 @@ public class DataScopeInterceptor extends JsqlParserSupport implements InnerInte
|
|||||||
sb.append(".java:");
|
sb.append(".java:");
|
||||||
sb.append(e.getLineNumber());
|
sb.append(e.getLineNumber());
|
||||||
sb.append(")");
|
sb.append(")");
|
||||||
sb.append(" \r\n ");
|
|
||||||
sb.append(" > ");
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return sb.toString();
|
return PrintColorUtil.getPrintColorStr(sb.toString());
|
||||||
}
|
}
|
||||||
|
|
||||||
private static String getCallPosition() {
|
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 (EnvironmentUtil.getActiveEnvironment().equals("gsx-other-env-show-dev")) {
|
||||||
//开发环境
|
//开发环境
|
||||||
if (sct == SqlCommandType.SELECT) {
|
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) {
|
} 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) {
|
} 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) {
|
} else if (sct == SqlCommandType.DELETE) {
|
||||||
log.debug("删除mapper: {} {}#{}", getCallPositionForDev(), clazz.getName(), methodName);
|
log.debug("删除mapper ↙↙↙ \r\n {}#{}{}", clazz.getName(), methodName, getCallPositionForDev());
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (sct == SqlCommandType.SELECT) {
|
if (sct == SqlCommandType.SELECT) {
|
||||||
|
|||||||
@ -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.modules.xz.service.IXzWorkerSafeWatchConfigService;
|
||||||
import com.zhgd.xmgl.push.config.PushPayloads;
|
import com.zhgd.xmgl.push.config.PushPayloads;
|
||||||
import com.zhgd.xmgl.util.*;
|
import com.zhgd.xmgl.util.*;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.apache.commons.collections.CollectionUtils;
|
import org.apache.commons.collections.CollectionUtils;
|
||||||
import org.apache.commons.collections.MapUtils;
|
import org.apache.commons.collections.MapUtils;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
@ -79,6 +80,7 @@ import java.util.stream.Collectors;
|
|||||||
*/
|
*/
|
||||||
@Service
|
@Service
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
|
@Slf4j
|
||||||
public class XzSecurityXzSecurityQualityInspectionRecordServiceImpl extends ServiceImpl<XzSecurityQualityInspectionRecordMapper, XzSecurityQualityInspectionRecord> implements IXzSecurityQualityInspectionRecordService {
|
public class XzSecurityXzSecurityQualityInspectionRecordServiceImpl extends ServiceImpl<XzSecurityQualityInspectionRecordMapper, XzSecurityQualityInspectionRecord> implements IXzSecurityQualityInspectionRecordService {
|
||||||
@Autowired
|
@Autowired
|
||||||
SanjiangDataCall sanjiangDataCall;
|
SanjiangDataCall sanjiangDataCall;
|
||||||
|
|||||||
@ -60,10 +60,10 @@ public class LogMdcUtil {
|
|||||||
|
|
||||||
private static String getCallPositionForDev() {
|
private static String getCallPositionForDev() {
|
||||||
StringBuilder sb = new StringBuilder();
|
StringBuilder sb = new StringBuilder();
|
||||||
sb.append("^^^********^^^");
|
|
||||||
StackTraceElement[] stackTrace = Thread.currentThread().getStackTrace();
|
StackTraceElement[] stackTrace = Thread.currentThread().getStackTrace();
|
||||||
for (StackTraceElement e : stackTrace) {
|
for (StackTraceElement e : stackTrace) {
|
||||||
if (e.getClassName().startsWith("com.zhgd") && notInPackage(e.getClassName()) && !e.getClassName().contains("$$")) {
|
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(StrUtil.subAfter(e.getClassName(), ".", true));
|
||||||
sb.append(".");
|
sb.append(".");
|
||||||
sb.append(e.getMethodName());
|
sb.append(e.getMethodName());
|
||||||
@ -72,14 +72,13 @@ public class LogMdcUtil {
|
|||||||
sb.append(".java:");
|
sb.append(".java:");
|
||||||
sb.append(e.getLineNumber());
|
sb.append(e.getLineNumber());
|
||||||
sb.append(")");
|
sb.append(")");
|
||||||
sb.append(" > ");
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return sb.toString();
|
return PrintColorUtil.getPrintColorStr(sb.toString());
|
||||||
}
|
}
|
||||||
|
|
||||||
public static boolean notInPackage(String className) {
|
public static boolean notInPackage(String className) {
|
||||||
return !className.startsWith("com.zhgd.mybatis") && !className.startsWith("com.zhgd.xmgl.config") && !className.startsWith("com.zhgd.xmgl.security")
|
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") ;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
34
src/main/java/com/zhgd/xmgl/util/PrintColorUtil.java
Normal file
34
src/main/java/com/zhgd/xmgl/util/PrintColorUtil.java
Normal file
@ -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));
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -6,8 +6,7 @@
|
|||||||
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
|
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
|
||||||
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
|
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
|
||||||
<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
|
<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
|
||||||
<pattern>%d{yyyy-MM-dd HH:mm:ss} [%highlight(%X{requestId})][%thread] %highlight(%-5level)
|
<pattern>%green(%d{yyyy-MM-dd HH:mm:ss} [%X{requestId}][%thread] %-5level %logger{0}.%method:%L) - %highlight(%msg) %X{stackInfo} %n
|
||||||
%cyan(%logger{50}).%method:%L - %highlight(%msg) %X{stackInfo} %n
|
|
||||||
</pattern>
|
</pattern>
|
||||||
</encoder>
|
</encoder>
|
||||||
<filter class="com.zhgd.config.LogPrintFilter">
|
<filter class="com.zhgd.config.LogPrintFilter">
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user