记录 WSO2 ESB 对数据库的请求/响应



我想构建一个记录器,记录所有传入的请求及其对数据库的响应。为此,我创建了一个 axis2 模块,该模块应该在流入和流出中执行此操作 - 我不想从序列触发日志记录,因为那样我需要将记录器放入我的所有服务中。

我的问题是:如何将 ESB 中的传入消息与返回消息相关联?我认为这就是Synapse的用武之地,但我找不到将消息链接在一起的正确属性:没有消息ID或相关ID可用于执行此操作。

有没有办法在 axis2 处理程序中访问消息的 Synapse 属性?

Axis2 模块是正确的选择。要识别请求和响应,您可以检查消息 ID。如果您想在相关的响应消息上下文中访问请求消息上下文,请尝试以下代码块;

MessageContext requestMessageCtx = responseMessageCtx.getOperationContext()
      .getMessageContext(WSDLConstants.MESSAGE_LABEL_IN_VALUE);

这是一篇博客文章

最新更新