スクリプトタスク
はじめに
ヒント:
スクリプトタスクはマシンレベルで動作します。ユーザーセッションレベルでタスクを実行するには、代わりに外部タスクを使用します。
このページでは、独自の環境管理ニーズに合わせてカスタマイズしたスクリプトタスクを追加できます。その後、それらのタスクを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 |
文字列 | なし | いいえ | サービスのスタートアップの種類を設定します。有効なオプションは、Automatic、Manual、または Disabled です。 |
FirstFailureAction |
文字列 | なし | いいえ | 最初の障害に対するアクションを定義します。例: restart/none。 |
SecondFailureAction |
文字列 | なし | いいえ | 2 回目の連続した障害に対するアクションを定義します。 |
SubsequentFailureAction |
文字列 | なし | いいえ | 2 回目以降のすべての障害に対するアクションを定義します。 |
サーバーの再起動
マシンの再起動
このスクリプトは、オプションの遅延と強制オプションを使用して、ローカルマシンを再起動します。
パラメーター
| 名前 | タイプ | デフォルト | 必須 | 注 |
|---|---|---|---|---|
Force |
ブール値 | 真 | 偽 | 指定した場合、未保存のデータやアクティブなユーザーセッションを無視して、即座に再起動を強制します。 |
Delay |
整数 | 10 | 偽 | コンピューターが再起動されるまでの遅延を秒単位で指定します。3秒から30秒の間である必要があります。デフォルトは10秒です。 |
CDFトレース管理
CDFトレースの開始
このスクリプトは、単一のCTLファイルまたは事前定義されたCTLファイルカテゴリを入力として使用して、CDFトレースプロセスを開始します。選択されたCTLファイルで定義されたモジュールをトレースし、
RunMinutes パラメーターで指定された期間が経過すると、cdfcontrol.exe 自動的に停止します。
パラメーター
| 名前 | タイプ | デフォルト | 必須 | 注 |
|---|---|---|---|---|
traceOutputPath |
文字列 | C:\ProgramData\Citrix\WEM\CDFLogs |
いいえ | CDFレポートの出力パスを指定します。 |
category |
文字列 | all |
いいえ |
トレースを開始するための事前定義されたカテゴリを指定します。サポートされている値は次のとおりです。
|
ctlFilePath |
文字列 | ヌル | 偽 | トレースを開始するためのctlファイルを指定します。 |
RunMinutes |
整数 | 30 | 偽 | cdfcontrol.exeが自動的に停止して終了するまでに実行される期間を指定します。 |
CDFトレースの停止
このスクリプトは、CDFツールのトレースを停止します。
CDFログのクリーンアップ
ストレージ消費を節約するために、CDFトレースログをクリーンアップすることは有用です。これは、指定されたディレクトリ下のCDFファイルを削除する機能を提供する必要があります。
| 名前 | 種類 | デフォルト | 必須 | 注 |
|---|---|---|---|---|
FileAgeDays |
整数 | 3 | 偽 | 日単位での経過時間しきい値を指定します。この値よりも古いファイルとフォルダーは削除されます。デフォルト値は3日であり、このパラメーターはオプションです。FileAgeDaysが1日未満の場合、すべてのファイルまたはディレクトリが削除されます。 |
ヒント:
-
カスタムスクリプトタスクと組み込みスクリプトタスクを区別できます。カスタムタスクには「CUSTOM」ラベルが付けられ、組み込みタスクには「CITRIX」ラベルが付けられます。
-
組み込みスクリプトタスクは常にカスタムタスクの上に表示されます。カスタムスクリプトタスクは、最終変更時刻に基づいて降順でソートされます。
この機能を使用すると、独自の管理ニーズに合わせてWEMの機能を拡張できます。たとえば、組み込みスクリプトタスクのCloud Health Checkを使用すると、VDAの正常性を測定できます。このタスクはスクリプトベースです。独自のスクリプトファイルを作成できます。その後、スクリプトファイルをスクリプトタスクとしてWEMに追加することで、WEMを使用してタスクを自動化できます。
スクリプトタスクが実行されるたびに、対応するレポートが生成されます。レポートには、タスクの実行日時、タスクの実行結果などの情報が含まれており、タスクに関連するアクティビティを監査する機能を提供します。
スクリプトタスクは構成セットレベルで機能します。スクリプトタスクを使用するための一般的なワークフローは次のとおりです。
-
スクリプトタスクページで、スクリプトタスクを追加します。
-
スクリプトタスクを有効にする構成セットに移動します。
-
その構成セットのスクリプトタスク設定ページで、スクリプトタスクを有効にします。「スクリプトタスク設定」(/ja-jp/workspace-environment-management/service/manage/configuration-sets/scripted-task-settings.html)を参照してください。
-
オプションで、スクリプト化されたタスクに関連するレポートを表示します。これを行うには、次の2つの方法があります。
スクリプト化されたタスクレポートの詳細については、「レポート」を参照してください。
AOTログ収集
このスクリプトは、Citrix AOTログの収集と処理のために設計された包括的な自動化ツールです。Citrix CDFControl と統合して、トレース収集の構成、フィルタリングの適用(デフォルト:
Level=1, Class=Failure)、およびETL(イベントトレースログ)ファイルを分析用の読み取り可能なCSV形式への変換を行います。
| 名前 | 種類 | デフォルト | 必須 | 注 |
|---|---|---|---|---|
StartTime |
[DateTime] |
EndTime - 30 minutes |
偽 | ログフィルタリングの開始時刻を指定します |
EndTime |
[DateTime] |
現在の日付と時刻 | 偽 | ログフィルタリングの終了時刻を指定します |
DNS設定の確認
このスクリプトは、Citrix VDA環境向けに設計された包括的なDNSヘルスチェックツールです。DNS構成を検証し、トラブルシューティングを実行して、Citrixサービスに影響を与える可能性のあるDNS関連の問題を特定します。
| 名前 | 種類 | デフォルト | 必須 | 注 |
|---|---|---|---|---|
DomainName |
[string] |
該当なし | 偽 | DNS解決をテストするドメイン名を指定します(DNS名前解決テストを有効にします) |
FlushDNS |
[switch] |
偽 | 偽 | DNSキャッシュをスタンドアロンアクションとしてフラッシュするかどうかを指定します |
RDSライセンスの確認
このスクリプトは、ローカルコンピューター上のRDSライセンス構成とステータスを確認するために設計された、包括的なリモートデスクトップサービス(RDS)ライセンス検証ツールです。RDSライセンスのコンプライアンスが適切な運用に不可欠なCitrix VDA環境で特に役立ちます。このスクリプトを使用して、ライセンスのコンプライアンスを確保し、中断のないマルチセッションユーザーアクセスを維持します。
| 名前 | 種類 | デフォルト | 必須 | 注 |
|---|---|---|---|---|
DomainName |
[string] |
該当なし | 偽 | DNS解決をテストするドメイン名を指定します(DNS名前解決テストを有効にします) |
FlushDNS |
[switch] |
偽 | 偽 | DNSキャッシュをスタンドアロンアクションとしてフラッシュするかどうかを指定します |
VDA登録解除の診断
このスクリプトは、Citrix Virtual Delivery Agent (VDA) の登録解除の問題をトラブルシューティングするために設計された包括的な診断ツールです。Citrix環境におけるVDA登録解除問題の潜在的な原因を特定するために、複数のヘルスチェックと診断手順を実行します。
| 名前 | 種類 | デフォルト | 必須 | 注 |
|---|---|---|---|---|
StartTime |
[DateTime] |
EndTime - 30 minutes |
偽 | ログフィルタリングの開始時刻を指定します |
EndTime |
[DateTime] |
現在の日時 | 偽 | ログフィルタリングの終了時刻を指定します。 |
プロファイル管理のヘルスチェックを実行する
このスクリプトは、Citrix Profile Management展開の包括的なヘルスチェックを実行します。構成をスキャンして潜在的な問題を特定し、ログを分析して、一時プロファイルエラーやログオン時の大幅な時間差などの重大な問題を検出します。
| 名前 | 種類 | デフォルト | 必須 | 注 |
|---|---|---|---|---|
CtxSessionKey |
[string] | ヌル | 偽 | 特定のセッションログを検索するために使用されるCitrixセッションキーを指定します。指定しない場合、スクリプトは過去24時間分のセッションを分析します。 |
LogonTime |
[string] | ヌル | 偽 | イベントログ検索をフィルタリングするログオン時刻を指定します。さまざまな日付と時刻の形式を受け入れます。指定しない場合、スクリプトは過去24時間分のイベントログをフィルタリングします。 |
StructuredOutputOnly |
[switch] | はい | 偽 | コンソールログなしで構造化されたJSONデータを出力するかどうかを指定します。 |
Parallel |
[switch] | はい | 偽 | ログ分析操作のパフォーマンスを向上させるために、並列処理を使用するかどうかを指定します。 |
プロファイルリセットトリガーの設定
このスクリプトは、ユーザーのプロファイルをリセットするトリガーを設定します。ユーザーが次回ログオンするときに、既存のプロファイルがバックアップされ、新しいクリーンなプロファイルフォルダーが作成されます。
| 名前 | 種類 | デフォルト | 必須 | 注 |
|---|---|---|---|---|
CtxSessionKey |
[string] | なし | はい | ユーザーの次回のログオン時にプロファイルリセットをトリガーするために使用されるCitrixセッションキーを指定します。 |
FoldersToRestore |
[string] | なし | 偽 | プロファイルリセット後に復元するフォルダーを指定します。指定しない場合、ダウンロード、デスクトップ、ピクチャなどの既知のフォルダーがデフォルトで復元されます。 |
BackupNameSuffix |
[string] | なし | 偽 | プロファイルリセット時のバックアップフォルダー名のサフィックスを指定します。指定しない場合、サフィックスはデフォルトで upm_%CurrentTimeStamp% になります。 |
スクリプトタスクのスクリプトコンテンツを作成する
タスク用のPowerShellスクリプトを作成します。
スクリプトコンテンツの検証とエクスポート
スクリプトコンテンツを作成したら、Citrix Environment Tool Hub > Scripted Task Assistantツールを使用してタスクを実行し、実行結果を確認します。必要に応じて、後でWEM Webコンソールにインポートするためにタスクをエクスポートできます。
詳細については、「スクリプトタスクの検証とエクスポート」を参照してください。
スクリプトタスクの追加
スクリプトタスクを追加するには、次の手順を実行します。
-
スクリプトタスクページで、スクリプトタスクの追加をクリックします。
-
スクリプトタスクの追加ウィザードで、次の設定を構成し、保存をクリックします。
-
タスク名。タスクの名前を指定します。
-
タグ。既存のタグから選択するか、コンマで区切ってタグを入力します。タグは20文字以内である必要があります。タグはキーワードやラベルのようなものです。タグを使用すると、新しい方法でタスクを識別できます。また、フィルターとして機能し、重要な基準に応じてスクリプトタスクのタスクビューを再配置できます。タグはいくつでも使用できます。
-
説明。オプションで、タスクを識別するのに役立つ追加情報を指定します。
-
ファイルの種類。タスクのファイルの種類を選択します。次の2種類のファイルがサポートされています。
-
PowerShell。個別のPowerShellスクリプトファイル。
-
ZIP。複数のファイルを1つのzipファイルにバンドルしたもの。10 MBを超えるzipファイルはサポートされていません。zipファイルをアップロードした後、スクリプトタスクの開始時に実行するファイルを示すエントリポイントを指定します。エントリポイントファイルは、フォルダー構造内で3レベルより深くならないように注意してください。
-
-
ファイルのアップロード。参照をクリックし、ファイルに移動して選択し、開くをクリックします。スクリプトタスクの追加ウィザードに戻ります。ヒント:スクリプトタスクは、次の2つの方法でアップロードできます。
-
Webコンソールマシンにすでに配置されている.zipファイルを選択します。
-
Scripted Task Assistantツールでタスクをエクスポートすると、コンテンツは自動的にクリップボードにコピーされます。スクリプトタスクの追加ページで、クリップボードから直接コンテンツを貼り付けます (<Ctrl+V>)。この方法では、Webコンソールマシンに.zipファイルを保存する必要がありません。
-
-
アクセス許可の付与。スクリプトタスクに付与するアクセスレベルを指定します。各オプションに関連付けられているアクセス許可を理解していることを確認してください。
-
フルアクセス。フルアクセスが割り当てられたスクリプトタスクは、広範なローカルアクセス権を持ちます。選択した場合、スクリプトタスクはローカルシステムアカウントで実行されるかのようにアクセス許可が付与されます。
-
制限付きアクセス(ネットワークアクセスあり)。制限付きアクセス(ネットワークアクセスあり)が割り当てられたスクリプトタスクは、広範なローカルアクセス権を持ちませんが、ネットワークリソースにアクセスできます。選択した場合、スクリプトタスクはネットワークサービスアカウントで実行されるかのようにアクセス許可が付与されます。
-
制限付きアクセス(ネットワークアクセスなし)。制限付きアクセス(ネットワークアクセスなし)が割り当てられたスクリプトタスクは、広範なローカルアクセス権を持たず、ネットワークリソースにアクセスできません。選択した場合、スクリプトタスクはローカルサービスアカウントで実行されるかのようにアクセス許可が付与されます。
詳細については、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。
スクリプトタスクの編集
スクリプトタスクを編集するには、次の手順を実行します。
-
スクリプトタスクページで、タスクを見つけます。必要に応じて、検索ボックスを使用してタスクをすばやく検索します。
-
タスクの省略記号をクリックし、タスクの編集を選択します。スクリプトタスクの編集ウィザードが表示されます。
-
「タスク情報」タブで、必要に応じて設定を構成します。
-
「スクリプトコンテンツ」タブで、スクリプトコンテンツを表示します。
-
「保存」をクリックします。
注:
組み込みのスクリプトタスクは編集できません。
スクリプトタスクを削除する
スクリプトタスクを削除するには、次の手順を実行します。
-
「スクリプトタスク」ページでタスクを見つけます。必要に応じて、検索ボックスを使用してタスクをすばやく検索します。
-
タスクの省略記号をクリックし、「タスクの削除」を選択します。
重要:
-
組み込みのスクリプトタスクは削除できません。
-
一部の構成セットで現在有効になっているスクリプトタスクを削除するには、まずそれらの構成セットで無効にします。
スクリプトタスクをクローンする
スクリプトタスクをクローンするには、次の手順を実行します。
-
「スクリプトタスク」ページでタスクを見つけます。必要に応じて、検索ボックスまたはタグを使用してタスクをすばやく見つけます。
-
タスクの省略記号をクリックし、「タスクのクローン」を選択します。
注:
タスクをクローンする際、重複する名前を避けるために名前の変更を求められます。
タスク設定オプションを構成する
タスク設定に素早くアクセスするには、以下の手順を実行します。
-
スクリプトタスクページでタスクを見つけます。必要に応じて、検索ボックスまたはタグを使用してタスクを素早く見つけます。
-
タスクの省略記号をクリックし、タスク設定の構成を選択します。
-
構成セットの選択ウィザードで構成セットを選択します。
-
Goをクリックして、スクリプトタスク設定ページでフィルタリングされたタスクにアクセスします。このページでは、選択したタスクのみがフィルタリングされます。
詳細情報
スクリプトタスクの使用例については、以下を参照してください。