0

在 Microsoft BizTalk 应用程序中,当发生异常时,服务或端口将进入挂起模式,需要手动启动应用程序或端口。

我想要的是在消息处理期间发生任何异常时应向系统管理员发送一封电子邮件警报,并且异常的详细信息应存储在单独的数据库中以供进一步处理。

任何人都有更好的建议我们如何做到这一点。

问候,

拉克什

4

2 回答 2

2

获取针对任何消息传递失败(即发送或接收端口失败)发送的电子邮件警报

  1. 对于要跟踪故障的每个发送或接收端口,编辑端口属性并选中“为失败消息启用路由”复选框
    • 对于发送端口,您将在“传输高级选项”下找到此选项。
    • 接收端口的选项位于端口属性的常规部分下。
  2. 创建一个使用 SMTP 适配器发送电子邮件的新发送端口(可能在单独的“异常处理”BizTalk 应用程序中)。
  3. 要使用这个新端口发送所有失败的消息,请使用 Property 在发送端口上创建一个过滤器ErrorReport.ErrorType == FailedMessage。对于在您启用失败消息路由的发送或接收端口上出错的所有消息,这将评估为 true。
  4. 如果您需要在更精细的级别上以不同的方式路由消息,请查看ChrisLoris 引用的Failed Message Routing 页面上的属性。

要在单独的数据库中跟踪失败消息的异常,我将从 Microsoft BizTalk ESB 工具包异常管理框架开始,因为它包含一个用于此目的的数据库以及将异常/失败消息数据推送到该数据库的机制(构建在失败消息之上路由)。它甚至包括一个网站,使用户能够与失败的消息进行交互,您可以根据需要对其进行自定义或完全丢弃。

安装 ESB 工具包的异常管理部分的说明可在http://msdn.microsoft.com/en-us/library/ee250099.aspx获得。Microsoft 使用 ESB 异常管理的指南也值得一读,在这里

于 2011-04-12T15:05:42.390 回答
2

要处理消息失败 secnario,请参阅using Failed Message Routing。至于在端口关闭时监控端口,您可以使用 MOM(昂贵)或编写脚本来执行您想要的操作。stackoverflow 中有很多帖子解决了这个问题……这是一篇这样的帖子

于 2011-04-12T12:49:42.150 回答