liquibase - 推荐的 Liquibase 挂钩,将执行的 SQL 审计到数据库表中
问题描述
为了使开发阶段的 liquibase 故障排除更容易,我想在运行目标 liquibase:update 时对 liquibase 进行挂钩,以使每个成功执行的 SQL 都由 liquibase 插入到表中。我找不到有关如何执行此操作的任何信息。通过源代码,我可以猜测覆盖类方法 JdbcExecutor.execute 似乎是实现这一目标的一种可能性。但这不是一个干净的解决方案,因为我使用 maven 来运行 liquibase:update 目标。
解决方案
编写自己的扩展是一种方法,但在我看来,仅使用 --logLevel=debug 并从那里收集 SQL 可能是完成您想要的更好的方法。这不会将其放入数据库中,但您将拥有所需的信息。您还可以updateSQL
在运行命令之前运行该update
命令以获取将生成的 SQL。
推荐阅读
- android - Jetpack 导航:更改每个片段的工具栏按钮
- angularjs - 具有特定 URL AngularJS 的 $http 的 $timeout
- spring - neo4j 和 elastic-search 在同一个 spring boot 项目中(冲突 lucene 版本)
- excel - 用 Rubberduck 替换函数或对象的路径
- eclipse - Eclipse 上的 Scala-Maven 项目
- apache - 如何将请求和用户信息(如用户名)自动记录到日志文件中以跟踪 liferay 中的用户活动?
- wordpress - Woocommerce 创建帐户按钮不可点击
- react-native - React Native redux saga yield 不适用于第一个操作
- sql-server - 过程中的参数
- wcf - IIS 重新连接 URL 正则表达式