Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/hadoop/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在消息正文中搜索Biztalk中的特定跟踪消息_Biztalk_Biztalk 2009 - Fatal编程技术网

如何在消息正文中搜索Biztalk中的特定跟踪消息

如何在消息正文中搜索Biztalk中的特定跟踪消息,biztalk,biztalk-2009,Biztalk,Biztalk 2009,在Biztalk 2009中,我可以从管理控制台查看“跟踪的消息事件”。我需要找到一条特定的消息(在正文中包含一个特定的字符串),我知道它的到达日期,但不知道时间 我怎么能轻易地做到这一点? 如果我可以右键单击所有消息并“保存到文件”,那么我就可以使用grep查找消息。但是,您一次只能在一条消息上执行此操作,而我今天有5188条消息(因此这是不实际的)。 如果有某种方法可以在“跟踪消息事件”对话框中输入消息条件,我可以很容易地做到这一点,但我认为Biztalk 2009不支持这一点 有没有一种方

在Biztalk 2009中,我可以从管理控制台查看“跟踪的消息事件”。我需要找到一条特定的消息(在正文中包含一个特定的字符串),我知道它的到达日期,但不知道时间

我怎么能轻易地做到这一点? 如果我可以右键单击所有消息并“保存到文件”,那么我就可以使用grep查找消息。但是,您一次只能在一条消息上执行此操作,而我今天有5188条消息(因此这是不实际的)。 如果有某种方法可以在“跟踪消息事件”对话框中输入消息条件,我可以很容易地做到这一点,但我认为Biztalk 2009不支持这一点


有没有一种方法可以使用SQL脚本直接从Biztalk数据库表中获取此信息,或者有没有另一种我不知道的简单方法?

首先,我假设您也激活了消息跟踪功能?您可能知道,BizTalk实际上仅在消息通过的端口或业务流程中激活了跟踪时才保存消息正文

但是,如果已激活跟踪,则消息正文首先保存在BizTalk MessageBox中,然后由跟踪代理移动到BizTalk中的DTA数据库中,如详细所述。在DTA数据库中,消息体以压缩格式保存,没有一种很好的方法来搜索整个消息体中的特定值

一种方法可以是使用on of提取消息,然后使用其他方法在文件中搜索消息


然而,如果可能的话,我会在将来推荐你推广你想要寻找的价值观。这将强制将值存储在DTA数据库的sperepare字段中,并使其可搜索。

非常感谢Riri-我最终使用了该链接中提到的第一种方法(Biztalk对象模型),并修改代码以处理GUID列表,而不是仅一个。这意味着我可以将该列添加到我的HAT结果“MessageInstanceID”中,复制HAT中返回的结果,将GUID拉入列表,并使用上面提到的代码提取它们。我将研究推广一些属性,以帮助将来的搜索。