database - 跟踪从外部程序到 biztalk 以及返回的消息

标签 database biztalk

我有一个外部程序,它将从数据库生成 xml 文档并将其传递给 BizTalk。是否可以创建事务 ID 或其他内容(数据库中的消息 ID),以便我可以跟踪 BizTalk 中的消息,并将 BizTalk 自定义管道中的信息存储到具有给定事务 ID 的数据库中?

我想存储它是否失败,并且我有自定义管道来捕获此信息进行存储。我不想依赖 HAT 进行错误处理。

在 BizTalk 中跟踪从需要存储有关 BizTalk 处理信息的外部程序发送的消息的最佳方法是什么?任何链接/书籍提示也会有帮助。谢谢!

最佳答案

从架构的角度来看,通常情况下,有多种方法可以实现您想要的目标,并且解决方案的外观将根据您的具体场景而有很大差异。

在 BizTalk 中,跟踪由特定消息发起的流的最佳方法是交换 ID。

交换 ID 是一种上下文属性,它随着传入消息的处理过程而流动,并在整个过程中从一条消息复制到另一条消息。 从技术上讲,它是启动交换的接收消息的消息 ID。

如果您需要一个 ID 将“所有内容”分组在一起,就是这样。

如果在您的场景中您可以选择将其返回给调用者,那么它将能够将其链接到您需要的任何内容(数据库内外)。

如果不能,但调用者可以向您传递它分配给此请求的 ID,您可以使用交换 ID 更新数据库记录以链接两者。

随着流程的进展(成功与否),您可以随时返回并更新该记录,因为您始终可以访问 BizTalk 中的交换 ID。

关于database - 跟踪从外部程序到 biztalk 以及返回的消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/337487/

相关文章:

BizTalk 2009 到 2010 升级路径

biztalk - BizTalk 输出文件中添加了一些特殊字符

MySQL 查询对于同一 clientId 多次出现的值

database - 如何从 Delphi 访问 Visual FoxPro 表?

使用 TFS 的数据库变更管理和构建过程

java - 在Spring Data JPA中获取列的所有记录,即使我们将其指定为参数

mysql - 使用外键连接表

xml - 需要 XSLT 转换以删除重复元素 - 按属性排序

BizTalk 内部和外部架构

BizTalk单例编排实例已被淹没