スクリプトタスク

最終公開日 : Nov 13, 2026

はじめに

ヒント:
スクリプトタスクはマシンレベルで動作します。ユーザーセッションレベルでタスクを実行するには、代わりに外部タスクを使用します。
このページでは、独自の環境管理ニーズに合わせてカスタマイズしたスクリプトタスクを追加できます。その後、Workspace Environment Management™ (WEM) で、該当する構成セットでそれらのタスクを構成することで自動化できます。
現在、以下の組み込みスクリプトタスクを利用できます。

クラウドヘルスチェック

Virtual Delivery Agent (VDA) の健全性を測定するチェックを実行できます。VDAヘルスチェックは、一般的なVDA登録およびセッション起動の問題の考えられる原因を特定します。クラウドヘルスチェックは、エージェントホストのローカルシステムアカウントで実行されます。

Windowsサービス管理

Windowsサービス管理は、1つ以上のWindowsサービスの開始、停止、再起動、構成など、Windowsサービスに関する頻繁に使用される機能を提供します。

Windowsサービスの再起動

このスクリプトは、Windowsサービスのステータスを確認します。サービスが現在実行されておらず、ForceStartパラメーターが指定されている場合、スクリプトはサービスを開始します。現在の状態に関係なく、サービスが実行中で強制的な開始を必要としない場合、最新の構成で動作していることを確認するため、または停止状態から回復するために再起動されます。
パラメーター
名前 タイプ デフォルト 必須 注
ServiceNames 文字列 BrokerAgent いいえ 管理するサービスの名前を指定します。指定しない場合、BrokerAgent がデフォルトになります。複数のサービスを入力する必要がある場合は、サービス名をコンマで区切ります。すべてのスペースはトリミングされます。例: ServiceA, ServiceB。
ForceStart ブール値 真 いいえ サービスが実行されていないと判断された場合に、サービスを開始するかどうかを示します。実行中のサービスには影響しません。実行中のサービスは、メンテナンスまたは回復の目的で常に再起動されます。

Windowsサービスを停止する

このスクリプトは、指定されたWindowsサービスの一覧を停止します。スクリプトは、各サービスがインストールされているかを確認し、サービスを強制的に停止しようとします。その後、スクリプトはサービスが正常に停止したかどうかを確認し、ステータスを報告します。
パラメーター
名前 タイプ デフォルト 必須 注
ServiceNames 文字列 BrokerAgent 偽 管理するサービスの名前を指定します。指定しない場合、BrokerAgent がデフォルト値となります。複数のサービスを入力する必要がある場合は、サービス名をコンマで区切ってください。すべてのスペースはトリミングされます。例: ServiceA, ServiceB。

Windowsサービスの設定

このスクリプトは、起動タイプや回復アクションを含むWindowsサービスの設定を調整します。
パラメーター
名前 タイプ デフォルト 必須 注
ServiceNames 文字列 ヌル 真 管理するサービスの名前を指定します。指定しない場合、BrokerAgent がデフォルト値となります。複数のサービスを入力する必要がある場合は、サービス名をコンマで区切ってください。すべてのスペースはトリミングされます。例: ServiceA, SerivceB。
StartupType 文字列 ヌル 偽 サービスのスタートアップの種類を設定します。有効なオプションは、自動、手動、または無効です。
FirstFailureAction 文字列 ヌル 偽 最初の障害に対するアクションを定義します。例: 再起動/なし。
SecondFailureAction 文字列 ヌル 偽 2回連続の障害に対するアクションを定義します。
SubsequentFailureAction 文字列 ヌル 偽 2回目以降のすべての障害に対するアクションを定義します。

サーバーの再起動

マシンの再起動

このスクリプトは、オプションの遅延と強制オプションを使用してローカルマシンを再起動します。
パラメーター
名前 タイプ デフォルト 必須 注
Force ブール値 真 いいえ 指定した場合、未保存のデータやアクティブなユーザーセッションを無視して、即座に再起動を強制します。
Delay 整数 10 いいえ コンピューターが再起動されるまでの遅延時間(秒単位)を指定します。3秒から30秒の間である必要があります。デフォルトは10秒です。

CDFトレース管理

CDFトレースの開始

