Skip to content

SQL 审计

SQL采集统计,用于SQL分析

1.编写审计日志类

实现接口 SQLAuditing

java
/**
 * SQL 审计
 */
@Component
public class MySQLAuditing implements SQLAuditing{

    /**
     * SQL 审计操作
     *
     * @param sql         sql
     * @param params      sql 参数
     * @param startTime   开始时间(毫秒)
     * @param endTime     结束时间(毫秒)
     * @param queryCount  查询结果总条数; -1 时 应该是查询
     * @param updateCount 新增/修改/删除影响的总条数;-1时 应该非查询
     */
    public void auditOperation(String sql, List<Object> params, long startTime, long endTime, long queryCount, long updateCount) {
        //建议异步存放
    }
}

2.开启SQL审计

java
@Configuration
public class SQLAuditingConfig {

    @Bean
    public void setAuditing(MySQLAuditing mySQLAuditing) {
        XbatisGlobalConfig.setSQLAuditing(mySQLAuditing);
    }
}