这是我第一次使用BizTalk,所以任何帮助都会受到赞赏(请原谅我对这个问题缺乏知识/无知。我刚刚开始这项工作,并且仍然对系统有所了解。)
我的本地机器上有一个biztalk服务器,它接受来自.NET Web应用程序的XML。 BizTalk做了一些工作,然后将数据发送到oracle系统。
我遇到一个问题,BizTalk在某种程度上得到了一些破坏的XML,并且在我的事件日志中每5秒创建30个错误。不是惊天动地,但令人讨厌。 BizTalk一直试图将这些消息发送到进程以将它们插入Oracle。这会因为oracle表中插入的值之一太长而中断。
所以我需要的是找到这些消息在BizTalk中的位置并杀死它们(因为它们是测试消息)。
我运行了一个快速的SQL脚本,在每个数据库的每个表中搜索导致错误的XML值(A912478F-BB78-4e5c-A1E0-E9656B11D3AA),但我找不到它。所以我想知道它是否是二进制文件。
任何帮助都会很棒 - 谢谢。
答案 0 :(得分:3)
打开BizTalk管理员。我假设BizTalk 2006 / R2 / 2009。
展开顶层并单击biztalk组。
在右侧运行“所有进程中服务实例”或2009“所有正在运行的服务实例”的查询。
这将为您提供Biztalk在该时间点所做的一切清单。
您需要找到正在处理该消息的服务实例。无法真正帮助你,但它应该匹配正在进行发送的业务流程或发送端口的名称。
要确保它是正确的实例,请右键单击并查看消息。如果您可以看到失败的消息,那么您就拥有了正确的实例。
右键单击并终止服务实例。