このスクリプトは、CTLファイルまたはCTLファイルの事前定義されたカテゴリを入力として受け取り、CDFツールプロセスを開始し、CTLファイル内のモデルのトレースを開始します。
パラメーター
名前 タイプ デフォルト 必須 注
traceOutputPath 文字列 C:\ProgramData\Citrix\WEM\CDFLogs いいえ CDFレポートの出力パスを指定します。
category 文字列 all いいえ
トレースを開始するための事前定義されたカテゴリを指定します。サポートされている値は次のとおりです:
  • all
  • always on tracing
  • desktop Server os vda
  • delivery controller
  • federated authentication service
  • provisioning service
  • universal print server
  • citrix director
  • citrix studio
  • session recording administration
  • session recording player
  • citrix workspace app for windows
ctlFilePath 文字列 なし いいえ トレースを開始するctlファイルを指定します。

CDFトレースの停止

このスクリプトは、CDFツールのトレースを停止します。

CDF ログのクリーンアップ

ストレージ消費を節約するために、CDF トレースログをクリーンアップすることは有用です。指定されたディレクトリ下の CDF ファイルを削除する機能を提供する必要があります。
名前 種類 デフォルト 必須 注
FileAgeDays 整数 3 偽 日単位での経過時間しきい値を指定します。この値よりも古いファイルとフォルダーは削除されます。デフォルト値は 3 日で、このパラメーターはオプションです。FileAgeDays が 1 日未満の場合、すべてのファイルまたはディレクトリが削除されます。
ヒント:
  • カスタムスクリプトタスクと組み込みスクリプトタスクを区別できます。カスタムタスクには「CUSTOM」ラベルが付けられ、組み込みタスクには「CITRIX」ラベルが付けられます。
  • 組み込みスクリプトタスクは常にカスタムタスクの上に表示されます。カスタムスクリプトタスクは、最終変更時刻に基づいて降順でソートされます。
この機能を使用すると、独自の管理ニーズに合わせて WEM の機能を拡張できます。たとえば、組み込みのスクリプトタスクである Cloud Health Check を使用すると、VDA の健全性を測定できます。このタスクはスクリプトベースです。独自のスクリプトファイルを作成し、そのスクリプトファイルを WEM にスクリプトタスクとして追加することで、WEM を使用してタスクを自動化できます。
スクリプトタスクが実行されるたびに、対応するレポートが生成されます。レポートには、タスクの実行日時、タスクの実行結果などの情報が含まれており、タスクに関連するアクティビティを監査できます。
スクリプトタスクは構成セットレベルで機能します。スクリプトタスクを使用するための一般的なワークフローは次のとおりです。
  1. スクリプトタスクページで、スクリプトタスクを追加します。
  2. スクリプトタスクを有効にする構成セットに移動します。
  3. その構成セットのスクリプトタスク設定ページで、スクリプトタスクを有効にします。「スクリプトタスク設定」を参照してください。
  4. 必要に応じて、スクリプトタスクに関連するレポートを表示します。これには2つの方法があります。
    • 監視 > レポートに移動し、そこでレポートを表示します。
    • スクリプトタスクまたは構成セットのスクリプトタスク設定ページに移動します。スクリプトタスクを見つけて、省略記号を選択し、レポートの表示を選択します。すると、関連するフィルターが自動的に適用された監視 > レポートページに移動します。そこで関連レポートを確認できます。
スクリプトタスクレポートの詳細については、「レポート」を参照してください。

スクリプトタスクを追加する

スクリプトタスクを追加するには、次の手順を実行します。
  1. スクリプトタスクページで、スクリプトタスクの追加をクリックします。
  2. スクリプトタスクの追加ウィザードで、次の設定を構成し、保存をクリックします。
    • タスク名。タスクの名前を指定します。
    • タグ。既存のタグから選択するか、コンマで区切ってタグを入力します。タグは20文字以内である必要があります。タグはキーワードやラベルのようなものです。タグを使用すると、新しい方法でタスクを識別できます。また、フィルターとして機能し、重要な基準に応じてスクリプトタスクのタスク表示を再配置できます。タグはいくつでも使用できます。
    • 説明。必要に応じて、タスクを識別するのに役立つ追加情報を指定します。
    • ファイルの種類。タスクのファイルの種類を選択します。2種類のファイルがサポートされています。
      • PowerShell。個別のPowerShellスクリプトファイル。
      • ZIP。複数のファイルを1つのzipファイルにバンドルします。10 MBを超えるzipファイルはサポートされていません。zipファイルをアップロードした後、スクリプトタスクの開始時に実行するファイルを示すエントリポイントを指定します。エントリポイントファイルは、フォルダー構造内で3レベルより深くならないように注意してください。
    • ファイルのアップロード。「参照」をクリックし、ファイルに移動して選択し、「開く」をクリックします。「スクリプトタスクの追加」ウィザードに戻ります。
    • 権限の付与。スクリプトタスクに付与するアクセスレベルを指定します。各オプションに関連付けられている権限を理解していることを確認してください。
      • フルアクセス。フルアクセスが割り当てられたスクリプトタスクは、広範なローカルアクセス権を持ちます。選択した場合、スクリプトタスクはローカルシステムアカウントで実行されるかのように権限が付与されます。
      • 制限付きアクセス (ネットワークアクセスあり)。制限付きアクセス (ネットワークアクセスあり) が割り当てられたスクリプトタスクは、広範なローカルアクセス権を持ちませんが、ネットワークリソースにアクセスできます。選択した場合、スクリプトタスクはネットワークサービスアカウントで実行されるかのように権限が付与されます。
      • 制限付きアクセス (ネットワークアクセスなし)。制限付きアクセス (ネットワークアクセスなし) が割り当てられたスクリプトタスクは、広範なローカルアクセス権を持たず、ネットワークリソースにアクセスできません。選択した場合、スクリプトタスクはローカルサービスアカウントで実行されるかのように権限が付与されます。
      詳細については、Microsoft のドキュメント <https://docs.microsoft.com/ja-jp/windows/security/identity-protection/access-control/security-identifiers#well-known-sids> を参照してください。
  • 作業フォルダー。オプションで、エンドユーザーのオペレーティングシステム上のローカルフォルダーの絶対パスを入力します。作業フォルダーは、ファイルが開始するときの現在のフォルダーです。環境変数(例: %ProgramFiles%)を使用してパスを構築できます。指定しない場合、PSScriptRoot がデフォルトの作業フォルダーとして使用されます。PSScriptRoot の詳細については、Microsoft のドキュメント <https://docs.microsoft.com/ja-jp/powershell/module/microsoft.powershell.core/about/about_automatic_variables?view=powershell-7.1> を参照してください。
  • このタスクは出力ファイルを生成しますか。追加するタスクが出力ファイルを生成するかどうかを選択します。
  • 出力パス。ファイルが存在するフォルダーからの相対パスを入力します。パスにはファイル名とファイル名拡張子を含める必要があります。例: output\report.txt。

スクリプトタスクを編集する

スクリプトタスクを編集するには、次の手順を実行します。
  1. 「スクリプトタスク」ページで、タスクを見つけます。必要に応じて、検索ボックスを使用してタスクをすばやく検索します。
  2. タスクの省略記号をクリックし、「タスクの編集」を選択します。「スクリプトタスクの編集」ウィザードが表示されます。
  3. 「タスク情報」タブで、必要に応じて設定を構成します。
  4. 「スクリプトコンテンツ」タブで、スクリプトコンテンツを表示します。
  5. 「保存」をクリックします。
注:
組み込みのスクリプトタスクは編集できません。

スクリプトタスクを削除する

スクリプトタスクを削除するには、次の手順を実行します。
  1. 「スクリプトタスク」ページで、タスクを見つけます。必要に応じて、検索ボックスを使用してタスクをすばやく検索します。
  2. タスクの省略記号をクリックし、「タスクの削除」を選択します。
重要:
  • 組み込みのスクリプトタスクは削除できません。
  • 現在一部の構成セットで有効になっているスクリプトタスクを削除するには、まずそれらの構成セットで無効にします。

スクリプトタスクを複製する

スクリプトタスクを複製するには、次の手順を実行します。
  1. 「スクリプトタスク」ページで、タスクを見つけます。必要に応じて、検索ボックスまたはタグを使用してタスクをすばやく見つけます。
  2. タスクの省略記号をクリックし、「タスクの複製」を選択します。
注:
タスクを複製する際、重複する名前を避けるために名前の変更を求められます。

タスク設定オプションを構成する

タスク設定にすばやくアクセスするには、次の手順を実行します。
  1. 「スクリプトタスク」ページで、タスクを見つけます。必要に応じて、検索ボックスまたはタグを使用してタスクをすばやく見つけます。
  2. タスクの省略記号をクリックし、次に「タスク設定の構成」を選択します。
  3. 「構成セットの選択」ウィザードで構成セットを選択します。
  4. 「Go」をクリックして、「スクリプトタスク設定」ページでフィルターされたタスクに到達します。ここでは、選択したタスクのみがフィルターで除外されます。

詳細情報

スクリプトタスクの使用例については、以下を参照してください。