从 Spring 集成 DSL 记录到数据库

Logging from the Spring Integration DSL to the database

我正在使用 Spring 集成 Java DSL 进行应用。

从应用程序使用 Spring Data JPA 登录数据库的最佳方式是什么?

我有一个很长的与多个 HTTP gets 和 posts 的集成流程。我至少要记录发送和响应的消息以及使用了哪些 URL 以及可能的其他一些自定义值。

我试过使用方法 IntegrationFlowBuilder.log 进行记录。我的计划是创建一些自定义记录器,记录到数据库中。

我已经尝试使用方法 IntegrationFlowBuilder.enrichHeaders 和方法 IntegrationFlowBuilder.log 来记录 URLS 和其他自定义值。如何更改 IntegrationFlowBuilder 中的某些 header 条目?我添加了具有相同键和不同值的条目,但日志记录中的值没有改变。

enrichHeaders()HeaderEnricherSpec 提供了如下选项:

/**
 * Determine the default action to take when setting individual header specifications
 * without an explicit 'overwrite' argument.
 * @param defaultOverwrite the defaultOverwrite.
 * @return the header enricher spec.
 * @see HeaderEnricher#setDefaultOverwrite(boolean)
 */
public HeaderEnricherSpec defaultOverwrite(boolean defaultOverwrite) {

此外,每个添加到 headers 的条目都可以用自己的 override 标志指定:

/**
 * Add a single header specification where the value is a String representation of a
 * SpEL {@link Expression}.
 * @param name the header name.
 * @param expression the expression.
 * @param overwrite true to overwrite an existing header.
 * @return the header enricher spec.
 */
public HeaderEnricherSpec headerExpression(String name, String expression, Boolean overwrite) {