ワークベンチのフロー・デバッガーを使用して、メッセージ・フロー内のメッセージを追跡します。
フロー・デバッガーを用いるには、ワークベンチで「デバッグ」パースペクティブを使用します。
「デバッグ」パースペクティブの概要、およびそれが提供するビューについては、「デバッグ」パースペクティブを参照してください。
フロー内にブレークポイントを設定してからフロー内をステップスルーできます。
ステップスルーしながら、メッセージ変数や、ESQL コード、Java コード、およびマッピングによって使用される変数を調べて変更を加えることができます。以下を含むフロー内のさまざまなエラー状態をデバッグできます。
- 不適切につながれたノード (間違った入力に接続された出力など)
- 遷移状態での不適切な条件付き分岐
- フロー内の意図されない無限ループ
単一のワークベンチから、デバッガーを 1 つ以上の実行グループに接続し、異なる実行グループにある複数のフローを (したがって複数のメッセージも) 同時にデバッグできます。しかし、ある実行グループをデバッグできるのは一度に 1 人のユーザーだけです。したがって、1 人がある実行グループにデバッガーを接続すると、デバッグ・セッションを終了するまで、他のユーザーは同じ実行グループにデバッガーを接続できなくなります。
メッセージ・フローをデバッグする場合は、以下の理由から、実稼働環境で使用されていないブローカーを使用します。
- デバッグにより、ブローカーにデプロイされたすべてのメッセージ・フローのパフォーマンスが低下することがあります。
同じ実行グループ内の他のフロー、および同じブローカーを共有する他の実行グループ内のフローが、潜在的なリソース競合の影響を受けることがあります。
- デバッグは Rational® Agent Controller (RAC) によってサポートされています。これはブローカーを実行するシステム上にインストールする必要があります。
RAC を WebSphere® Message Broker と同じシステム上にインストールする場合は、セキュリティーを無効にしてこれをインストールする必要があります。セキュリティーが有効の場合、デバッガーが機能しないためです。
セキュリティーを無効にすると、どのユーザーがメッセージ・フローをデバッグできるかに関して制限を課すことはできません。
この制御不足により、機密漏れが生じることがあります。
メッセージ・フロー・ノード内のコードおよびマッピングのデバッグ
フロー・デバッガーを使用して、メッセージ・フロー・ノード内のコードとマッピングの動作を調べることができます。
メッセージ・フローをデプロイした後に、以下にリストしているノードの直前にブレークポイントを設定することで、フローがそのブレークポイントで一時停止するときに、コードまたはマッピングを行ごとにステップスルーすることができます。
これにより、ロジックを調べ、取られるアクションとその結果を確認することができます。
追加のブレークポイントを設定したり、変数を調べて変更したりすることもできます。
以下のノードには、ESQL コードのモジュールを含めることができます。
- Compute ノード
- Filter ノード
- Database ノード
以下のノードには、Java コードのモジュールを含めることができます。
- ユーザー定義のノード
- JavaCompute ノード
以下のノードには、マッピングを含めることができます。
- Mapping ノード
- DataInsert ノード
- DataUpdate ノード
- DataDelete ノード
- Extract ノード
- Warehouse ノード
制約事項
メッセージ・フローのデバッグ時には、以下の制約事項が適用されます。
- 64 ビットの実行グループにデプロイ済みのフローをデバッグすることはできません。フロー・デバッガーでサポートされているのは 32 ビットの実行グループのみです。
- 同じバージョンのブローカーと Message Brokers Toolkit を使用する必要があります。例えば、Message Brokers Toolkit バージョン 6.0 を、それより前のバージョンのブローカーにデプロイしたメッセージ・フローをデバッグするために使用することはできません。
- インターネットを介してメッセージ・フローをデバッグしないでください。セキュリティーの問題がある場合があります。
ブローカー・ドメインで 1 つ以上のブローカーとワークベンチとの間にファイアウォールがある場合、RAC の構成を変更してからでなければそれを正常に使用できないことがあります。
このタスクの実行方法の説明は、ファイアウォールを使用した RAC の構成を参照してください。