第15章 Camel デバッガーの実行

Camel デバッガーは、ローカルで実行中のルーティングコンテキストと、リモートで実行中のルーティングコンテキストで実行できます。デバッグモードの両方で、同じ基本的な機能と機能を使用できます。

  • ローカルのデバッグ: Fuse Tooling を使用して同じ JVM で実行されているルーティングコンテキストでデバッガーを実行します。このモードは、Project Explorer ビューでプロジェクトのルーティングコンテキストを選択し、コンテキストメニューから Debug AsLocal Camel Context を選択してアクティベートされます。
  • リモートデバッグ: ローカルマシンまたはリモートマシン上の別の JVM で実行されているルーティングコンテキストでデバッガーを実行します。このモードでは、サポートされているランタイムサーバーがローカルマシンまたはアクセス可能なリモートマシンにインストールされている必要があります。これは、リモートランタイムの接続詳細を指定するデバッグ起動設定を作成して実行することでアクティベートされます。
注記

プロジェクトに Java コードが含まれている場合は、標準の Eclipse Java デバッグツールを使用してデバッグできます。ローカルデバッグの場合は、自動的に利用できます。リモートデバッグの場合は、リモート Camel コンテキストおよび Java 起動オプションを 使用する必要があります( 「リモートで実行中のルーティングコンテキストのデバッグ」を参照してください)。

注記

Camel デバッガーを起動する前に、ルーティングコンテキストファイルでブレークポイントを設定する必要があります。

15.1. ローカルで実行中のルーティングコンテキストのデバッグ

手順

  1. Project Explorer ビューで、デバッグするルーティングコンテキストファイルを選択します。
  2. 選択したファイルを右クリックしてコンテキストメニューを開き、Debug AsLocal Camel Context の順に選択します。

    Fuse Tooling は Camel ルートをビルドし、Apache Camel を起動し、ルーティングコンテキストを起動し、JMX を有効にし、ルーティングコンテキストでルートを起動し、ブレークポイントをノードに追加し、Camel デバッガーを有効にします。

    Camel デバッガーは、最初のブレークポイントヒット (メッセージの受信) でルーティングコンテキストの実行を一時停止し、Debug パースペクティブを開くかどうかを尋ねます。

    DBCnfrmSwitchToDBView
  3. Yes をクリックして Debug パースペクティブを開きます。

    Debug パースペクティブが開き、実行中のルーティングコンテキストで最初に発生した最初のブレークポイントでルーティングコンテキストが一時停止されます。

    重要

    ブレークポイントは、デバッガーが自動的に再開した後に最大 5 分間保持され、次のブレークポイントまたはルーティングコンテキストの最後に移動します。

    openDBPerspective
    注記

    コンソールの出力を表示する場合、パースペクティブをオンにしたときに開いていなければ Console ビューを開きます。

    注記

    デフォルトでは、Debug パースペクティブには Outline ビューが表示されます。このビューは、実行中のルーティングコンテキストで個別のルートを切り替える手段を提供します。ルーティングコンテキストに単一のルートが含まれている場合は、Outline ビューを閉じると、他のビューを展開するためのスペースが解放され、デバッガー出力へのアクセスと調査が容易になります。

ルーティングコンテキストを介したメッセージエクスチェンジの進捗監視

stepover co (ステップオーバー)をクリックして、ルーティングコンテキストで実行の次のノードにジャンプします。 resume co (再開)をクリックして、ルーティングコンテキストの次のアクティブなブレークポイントで実行を続行します。

debug StateChange