feature: SQL审计新增数据返回行数 close #I6UZLJ

This commit is contained in:
开源海哥 2023-04-12 18:40:16 +08:00
parent afeb7cfebb
commit 503beee541
2 changed files with 31 additions and 5 deletions

View File

@ -62,8 +62,8 @@ public class AuditManager {
}
public static void setMessageReporter(MessageReporter messageReporter){
MessageCollector newMessageCollector = new ScheduledMessageCollector(10,messageReporter);
public static void setMessageReporter(MessageReporter messageReporter) {
MessageCollector newMessageCollector = new ScheduledMessageCollector(10, messageReporter);
setMessageCollector(newMessageCollector);
}
@ -75,7 +75,7 @@ public class AuditManager {
}
private static void releaseScheduledMessageCollector(MessageCollector messageCollector) {
if (messageCollector instanceof ScheduledMessageCollector){
if (messageCollector instanceof ScheduledMessageCollector) {
((ScheduledMessageCollector) messageCollector).release();
}
}
@ -87,7 +87,13 @@ public class AuditManager {
}
auditMessage.setQueryTime(clock.getTick());
try {
return supplier.execute();
T result = supplier.execute();
if (result instanceof Collection) {
auditMessage.setQueryCount(((Collection) result).size());
} else if (result != null) {
auditMessage.setQueryCount(1);
}
return result;
} finally {
auditMessage.setElapsedTime(clock.getTick() - auditMessage.getQueryTime());
auditMessage.setQuery(boundSql.getSql());

View File

@ -32,6 +32,7 @@ public class AuditMessage implements Serializable {
private String platform;
private String module;
private String url;
private String bizId; //自定义业务ID
private String user;
private String userIp;
@ -39,6 +40,7 @@ public class AuditMessage implements Serializable {
private String query;
private List<Object> queryParams;
private int queryCount;
private long queryTime; // Sql 执行的当前时间单位毫秒
private long elapsedTime; // Sql 执行消耗的时间单位毫秒
@ -70,6 +72,14 @@ public class AuditMessage implements Serializable {
this.url = url;
}
public String getBizId() {
return bizId;
}
public void setBizId(String bizId) {
this.bizId = bizId;
}
public String getUser() {
return user;
}
@ -148,6 +158,13 @@ public class AuditMessage implements Serializable {
});
}
public int getQueryCount() {
return queryCount;
}
public void setQueryCount(int queryCount) {
this.queryCount = queryCount;
}
public long getQueryTime() {
return queryTime;
@ -182,17 +199,20 @@ public class AuditMessage implements Serializable {
@Override
public String toString() {
return "{" +
return "AuditMessage{" +
"platform='" + platform + '\'' +
", module='" + module + '\'' +
", url='" + url + '\'' +
", bizId='" + bizId + '\'' +
", user='" + user + '\'' +
", userIp='" + userIp + '\'' +
", hostIp='" + hostIp + '\'' +
", query='" + query + '\'' +
", queryParams=" + queryParams +
", queryCount=" + queryCount +
", queryTime=" + queryTime +
", elapsedTime=" + elapsedTime +
", metas=" + metas +
'}';
}
}