Home > リファレンスガイド > プロジェクト開発ツール > デバッガ

デバッガ

Magic xpiデバッガは、Magic xpi スタジオの一部で、開発段階で統合プロジェクトのテストを行うことができます。デバッガは、プロジェクトを実行したり、実行プロジェクトに連動してプロジェクト実行をコントロールすることができます。実行シーケンスやフロー変数、Magic xpiサービス、ブレイクポイントをコントロールしたり参照したりすることができます。デバッガのコンテキストツリーは、サーバがプロジェクト内でどのようにフローを実行しているかを表示します。

 

デバッグセッションには、以下の方法のどれかで開始することができます。

    1. Spaceへの接続性をチェック

    2. チェッカの起動

    3. 全て保存

    4. ビルド

    5. 実行

デバッガは、[デバッグxpi]メニュー(実行、停止、ブレイク、ステップ、継続/実行、再起動)または、あらかじめ決められた設定(フローの中断、次のステップに設定、ブレイクポイント、ステップ、分岐)によってコントロールされます。これらのコマンドはサーバを実行モードもしくは停止モードにします。これはMagic xpi スタジオの上部に表示されます。停止モードでは、サーバは実行することなく、コマンドを待ちます。実行中のコンテキストは、サーバが実行モードになるまでは次のステップを実行しません。

  • デバッガが実行する時に、それは、Magic xpiがインストールされたフォルダを開かないようにしてください。これによって、デバッグ処理が妨げるかもしれません。.

  • すでにリビルドを実行していても、デバッグ処理が開始される前に、デバッガは常にプロジェクトをビルドします。この処理に長時間かかることがあるため、指定されたフローをデバッグしたい場合、フローデバッグオプションを使用することを推奨します。このオプションは、[ナビゲーション]ペイン内のフローのコンテキストメニューからアクセスすることができます。また、デバッグしたくないフローに対して非アクティブに設定することがもきます。

デバッガを実行すると、チェッカはすべてのアクティブなフローをチェックします。エラーのあるフローは非アクティブにマークされ、デバッグセッション中は実行されません。チェッカーがエラーを見つけた場合、エラーメッセージが表示され、プロジェクトはビルドされされません。[エラー表示]ボタンをクリックすると、[チェック結果]ダイアログボックスが開きます。このボタンをクリックすると、デバッガは継続されなくなります。

チェッカが終了すると、プロジェクトはビルドされ、プロジェクトibpファイルとmappergenerateフォルダが作成されます。プロジェクトibpファイルがデバッガによって作成されるまで、サーバでこのプロジェクトを実行することはできません。サーバでこのプロジェクトを実行したいのであれば、[リビルドソリューション]のオプションを選択する必要があります。

mappergenerateフォルダは生成プロセスの結果ファイルが含まれています。ibpファイル、またはmappergenerateフォルダがすでにプロジェクトのフォルダ内に存在している場合、既存のファイルはDebuggerSaveフォルダにコピーされ、新しいファイルはプロジェクトのルートフォルダに保存されます。

このビルド処理の後で、デバッガはその名前をもとにSpace内の実行プロジェクトを検索します。

プロジェクトがデバッグモードで動作していてスタジオが終了すると、スタジオが動作しているパブリッシュを停止した後、実行プロジェクトは内部で終了します。これによって、コントロールするスタジオの無いロジェクトをデバッグモードで実行することを防止します。さらに、実行プロジェクトにアタッチし、デバッグモードに移す時、スタジオが動作しているパブリッシングを停止すると、プロジェクトは生成モードに戻ります。Since version: 4.5

デバッグセッションで失敗したすべての処理またはアクションは、MagicXPI.Logファイルに記録されます(それは<Magic xpiフォルダ>\Studio\Log フォルダに作成されます)。メッセージボックスは、要求された処理でエラーが発生したことを示す内容を表示します。どのようなエラーが発生したか、そしてそれがどこに発生したかを確認するには、ログを参照してください。Since version: 4.5

デバッガを実行した後に、Outputビューに以下のメッセージが表示されます。このメッセージは、デバッグ処理には影響しないので、無視してください。

'DummyDebuggerConsole.exe' (Managed (v4.0.30319)): Loaded 'C:\Windows\Microsoft.Net\assembly\GAC_32\mscorlib\v4.0_4.0.0.0__b77a5c561934e089\mscorlib.dll', Skipped loading symbols. Module is optimized and the debugger option 'Just My Code' is enabled.

'DummyDebuggerConsole.exe' (Managed (v4.0.30319)): Loaded 'C:\Magic xpi 4.4\Studio\Extensions\Application\DummyDebuggerConsole.exe', Symbols loaded.

The program '[8920] DummyDebuggerConsole.exe: Managed (v4.0.30319)' has exited with code 0 (0x0).

[ナビゲーション]ペイン

デバッガの[ナビゲーション]ペインは、Magic xpi スタジオの通常モードと同じ方法でプロジェクトを操作することができます。

プロジェクトのフローとビジネスプロセスを操作し、フローやステップのプロパティを表示することができます。しかし、フローまたはコンポーネントを追加したり、プロパティを修正するなどの変更はできません。

再接続

デバッガと実行プロジェクトの間に接続の問題がある場合、スタジオは、決められた回数(リトライ回数とタイムアウト値)で再接続を試みます。 (Since version: 4.5).実行時の例外などの接続以外の問題の場合は、デバッガは直ちに終了します。

バージョンアップまたはマシンの変更

プロジェクトフォルダ内にDebug_Infoと呼ばれるファイルがあります。プロジェクトをアップグレードしたり、PCを変更した場合、このファイルを削除し、再度デバッガを起動してください。新しいDebug_Infoファイルが、現在のインストールフォルダ内に作成されます。

デバッグモード中の値の変更

デバッグモードで、リポジトリまたはマッパドキュメントにダーティーインジケータ(*)がある場合、サーバによって検索されたコンテキストデータとスタジオのコンテキスト定義の間に不整合があることに気付く必要があります。

例えば、マッパドキュメントが使用しているXMLファイルにフィールドを追加すると、不整合が発生するかもしれません。

以下のような場合、スタジオで定義された変数とサーバの間で不整合が発生するかもしれません。

デバッグモードでは、BLOBタイプ変数を修正することはできません。

稼働中のプロジェクト開発

このような場合に、2つのMagic xpiインストール環境を持つ必要があります。両方の環境(開発環境と運用環境)は、同じ場所に対して書き込みを行い、どのメッセージがどの環境に関連しているかが分からないため、両方の環境に対して同じ内部データベースを使用することはできません。

  • フローの[タイムアウト]プロパティは、デバッグモードでは実行されません。これはデバッガがプロジェクト実行を開始した場合のみ適用されます。デバッガが実行中のプロジェクトにアタッチされた場合、[タイムアウト]プロパティが[フロー]プロパティに定義された通りに動作します。

  • デバッガを開始すると DebugSRV.ini という一時的な ini ファイルがプロジェクトのディレクトリに作成されます。これはデバッガが停止されると削除されます。

  • 最後のスタジオのインスタンスは、ブレークポイントと設定された次のステップなどの、デバッグ情報によってSpaceを更新します。従って、複数のスタジオのインスタンスが実行している場合、予期しない行動が、最後ではないスタジオのインスタンスで発生するかもしれないことに気付く必要があります。Since version: 4.5

デバッガのオンプレミスインストールの設定

Since version: 4.9

Tomcatインストールでデバッガサーバ側をホストするには、以下の手順を実行する必要があります。また、このサーバを参照するようにStudioの設定を変更する必要があります。

  1. Magic xpi 4.9をインストールしてください。

  2. Magic xpiのインストールが完了したら、Magic xpi 4.9 Debuggerという名前のWindowsサービスが起動して実行中であることを確認します。このサービスがインストール後に実行されていない場合は、手動で起動してください。

  3. Magic xpi GSAMagic Monitorの両方のサービスが起動され、実行されていることを確認してください。

  4. Debuggerサービスは、デフォルトではポート8095で起動します。

  5. デフォルトポートの値は、Studio\Debugger\apache-tomcat-9.0.35\conf の下にある server.xmlファイルで変更することができます。以下のエントリでポートを見つけて編集してください。
    <Connector port = "8095" protocol = "HTTP / 1.1" connectionTimeout = "20000" redirectPort = "8443" />

  6. Studio側での同じ変更は、Studio\Extensions\ApplicationにあるiBolt.dll.configファイルで行うこともできます。以下のエントリでDebuggerPortを見つけて編集してください。
    <add key="DebuggerPort" value="8095" />

  7. 次に Magic xpi Studio 4.9を起動してください。プロジェクトを開き、F5キーを押下してデバッグモードに入ります。

Magic xpi デバッガはTomcatのバージョンが7.0.69以下の場合、互換性がありません。Tomcatのバージョンが7.0.69以下の場合、デバッガサービスが設定されていると、デバッガの起動に失敗します。

関連トピック: