Studio
2022.10
バナーの背景画像
Studio ガイド
最終更新日 2024年3月1日

リモート デバッグ

オートメーションの動作は、マシンによって異なることがあります。オートメーションが実行される運用環境のマシンの設定が、オートメーションが設計されたマシンと異なる場合 (たとえば、マシンのハードウェア、ソフトウェア、権限が異なる場合、またはマシンが分離されたネットワークにある場合)、そのマシン上のロボットでプロセスをテストし、デバッグする必要があります。

リモート デバッグ機能を使用することにより、リモート マシンにデプロイされたロボット (クロスプラットフォーム プロジェクトを実行できる Linux 環境のロボットなど) で、有人プロセスと無人プロセスを実行およびデバッグできます。

次のいずれかの接続の種類で、リモート ロボットに接続できます。

  • リモート マシン - リモート マシンでロボットへの TCP/IP 接続を確立します。
  • Unattended ロボット - Orchestrator を使用している同じテナントの Unattended ロボットに接続します。

リモート デバッグを使用するには、そのプロジェクトが Studio で開かれている必要があります。ソース管理を使用している場合は、確実に最新バージョンのプロジェクトで作業できるように、[パブリッシュ直前にチェックインを強制実行] デザイン設定を有効にすることをお勧めします。

リモート マシン接続

リモート マシン接続を使用してプロジェクトを実行またはデバッグするには、以下の手順を実行します。

  1. すべての前提条件が満たされていることを確認します。
  2. リモート マシンで、リモート デバッグ要求を受け入れるロボットを設定します。
  3. 対話型認証が強制されている Orchestrator で、無人プロセスを実行またはデバッグする場合は、リモート ロボットが以下のいずれかの条件を満たしていることを確認します。

    • 対話型サインインを使用して Orchestrator に接続されている。
    • クライアント資格情報またはマシン キーを使用して接続されており、ユーザーが Assistant からサインインしている
    • クライアント資格情報またはマシン キーを使用して接続されており、Assistant からサインインしているユーザーがいない。また、マシンに対するトラブルシューティング セッションが Orchestrator で有効化されている。詳しくは、「無人プロセスをデバッグする」をご覧ください。
  4. Studio で、以下の手順を実行します。

    1. リモート ロボットへの接続を設定します。
    2. リモート実行が有効化されていることを確認します。
    3. プロジェクトを実行またはデバッグします。

前提条件

  • Studio のマシンとリモート マシン間に TCP/IP 接続が確立されている。
  • リモート環境の Robot のバージョンが Studio と同じである。

リモート マシンでロボットを設定する

リモート ロボットをデバッグで使用するには、事前に Studio からのリモート デバッグ要求を受け入れるようにマシン上の UiPath.RemoteDebugging.Agent ユーティリティを設定する必要があります。

  1. インストール ディレクトリに移動します。

    • Windows 環境のロボットの場合 - UiPath のインストール フォルダー (既定では、マシン単位のインストールの場合は %PROGRAMFILES%\UiPath\Studio、ユーザー単位のインストールの場合は %localappdata%\Programs\UiPath\Studio) でコマンド プロンプトを開きます。
    • Linux 環境のロボットの場合 - コマンド ライン ターミナルから /root/application に移動します。
    • macOS ロボットの場合 - zsh から /Applications/UiPath Assistant.app/Contents/Robot に移動します。
  2. 次のコマンドを実行します。

    • Windows 環境のロボットの場合 - UiPath.RemoteDebugging.Agent.exe enable --port <port_number> --password <pasword> --verbose
    • Linux 環境のロボットの場合 - ~/application # dotnet ./UiPath.RemoteDebugging.Agent.dll enable --port <port_number> --password <pasword> --verbose
    • macOS ロボットの場合 - dotnet UiPath.RemoteDebugging.Agent.dll --port <port_number> --password <pasword> --verbose

      コマンドの引数はすべて任意です。

    • --port <port_number> - Studio からリモート デバッグ コマンドを受け取るために使用するポートを入力します。指定しないと、既定でポート 8573 が使用されます。

      ポートがファイアウォールで開かれていて、他のアプリケーションにまだバインドされていない必要があります。

    • --password <password> - リモート デバッグ エージェントへの接続を設定するときに Studio で指定する必要のあるパスワードを入力します。
    • --verbose - 詳細な情報をコンソールに記録します。
  3. 次のメッセージが表示されます。

    Robot on machine <hostname> is waiting for remote debugging instructions on port <port_number>

  4. hostnameport_number の値を書き留めます。これらの値は、Studio で接続を設定するときに指定する必要があります。

ロボットがリモート デバッグ ステートの間は、Orchestrator またはローカルの Assistant から有人ジョブまたは無人ジョブを実行することはできません。Robot のインストールがライセンスされていないマシンにも、リモート デバッグ コマンドを送信できます。

リモート マシン接続を設定する

  1. Studio で、[デバッグ] タブを選択します。
  2. リボンで [リモート デバッグ] の下にある矢印を選択してから、[リモート デバッグを設定] を選択して [リモート デバッグ設定] ウィンドウを開きます。
  3. [接続の種類] ドロップダウンから [リモート マシン] を選択します。
  4. 対応するボックスに、以下の情報を入力します。

    • ホスト - リモート マシンのホスト名または IP アドレス。
    • ポート - 使用するポート。既定のポートは 8573 です。
    • パスワード - ロボット端末でリモート デバッグ エージェントが設定されたときに指定されたパスワード (該当する場合)。
  5. (任意) 現在の設定で接続を確立できることを確認するには、[テスト接続] をクリックします。
  6. [保存] をクリックします。



Unattended ロボット接続

Orchestrator に接続されている Unattended ロボットを使用して、リモートでプロジェクトを実行またはデバッグするには、以下の手順を実行します。

  1. すべての前提条件が満たされていることを確認します。
  2. リモート ロボットへの接続を設定します。
  3. リモート実行が有効化されていることを確認します。
  4. プロジェクトを実行またはデバッグします。

前提条件

  • Studio と対象のロボットが同じ Orchestrator テナントに接続されている。
  • Studio、対象のロボット、Orchestrator が v2021.10 以降を実行している。v2021.10.6 以降のバージョンの Studio でプロジェクトを実行するために必要となる、Robot の最小バージョンは v2021.10.6 です。
  • Studio にサインインしているユーザーが、対象のロボットと同じフォルダー コンテキストでのジョブの開始権限およびストレージ バケットとストレージ ファイルの作成・削除権限を持っている。さらに、ロボット アカウントがストレージ バケットとストレージ ファイルの表示権限を持っている。
  • Unattended ロボットが設定済みであり、マシンで UnattendedNonProduction、または Testing のいずれかのランタイム ライセンスを利用できる。

    注: リモート デバッグ用の Testing ランタイムは、Orchestrator 2022.4 以降でサポートされています。
  • フォアグラウンド プロセスをデバッグする場合は、Orchestrator でロボットに対して [フォアグラウンド オートメーションを実行] オプションが有効化されている。
  • トラブルシューティング セッションを使用する場合は、ロボットを Orchestrator に接続した後に有効化する必要があります。

Unattended ロボット接続を設定する

  1. Studio で、[デバッグ] タブを選択します。
  2. リボンで [リモート デバッグ] の下にある矢印を選択してから、[リモート デバッグ設定] を選択します。
  3. [接続の種類] ドロップダウンから [Unattended ロボット] を選択します。
  4. Studio のステータス バーから選択した Orchestrator フォルダーにある接続済みの利用可能なマシンを使用するには、[保存] をクリックします。接続先のマシンを選択する場合は、以下のオプションを使用します。

    • ユーザー - Orchestrator フォルダーに割り当てられた Unattended ロボットを持つアカウントを選択します。
    • マシン - Orchestrator フォルダーからマシンまたはテンプレートを選択します。
    • ホスト名 - 接続済みマシンのリストからマシンを選択します。

      注: Orchestrator で設定されたアカウントに変更を加えた場合、Studio のステータス バーのボタンを使用して Orchestrator の接続を更新し、このウィンドウに反映されるようにします。


リモート実行

リモート デバッグ接続が確立されている場合、リボンの [リモート デバッグ] ボタンをクリックして、リモート実行とローカル実行を切り替えることができます。実行操作またはデバッグ操作を選択する前に、必要なオプションが有効化されていることを確認してください (リモートまたはローカル)。

  • ボタンが灰色で強調表示されている場合、すべての実行操作とデバッグ操作 ([ファイルをデバッグ][ファイルを実行][プロジェクトをデバッグ][プロジェクトを実行][ステップ イン/オーバー/アウト][アクティビティをテスト][このアクティビティまで実行/このアクティビティから実行]) はリモート ロボットで実行されます。



  • ボタンが灰色で強調表示されていない場合、すべての実行操作とデバッグ操作はローカル ロボットで実行されます。



リモート デバッグ操作はローカル デバッグ操作とほぼ同じであり、ローカル デバッグで使用できる機能はすべて、リモート デバッグでも使用できます。[デバッグ] タブからトリガーされたリモート実行が進行中の場合、Studio のステータス バーはで表示されます。

リモート デバッグに使用する接続の種類に応じて、リモート ロボットは次のように、プロジェクトの実行に必要なアクティビティ パッケージを取得します。

  • リモート マシン接続 - Studio はプロジェクト依存関係とアクティビティ フィード (パッケージ ソース) のリストをリモート ロボットに送信します。ロボットは Studio から提供されたフィードを使用して、必要なパッケージをダウンロードします。
  • Unattended ロボット接続 - Studio はプロジェクト依存関係のリストのみをリモート ロボットに送信します。ロボットは Orchestrator フィードとリモート ロボットで設定されたアクティビティ フィードを使用して、必要なパッケージをダウンロードします。

既知の制限事項

  • リモート マシン接続を使用するときに、デバッグを長期間停止すると、リモート マシンで接続がアクティブであるように見えても、Studio で接続が閉じられるエラーが発生することがあります。この問題を回避するには、クラウドまたはオンプレミスのロード バランサーで TCP アイドル タイムアウトの値を増やします。
  • 長期実行のワークフローのリモート デバッグは、Unattended ロボット接続でのみサポートされています。
  • Unattended ロボット接続を使用するときに、[ピクチャ イン ピクチャ] オプションを選択しても、別のセッションで実行が開始されることはありません。

リモート デバッグ接続を閉じる

デバッグがまったく実行されていない場合に、リモート デバッグ接続を無効化するには、[リモート デバッグ設定] ウィンドウを開き、[接続の種類][無効] に設定して、[保存] を選択します。

Was this page helpful?

サポートを受ける
RPA について学ぶ - オートメーション コース
UiPath コミュニティ フォーラム
UiPath ロゴ (白)
信頼とセキュリティ
© 2005-2024 UiPath. All rights reserved.