如何在 Spring Boot 中从 Hibernate DEBUG 日志中获取消息?



目前我正在使用 Spring Boot 项目,其中属性在 YML 文件中定义,如下所示:

logging:
level:
org:
hibernate:
SQL: DEBUG

我需要做的是从调试日志中检索消息(具体来说:Hibernate在到达特定端点后执行的查询(并将该消息作为字符串值保存到数据库中。

我尝试了以下内容:

@Value("${logging.level.org.hibernate.SQL}")
private String logMessage;

不幸的是,我只能显示"调试"字符串。

在我这样改变@Value之后...

@Value("${logging.level.org.hibernate.SQL.DEBUG}")
private String logMessage;

。我收到一个错误。

您能否告诉我如何以正确的方式写下它,以查看调试日志中的确切消息?

或者也许有一些更好的方法来实现这一目标?

我已经尝试过使用requestLoggingFilter((方法,但是我找不到任何选项来检索确切的休眠(SQL(查询...

提前感谢您的任何帮助!

亲切的问候,马特

通常日志记录配置为将消息写入标准输出(通常是控制台(和日志文件。我建议您定义一个新的日志追加器,它将日志条目写入数据库。

例如,您可以在此处找到配置示例。

最新更新