Commit efc7844d by inrgihc

增加脚本日志可展示

parent 87537983
package org.dromara.sqlrest.common.service;
public interface DisplayRecord {
String getDisplayText();
}
...@@ -18,12 +18,13 @@ import lombok.Builder; ...@@ -18,12 +18,13 @@ import lombok.Builder;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
import org.apache.ibatis.reflection.ArrayUtil; import org.apache.ibatis.reflection.ArrayUtil;
import org.dromara.sqlrest.common.service.DisplayRecord;
@Data @Data
@Builder @Builder
@NoArgsConstructor @NoArgsConstructor
@AllArgsConstructor @AllArgsConstructor
public class ExecuteSqlRecord { public class ExecuteSqlRecord implements DisplayRecord {
private String sql; private String sql;
...@@ -56,6 +57,7 @@ public class ExecuteSqlRecord { ...@@ -56,6 +57,7 @@ public class ExecuteSqlRecord {
return value.toString(); return value.toString();
} }
@Override
public String getDisplayText() { public String getDisplayText() {
return "==> Preparing: " + sql.trim() + "\n" return "==> Preparing: " + sql.trim() + "\n"
+ "==> Parameters: " + getParameterValueString() + "\n" + "==> Parameters: " + getParameterValueString() + "\n"
......
// Copyright tang. All rights reserved.
// https://gitee.com/inrgihc/sqlrest
//
// Use of this source code is governed by a BSD-style license
//
// Author: tang (inrgihc@126.com)
// Date : 2024/3/31
// Location: beijing , china
/////////////////////////////////////////////////////////////
package org.dromara.sqlrest.core.dto;
import org.dromara.sqlrest.common.service.DisplayRecord;
public class ScripDebugRecord implements DisplayRecord {
private String text;
public ScripDebugRecord(String text) {
this.text = text;
}
@Override
public String getDisplayText() {
return text;
}
}
...@@ -26,8 +26,10 @@ import org.dromara.sqlrest.core.exec.annotation.Module; ...@@ -26,8 +26,10 @@ import org.dromara.sqlrest.core.exec.annotation.Module;
import org.dromara.sqlrest.core.exec.engine.AbstractExecutorEngine; import org.dromara.sqlrest.core.exec.engine.AbstractExecutorEngine;
import org.dromara.sqlrest.core.exec.module.CacheVarModule; import org.dromara.sqlrest.core.exec.module.CacheVarModule;
import org.dromara.sqlrest.core.exec.module.DbVarModule; import org.dromara.sqlrest.core.exec.module.DbVarModule;
import org.dromara.sqlrest.core.exec.module.LogVarModule;
import org.dromara.sqlrest.core.exec.module.DsVarModule; import org.dromara.sqlrest.core.exec.module.DsVarModule;
import org.dromara.sqlrest.core.exec.module.EnvVarModule; import org.dromara.sqlrest.core.exec.module.EnvVarModule;
import org.dromara.sqlrest.core.exec.module.HttpModule;
import org.dromara.sqlrest.core.exec.module.ReqVarModule; import org.dromara.sqlrest.core.exec.module.ReqVarModule;
import org.dromara.sqlrest.persistence.entity.ApiContextEntity; import org.dromara.sqlrest.persistence.entity.ApiContextEntity;
...@@ -36,6 +38,8 @@ public class ScriptExecutorService extends AbstractExecutorEngine { ...@@ -36,6 +38,8 @@ public class ScriptExecutorService extends AbstractExecutorEngine {
public static List<ScriptEditorCompletion> syntax = new ArrayList<>(); public static List<ScriptEditorCompletion> syntax = new ArrayList<>();
public static List<Class> modules = Arrays.asList( public static List<Class> modules = Arrays.asList(
EnvVarModule.class, EnvVarModule.class,
HttpModule.class,
LogVarModule.class,
DbVarModule.class, DbVarModule.class,
DsVarModule.class, DsVarModule.class,
ReqVarModule.class, ReqVarModule.class,
......
...@@ -12,25 +12,34 @@ package org.dromara.sqlrest.core.exec.logger; ...@@ -12,25 +12,34 @@ package org.dromara.sqlrest.core.exec.logger;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Collections; import java.util.Collections;
import java.util.List; import java.util.List;
import org.dromara.sqlrest.common.service.DisplayRecord;
import org.dromara.sqlrest.core.dto.ExecuteSqlRecord; import org.dromara.sqlrest.core.dto.ExecuteSqlRecord;
import org.dromara.sqlrest.core.dto.ScripDebugRecord;
public final class SqlExecuteLogger { public final class DebugExecuteLogger {
private static final ThreadLocal<List<ExecuteSqlRecord>> threadLocal = new ThreadLocal<>(); private static final ThreadLocal<List<DisplayRecord>> threadLocal = new ThreadLocal<>();
public static void init() { public static void init() {
threadLocal.set(new ArrayList<>()); threadLocal.set(new ArrayList<>());
} }
public static void add(String sql, List parameters, Long costs) { public static void add(String sql, List parameters, Long costs) {
List<ExecuteSqlRecord> list = threadLocal.get(); List<DisplayRecord> list = threadLocal.get();
if (null != list) { if (null != list) {
list.add(new ExecuteSqlRecord(sql, parameters, costs)); list.add(new ExecuteSqlRecord(sql, parameters, costs));
} }
} }
public static List<ExecuteSqlRecord> get() { public static void add(String text) {
List<ExecuteSqlRecord> list = threadLocal.get(); List<DisplayRecord> list = threadLocal.get();
if (null != list) {
list.add(new ScripDebugRecord(text));
}
}
public static List<DisplayRecord> get() {
List<DisplayRecord> list = threadLocal.get();
if (null == list) { if (null == list) {
return Collections.emptyList(); return Collections.emptyList();
} }
......
...@@ -27,7 +27,7 @@ import org.dromara.sqlrest.common.enums.ProductTypeEnum; ...@@ -27,7 +27,7 @@ import org.dromara.sqlrest.common.enums.ProductTypeEnum;
import org.dromara.sqlrest.common.service.VarModuleInterface; import org.dromara.sqlrest.common.service.VarModuleInterface;
import org.dromara.sqlrest.core.exec.annotation.Comment; import org.dromara.sqlrest.core.exec.annotation.Comment;
import org.dromara.sqlrest.core.exec.annotation.Module; import org.dromara.sqlrest.core.exec.annotation.Module;
import org.dromara.sqlrest.core.exec.logger.SqlExecuteLogger; import org.dromara.sqlrest.core.exec.logger.DebugExecuteLogger;
import org.dromara.sqlrest.core.util.ConvertUtils; import org.dromara.sqlrest.core.util.ConvertUtils;
import org.dromara.sqlrest.core.util.PageSizeUtils; import org.dromara.sqlrest.core.util.PageSizeUtils;
import org.dromara.sqlrest.core.util.PageSqlUtils; import org.dromara.sqlrest.core.util.PageSqlUtils;
...@@ -102,7 +102,7 @@ public class DbVarModule implements VarModuleInterface { ...@@ -102,7 +102,7 @@ public class DbVarModule implements VarModuleInterface {
try { try {
return build(jdbcTemplate.queryForList(sqlMeta.getSql(), sqlMeta.getParameter().toArray())); return build(jdbcTemplate.queryForList(sqlMeta.getSql(), sqlMeta.getParameter().toArray()));
} finally { } finally {
SqlExecuteLogger.add(sqlMeta.getSql(), sqlMeta.getParameter(), System.currentTimeMillis() - start); DebugExecuteLogger.add(sqlMeta.getSql(), sqlMeta.getParameter(), System.currentTimeMillis() - start);
} }
} }
...@@ -118,7 +118,7 @@ public class DbVarModule implements VarModuleInterface { ...@@ -118,7 +118,7 @@ public class DbVarModule implements VarModuleInterface {
try { try {
return jdbcTemplate.queryForObject(countSql, Integer.class, sqlMeta.getParameter().toArray()); return jdbcTemplate.queryForObject(countSql, Integer.class, sqlMeta.getParameter().toArray());
} finally { } finally {
SqlExecuteLogger.add(countSql, sqlMeta.getParameter(), System.currentTimeMillis() - start); DebugExecuteLogger.add(countSql, sqlMeta.getParameter(), System.currentTimeMillis() - start);
} }
} }
...@@ -145,7 +145,7 @@ public class DbVarModule implements VarModuleInterface { ...@@ -145,7 +145,7 @@ public class DbVarModule implements VarModuleInterface {
}, },
sqlMeta.getParameter().toArray())); sqlMeta.getParameter().toArray()));
} finally { } finally {
SqlExecuteLogger.add(sqlMeta.getSql(), sqlMeta.getParameter(), System.currentTimeMillis() - start); DebugExecuteLogger.add(sqlMeta.getSql(), sqlMeta.getParameter(), System.currentTimeMillis() - start);
} }
} }
...@@ -166,7 +166,7 @@ public class DbVarModule implements VarModuleInterface { ...@@ -166,7 +166,7 @@ public class DbVarModule implements VarModuleInterface {
try { try {
return build(jdbcTemplate.queryForList(pageSql, parameters.toArray())); return build(jdbcTemplate.queryForList(pageSql, parameters.toArray()));
} finally { } finally {
SqlExecuteLogger.add(pageSql, parameters, System.currentTimeMillis() - start); DebugExecuteLogger.add(pageSql, parameters, System.currentTimeMillis() - start);
} }
} }
...@@ -190,7 +190,7 @@ public class DbVarModule implements VarModuleInterface { ...@@ -190,7 +190,7 @@ public class DbVarModule implements VarModuleInterface {
keyHolder); keyHolder);
return build(keyHolder.getKeys()); return build(keyHolder.getKeys());
} finally { } finally {
SqlExecuteLogger.add(sqlMeta.getSql(), parameters, System.currentTimeMillis() - start); DebugExecuteLogger.add(sqlMeta.getSql(), parameters, System.currentTimeMillis() - start);
} }
} }
...@@ -206,7 +206,7 @@ public class DbVarModule implements VarModuleInterface { ...@@ -206,7 +206,7 @@ public class DbVarModule implements VarModuleInterface {
try { try {
return jdbcTemplate.update(sqlMeta.getSql(), parameters.toArray()); return jdbcTemplate.update(sqlMeta.getSql(), parameters.toArray());
} finally { } finally {
SqlExecuteLogger.add(sqlMeta.getSql(), parameters, System.currentTimeMillis() - start); DebugExecuteLogger.add(sqlMeta.getSql(), parameters, System.currentTimeMillis() - start);
} }
} }
...@@ -219,7 +219,7 @@ public class DbVarModule implements VarModuleInterface { ...@@ -219,7 +219,7 @@ public class DbVarModule implements VarModuleInterface {
try { try {
return Arrays.stream(jdbcTemplate.batchUpdate(sqlList.toArray(new String[0]))).sum(); return Arrays.stream(jdbcTemplate.batchUpdate(sqlList.toArray(new String[0]))).sum();
} finally { } finally {
SqlExecuteLogger.add(sqlList.stream().collect(Collectors.joining(";")), DebugExecuteLogger.add(sqlList.stream().collect(Collectors.joining(";")),
Collections.emptyList(), System.currentTimeMillis() - start); Collections.emptyList(), System.currentTimeMillis() - start);
} }
} }
...@@ -236,7 +236,7 @@ public class DbVarModule implements VarModuleInterface { ...@@ -236,7 +236,7 @@ public class DbVarModule implements VarModuleInterface {
try { try {
return jdbcTemplate.update(sqlMeta.getSql(), parameters.toArray()); return jdbcTemplate.update(sqlMeta.getSql(), parameters.toArray());
} finally { } finally {
SqlExecuteLogger.add(sqlMeta.getSql(), parameters, System.currentTimeMillis() - start); DebugExecuteLogger.add(sqlMeta.getSql(), parameters, System.currentTimeMillis() - start);
} }
} }
} }
......
// Copyright tang. All rights reserved.
// https://gitee.com/inrgihc/sqlrest
//
// Use of this source code is governed by a BSD-style license
//
// Author: tang (inrgihc@126.com)
// Date : 2024/3/31
// Location: beijing , china
/////////////////////////////////////////////////////////////
package org.dromara.sqlrest.core.exec.module;
import java.util.HashMap;
import java.util.Map;
import java.util.Objects;
import java.util.stream.Collectors;
import lombok.NoArgsConstructor;
import org.apache.commons.lang3.StringUtils;
import org.dromara.sqlrest.common.service.VarModuleInterface;
import org.dromara.sqlrest.core.exec.annotation.Comment;
import org.dromara.sqlrest.core.exec.annotation.Module;
import org.dromara.sqlrest.core.executor.AlarmHttpRequestFactory;
import org.springframework.http.HttpEntity;
import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpMethod;
import org.springframework.http.MediaType;
import org.springframework.http.ResponseEntity;
import org.springframework.stereotype.Service;
import org.springframework.util.LinkedMultiValueMap;
import org.springframework.util.MultiValueMap;
import org.springframework.web.client.RestTemplate;
@Service
@NoArgsConstructor
@Module(HttpModule.VAR_NAME)
public class HttpModule implements VarModuleInterface {
protected static final String VAR_NAME = "http";
protected static final RestTemplate template = new RestTemplate(new AlarmHttpRequestFactory());
private HttpHeaders httpHeaders = new HttpHeaders();
private Class<?> responseType = Object.class;
private MultiValueMap<String, Object> params = new LinkedMultiValueMap<>();
private MultiValueMap<String, Object> data = new LinkedMultiValueMap<>();
private Map<String, ?> variables = new HashMap<>();
private String url;
private HttpMethod method = HttpMethod.GET;
private HttpEntity<Object> entity = null;
private Object requestBody;
public HttpModule(String url) {
this.url = url;
}
@Override
public String getVarModuleName() {
return VAR_NAME;
}
@Comment("创建连接")
public HttpModule connect(@Comment("目标URL") String url) {
return new HttpModule(url);
}
@Comment("设置URL参数")
public HttpModule param(@Comment("参数名") String key, @Comment("参数值") Object... values) {
if (values != null) {
for (Object value : values) {
this.params.add(key, value);
}
}
return this;
}
@Comment("批量设置URL参数")
public HttpModule param(@Comment("参数值") Map<String, Object> values) {
values.forEach((key, value) -> param(key, Objects.toString(value, "")));
return this;
}
@Comment("设置form参数")
public HttpModule data(@Comment("参数名") String key, @Comment("参数值") Object... values) {
if (values != null) {
for (Object value : values) {
this.data.add(key, value);
}
}
return this;
}
@Comment("批量设置form参数")
public HttpModule data(@Comment("参数值") Map<String, Object> values) {
values.forEach((key, value) -> data(key, Objects.toString(value, "")));
return this;
}
@Comment("设置header")
public HttpModule header(@Comment("header键") String key, @Comment("header值") String value) {
httpHeaders.add(key, value);
return this;
}
@Comment("批量设置header")
public HttpModule header(@Comment("header值") Map<String, Object> values) {
values.entrySet()
.stream()
.filter(it -> it.getValue() != null)
.forEach(entry -> header(entry.getKey(), entry.getValue().toString()));
return this;
}
@Comment("设置请求方法,默认GET")
public HttpModule method(@Comment("请求方法") HttpMethod method) {
this.method = method;
return this;
}
@Comment("设置`RequestBody`")
public HttpModule body(@Comment("body值") Object requestBody) {
this.requestBody = requestBody;
this.contentType(MediaType.APPLICATION_JSON);
return this;
}
@Comment("设置`ContentType`")
public HttpModule contentType(@Comment("Content-Type值") String contentType) {
return contentType(MediaType.parseMediaType(contentType));
}
@Comment("设置`ContentType`")
public HttpModule contentType(@Comment("Content-Type值") MediaType mediaType) {
this.httpHeaders.setContentType(mediaType);
return this;
}
@Comment("设置返回值为`byte[]`")
public HttpModule expectBytes() {
this.responseType = byte[].class;
return this;
}
@Comment("设置返回值为`String`")
public HttpModule expectString() {
this.responseType = String.class;
return this;
}
@Comment("发送`GET`请求")
public ResponseEntity<?> get() {
this.method(HttpMethod.GET);
return this.execute();
}
@Comment("发送`POST`请求")
public ResponseEntity<?> post() {
this.method(HttpMethod.POST);
return this.execute();
}
@Comment("发送`PUT`请求")
public ResponseEntity<?> put() {
this.method(HttpMethod.PUT);
return this.execute();
}
@Comment("发送`DELETE`请求")
public ResponseEntity<?> delete() {
this.method(HttpMethod.DELETE);
return this.execute();
}
@Comment("执行请求")
public ResponseEntity<?> execute() {
if (!this.params.isEmpty()) {
String queryString = this.params.entrySet().stream()
.map(it -> it.getValue().stream()
.map(value -> it.getKey() + "=" + value)
.collect(Collectors.joining("&"))
).collect(Collectors.joining("&"));
if (StringUtils.isNotBlank(queryString)) {
this.url += (this.url.contains("?") ? "&" : "?") + queryString;
}
}
if (!this.data.isEmpty()) {
this.entity = new HttpEntity<>(this.data, this.httpHeaders);
} else if (this.entity == null && this.requestBody != null) {
this.entity = new HttpEntity<>(this.requestBody, this.httpHeaders);
} else {
this.entity = new HttpEntity<>(null, this.httpHeaders);
}
return template.exchange(url, this.method, entity, responseType, variables);
}
}
\ No newline at end of file
// Copyright tang. All rights reserved.
// https://gitee.com/inrgihc/sqlrest
//
// Use of this source code is governed by a BSD-style license
//
// Author: tang (inrgihc@126.com)
// Date : 2024/3/31
// Location: beijing , china
/////////////////////////////////////////////////////////////
package org.dromara.sqlrest.core.exec.module;
import java.text.MessageFormat;
import lombok.NoArgsConstructor;
import org.dromara.sqlrest.common.service.VarModuleInterface;
import org.dromara.sqlrest.core.exec.annotation.Comment;
import org.dromara.sqlrest.core.exec.annotation.Module;
import org.dromara.sqlrest.core.exec.logger.DebugExecuteLogger;
import org.springframework.stereotype.Service;
@Service
@NoArgsConstructor
@Module(LogVarModule.VAR_NAME)
public class LogVarModule implements VarModuleInterface {
protected static final String VAR_NAME = "log";
@Override
public String getVarModuleName() {
return VAR_NAME;
}
@Comment("打印调试日志信息")
public void print(@Comment("message") String message, Object... arguments) {
DebugExecuteLogger.add(MessageFormat.format(message, arguments));
}
}
...@@ -25,6 +25,7 @@ import org.dromara.sqlrest.common.enums.ParamLocationEnum; ...@@ -25,6 +25,7 @@ import org.dromara.sqlrest.common.enums.ParamLocationEnum;
import org.dromara.sqlrest.common.enums.ParamTypeEnum; import org.dromara.sqlrest.common.enums.ParamTypeEnum;
import org.dromara.sqlrest.common.exception.CommonException; import org.dromara.sqlrest.common.exception.CommonException;
import org.dromara.sqlrest.common.exception.ResponseErrorCode; import org.dromara.sqlrest.common.exception.ResponseErrorCode;
import org.dromara.sqlrest.common.service.DisplayRecord;
import org.dromara.sqlrest.core.driver.DriverLoadService; import org.dromara.sqlrest.core.driver.DriverLoadService;
import org.dromara.sqlrest.core.dto.ApiAssignmentBaseResponse; import org.dromara.sqlrest.core.dto.ApiAssignmentBaseResponse;
import org.dromara.sqlrest.core.dto.ApiAssignmentDetailResponse; import org.dromara.sqlrest.core.dto.ApiAssignmentDetailResponse;
...@@ -32,10 +33,9 @@ import org.dromara.sqlrest.core.dto.ApiAssignmentSaveRequest; ...@@ -32,10 +33,9 @@ import org.dromara.sqlrest.core.dto.ApiAssignmentSaveRequest;
import org.dromara.sqlrest.core.dto.ApiDebugExecuteRequest; import org.dromara.sqlrest.core.dto.ApiDebugExecuteRequest;
import org.dromara.sqlrest.core.dto.AssignmentSearchRequest; import org.dromara.sqlrest.core.dto.AssignmentSearchRequest;
import org.dromara.sqlrest.core.dto.DataTypeFormatMapValue; import org.dromara.sqlrest.core.dto.DataTypeFormatMapValue;
import org.dromara.sqlrest.core.dto.ExecuteSqlRecord;
import org.dromara.sqlrest.core.dto.ScriptEditorCompletion; import org.dromara.sqlrest.core.dto.ScriptEditorCompletion;
import org.dromara.sqlrest.core.dto.SqlParamParseResponse; import org.dromara.sqlrest.core.dto.SqlParamParseResponse;
import org.dromara.sqlrest.core.exec.logger.SqlExecuteLogger; import org.dromara.sqlrest.core.exec.logger.DebugExecuteLogger;
import org.dromara.sqlrest.core.exec.annotation.Comment; import org.dromara.sqlrest.core.exec.annotation.Comment;
import org.dromara.sqlrest.core.exec.engine.ApiExecutorEngineFactory; import org.dromara.sqlrest.core.exec.engine.ApiExecutorEngineFactory;
import org.dromara.sqlrest.core.exec.engine.impl.ScriptExecutorService; import org.dromara.sqlrest.core.exec.engine.impl.ScriptExecutorService;
...@@ -321,15 +321,15 @@ public class ApiAssignmentService { ...@@ -321,15 +321,15 @@ public class ApiAssignmentService {
ResultEntity entity; ResultEntity entity;
try { try {
SqlExecuteLogger.init(); DebugExecuteLogger.init();
HikariDataSource dataSource = DataSourceUtils.getHikariDataSource(dataSourceEntity, driverPath.getAbsolutePath()); HikariDataSource dataSource = DataSourceUtils.getHikariDataSource(dataSourceEntity, driverPath.getAbsolutePath());
List<Object> results = ApiExecutorEngineFactory List<Object> results = ApiExecutorEngineFactory
.getExecutor(request.getEngine(), dataSource, dataSourceEntity.getType(), true) .getExecutor(request.getEngine(), dataSource, dataSourceEntity.getType(), true)
.execute(scripts, params, request.getNamingStrategy()); .execute(scripts, params, request.getNamingStrategy());
Object answer = results.size() > 1 ? results : (1 == results.size()) ? results.get(0) : null; Object answer = results.size() > 1 ? results : (1 == results.size()) ? results.get(0) : null;
List<OutParam> types = JacksonUtils.parseFiledTypesAndFillNullAsString(results); List<OutParam> types = JacksonUtils.parseFiledTypesAndFillNullAsString(results);
String logs = Optional.ofNullable(SqlExecuteLogger.get()) String logs = Optional.ofNullable(DebugExecuteLogger.get())
.orElseGet(ArrayList::new).stream().map(ExecuteSqlRecord::getDisplayText) .orElseGet(ArrayList::new).stream().map(DisplayRecord::getDisplayText)
.collect(Collectors.toList()).stream().collect(Collectors.joining("\n\n")); .collect(Collectors.toList()).stream().collect(Collectors.joining("\n\n"));
Map<String, Object> respMap = new HashMap<>(4); Map<String, Object> respMap = new HashMap<>(4);
respMap.put("answer", answer); respMap.put("answer", answer);
...@@ -340,7 +340,7 @@ public class ApiAssignmentService { ...@@ -340,7 +340,7 @@ public class ApiAssignmentService {
log.warn("Failed to debug for error:{}", e.getMessage(), e); log.warn("Failed to debug for error:{}", e.getMessage(), e);
entity = ResultEntity.failed(ExceptionUtil.getMessage(e)); entity = ResultEntity.failed(ExceptionUtil.getMessage(e));
} finally { } finally {
SqlExecuteLogger.clear(); DebugExecuteLogger.clear();
} }
response.setStatus(HttpServletResponse.SC_OK); response.setStatus(HttpServletResponse.SC_OK);
......
...@@ -25,7 +25,7 @@ import lombok.extern.slf4j.Slf4j; ...@@ -25,7 +25,7 @@ import lombok.extern.slf4j.Slf4j;
import org.dromara.sqlrest.common.enums.NamingStrategyEnum; import org.dromara.sqlrest.common.enums.NamingStrategyEnum;
import org.dromara.sqlrest.common.enums.ProductTypeEnum; import org.dromara.sqlrest.common.enums.ProductTypeEnum;
import org.dromara.sqlrest.common.util.LambdaUtils; import org.dromara.sqlrest.common.util.LambdaUtils;
import org.dromara.sqlrest.core.exec.logger.SqlExecuteLogger; import org.dromara.sqlrest.core.exec.logger.DebugExecuteLogger;
import org.dromara.sqlrest.template.SqlMeta; import org.dromara.sqlrest.template.SqlMeta;
@Slf4j @Slf4j
...@@ -89,7 +89,7 @@ public class SqlJdbcUtils { ...@@ -89,7 +89,7 @@ public class SqlJdbcUtils {
return "(" + updateCount + ") rows affected"; return "(" + updateCount + ") rows affected";
} }
} finally { } finally {
SqlExecuteLogger.add(sql, paramValues, System.currentTimeMillis() - start); DebugExecuteLogger.add(sql, paramValues, System.currentTimeMillis() - start);
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment