设备bug修改 新增设备解绑功能
This commit is contained in:
@@ -47,6 +47,12 @@
|
||||
<groupId>p6spy</groupId>
|
||||
<artifactId>p6spy</artifactId>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-test</artifactId>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
</project>
|
||||
|
||||
@@ -0,0 +1,27 @@
|
||||
package org.dromara.common.mybatis.p6spy;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.p6spy.StdoutLogger;
|
||||
|
||||
/**
|
||||
* P6Spy SQL logger that suppresses SQL executed by scheduled tasks.
|
||||
*/
|
||||
public class ScheduledTaskAwareStdoutLogger extends StdoutLogger {
|
||||
|
||||
private static final String SCHEDULE_POOL_PREFIX = "schedule-pool-";
|
||||
private static final String VIRTUAL_SCHEDULE_POOL_PREFIX = "virtual-schedule-pool-";
|
||||
private static final String SPRING_SCHEDULING_PREFIX = "scheduling-";
|
||||
|
||||
static boolean isScheduledTaskThread(String threadName) {
|
||||
return threadName != null
|
||||
&& (threadName.startsWith(SCHEDULE_POOL_PREFIX)
|
||||
|| threadName.startsWith(VIRTUAL_SCHEDULE_POOL_PREFIX)
|
||||
|| threadName.startsWith(SPRING_SCHEDULING_PREFIX));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void logText(String text) {
|
||||
if (!isScheduledTaskThread(Thread.currentThread().getName())) {
|
||||
super.logText(text);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -2,8 +2,8 @@
|
||||
modulelist=com.baomidou.mybatisplus.extension.p6spy.MybatisPlusLogFactory,com.p6spy.engine.outage.P6OutageFactory
|
||||
# 自定义日志打印
|
||||
logMessageFormat=com.baomidou.mybatisplus.extension.p6spy.P6SpyLogger
|
||||
#日志输出到控制台
|
||||
appender=com.baomidou.mybatisplus.extension.p6spy.StdoutLogger
|
||||
# 日志输出到控制台,定时任务线程不打印 SQL
|
||||
appender=org.dromara.common.mybatis.p6spy.ScheduledTaskAwareStdoutLogger
|
||||
# 使用日志系统记录 sql
|
||||
#appender=com.p6spy.engine.spy.appender.Slf4JLogger
|
||||
# 取消JDBC URL前缀
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
package org.dromara.common.mybatis.p6spy;
|
||||
|
||||
import org.junit.jupiter.api.Tag;
|
||||
import org.junit.jupiter.api.Test;
|
||||
|
||||
import static org.assertj.core.api.Assertions.assertThat;
|
||||
|
||||
@Tag("dev")
|
||||
public class ScheduledTaskAwareStdoutLoggerTest {
|
||||
|
||||
@Test
|
||||
public void identifiesScheduledTaskThreads() {
|
||||
assertThat(ScheduledTaskAwareStdoutLogger.isScheduledTaskThread("schedule-pool-1")).isTrue();
|
||||
assertThat(ScheduledTaskAwareStdoutLogger.isScheduledTaskThread("virtual-schedule-pool-2")).isTrue();
|
||||
assertThat(ScheduledTaskAwareStdoutLogger.isScheduledTaskThread("scheduling-3")).isTrue();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void keepsSqlLoggingEnabledForOtherThreads() {
|
||||
assertThat(ScheduledTaskAwareStdoutLogger.isScheduledTaskThread("XNIO-1 task-2")).isFalse();
|
||||
assertThat(ScheduledTaskAwareStdoutLogger.isScheduledTaskThread("mqtt-consumer-1")).isFalse();
|
||||
assertThat(ScheduledTaskAwareStdoutLogger.isScheduledTaskThread(null)).isFalse();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user