1

Biztalk 2009では、管理コンソールから「追跡されたメッセージイベント」を表示できます。到着日はわかっているが時刻はわかっていない特定のメッセージ(本文に特定の文字列を含む)を見つける必要があります。

どうすればこれを簡単に行うことができますか?すべてのメッセージを右クリックして[ファイルに保存]を選択できれば、grepを使用してメッセージを見つけることができます。ただし、これは一度に1つのメッセージに対してのみ実行でき、この日のメッセージは5188件あります(したがって、これは実用的ではありません)。追跡されたメッセージイベントダイアログにメッセージ基準を入力する方法があれば、簡単に入力できますが、Biztalk2009がこれをサポートしているとは思いません。

SQLスクリプトを使用してBiztalkデータベーステーブルからこの情報を直接取得する方法はありますか、それとも私が知らない別の簡単な方法がありますか?

4

1 に答える 1

3

まず、メッセージの追跡もアクティブになっていると思いますか?ご存知かもしれませんが、BizTalkは実際には、メッセージが通過するポートまたはオーケストレーションで追跡がアクティブ化されている場合にのみメッセージ本文を保存します。

ただし、追跡がアクティブ化されている場合、メッセージ本文は最初にBizTalkメッセージボックスに保存され、次に追跡エージェントによってBizTalkのDTAデータベースに移動されます(ここで詳しく説明します) 。DTAデータベース内では、メッセージ本文は圧縮形式で保存され、本文全体で特定の値を検索する良い方法はありません。

1つの方法は、これらのメソッドの1つを使用してメッセージを抽出し、他の方法を使用して、たとえばファイルに一度メッセージを検索することです。

ただし、可能であれば、将来的には、検索したい値を宣伝することをお勧めします。これにより、値がDTAデータベースのsperepareフィールドに強制的に格納され、検索可能になります。

于 2011-08-23T08:02:49.653 に答える