如何在 Biztalk 中的消息正文中搜索特定跟踪消息
在 Biztalk 2009 中,我可以从管理控制台查看“跟踪的消息事件”。我需要找到一条特定的消息(正文中包含特定的字符串),我知道该消息的到达日期,但不知道时间。
我怎样才能轻松地解决这个问题? 如果我可以右键单击所有消息并“保存到文件”,那么我就可以使用 grep 来查找消息。但是,您一次只能对一条消息执行此操作,而我今天有 5188 条消息(所以这不切实际)。 如果有某种方法可以在跟踪的消息事件对话框中输入消息条件,我可以轻松做到这一点,但我不相信 Biztalk 2009 支持这一点。
有没有办法使用 SQL 脚本直接从 Biztalk 数据库表获取此信息,或者是否有另一种我不知道的简单方法来做到这一点?
In Biztalk 2009, I can view the 'Tracked Message Events' from the admin console. I need to find a particular message (containing a particular string in the body) for which I know the day of arrival, but not the time.
How can I easily go about this?
If I could right click and 'Save to file' on all messages, I could then use grep to find out the message. However, you can only do this on one message at a time, and I have 5188 messages for this day (so this is not practical).
If there was some way to enter the message criteria in the tracked message events dialog, I could easily do it, but I don't believe Biztalk 2009 supports this.
Is there a way to get this information directly from the Biztalk database tables using a SQL script, or is there another easy way to do this that I am not aware of?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
首先我假设您还激活了消息跟踪?您可能知道,如果在消息通过的端口或编排中激活了跟踪,BizTalk 实际上只会保存消息正文。
但是,如果已激活跟踪,则消息正文首先保存在 BizTalk MessageBox 中,然后由跟踪代理移动到 BizTalk 中的 DTA 数据库 - 如详细所述 此处。在 DTA 数据库中,消息正文以压缩格式保存,并且没有真正的好方法来搜索整个正文以查找特定值。
一种方法可能是使用 这些方法来提取消息,然后使用其他方式来搜索文件,例如。
但是,如果可能的话,我将来会建议您推广您想要寻找的价值观。这将强制将值存储在 DTA 数据库的 sperepare 字段中并使其可搜索。
First of I then assume that you also have the tracking of messages activated? As you probably know BizTalk actually only saves the message body if tracking has been activated on the ports or in the orchestration that messages passes thru.
But if tracking has been activated the message body is first saved in the BizTalk MessageBox and then moved by the tracking agent to the DTA database in BizTalk - as described in detail here. Within the DTA database the message body is saved in a compress format and there isn't really a good way to search the whole body for a specific value.
One way could be to use on of these methods to extract the messages and then use some other way of searching the messages once on file for example.
Howevere if possible I would then in the future recommend you to promote the values you'd like to search for. That would force the values to be stored in sperepare fields in the DTA databse and make them searchable.