脚本化任务
简介
提示:
脚本化任务在计算机级别运行。要在用户会话级别运行任务,请改用外部任务。
此页面允许您添加脚本化任务,您可以自定义这些任务以适应您独特的环境管理需求。然后,您可以通过在适用的配置集中配置这些任务,使用 Workspace Environment Management™ (WEM) 自动执行这些任务。
内置脚本化任务
目前,我们提供以下内置脚本化任务供您使用:
云运行状况检查
允许您运行检查以评估虚拟投递代理 (VDA) 的运行状况。VDA 运行状况检查可识别常见 VDA 注册和会话启动问题的可能原因。云运行状况检查在代理主机上的本地系统帐户下运行。
Windows 服务管理
Windows 服务管理提供有关 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 |
字符串 | 无 | 否 | 定义第二次连续失败时的操作。 |
SubsequentFailureAction |
字符串 | 无 | 否 | 定义第二次失败后所有后续失败的操作。 |
服务器重启
重启计算机
此脚本将重启本地计算机,并可选择延迟和强制选项。
参数
| 名称 | 类型 | 默认值 | 强制 | 注意 |
|---|---|---|---|---|
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 的功能以满足您独特的管理需求。例如,内置脚本化任务“云运行状况检查”可让您评估 VDA 的运行状况。该任务基于脚本。您可以编写自己的脚本文件。然后,将脚本文件作为脚本化任务添加到 WEM 中,以便您可以使用 WEM 自动执行该任务。
每次运行脚本化任务时,都会为其生成相应的报告。该报告包含任务运行时间、任务执行结果等信息,从而使您能够审核与任务相关的活动。
脚本化任务在配置集级别工作。使用脚本化任务的一般工作流程如下:
-
在“脚本化任务”页面上,添加一个脚本化任务。
-
导航到要为其启用脚本化任务的配置集。
-
在该配置集的“脚本化任务设置”页面上,启用脚本化任务。请参阅脚本化任务设置。
-
(可选)查看与脚本化任务相关的报告。有两种方法可以执行此操作:
-
转到“监视 > 报告”并在其中查看报告。
-
转到“脚本化任务”或配置集的“脚本化任务设置”页面。找到脚本化任务,选择省略号,然后选择“查看报告”。然后,您将转到“监视 > 报告”页面,并自动应用相关筛选器。然后,您可以查看相关报告。
-
有关脚本化任务报告的信息,请参阅报告。
AOT 日志收集
此脚本是一个全面的自动化工具,旨在收集和处理 Citrix AOT 日志。它与 Citrix CDFControl 集成,用于配置跟踪收集、应用筛选(默认值:
Level=1, Class=Failure)并将 ETL(事件跟踪日志)文件转换为可读的 CSV 格式以进行分析。
| 名称 | 类型 | 默认值 | 强制 | 注意 |
|---|---|---|---|---|
StartTime |
[DateTime] |
EndTime - 30 minutes |
否 | 指定日志筛选的开始时间 |
EndTime |
[DateTime] |
当前日期和时间 | 否 | 指定日志筛选的结束时间 |
检查 DNS 设置
此脚本是一个全面的 DNS 运行状况检查工具,专为 Citrix VDA 环境设计。它验证 DNS 配置并执行故障排除,以识别可能影响 Citrix 服务的潜在 DNS 相关问题。
| 名称 | 类型 | 默认值 | 强制 | 注意 |
|---|---|---|---|---|
DomainName |
[string] |
不适用 | 否 | 指定用于测试 DNS 解析的域名(启用 DNS 名称解析测试) |
FlushDNS |
[switch] |
否 | 否 | 指定是否将刷新 DNS 缓存作为独立操作 |
检查 RDS 许可证
此脚本是一个全面的远程桌面服务 (RDS) 许可证验证工具,旨在检查本地计算机上的 RDS 许可配置和状态。它在 Citrix VDA 环境中特别有用,因为 RDS 许可合规性对于正常运行至关重要。使用此脚本可确保许可合规性并保持不间断的多会话用户访问。
| 名称 | 类型 | 默认值 | 强制 | 注意 |
|---|---|---|---|---|
DomainName |
[string] |
不适用 | 否 | 指定要测试 DNS 解析的域名(启用 DNS 名称解析测试) |
FlushDNS |
[switch] |
否 | 否 | 指定是否将刷新 DNS 缓存作为独立操作 |
诊断 VDA 注销
此脚本是一个全面的诊断工具,旨在排查 Citrix 虚拟投递代理 (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 > 脚本化任务助手”工具运行任务并查看执行结果。如有需要,您可以导出任务,以便稍后导入到 WEM Web 控制台。
有关详细信息,请参阅 验证并导出脚本化任务。
添加脚本化任务
要添加脚本化任务,请执行以下步骤:
-
在“脚本化任务”页面上,单击“添加脚本化任务”。
-
在“添加脚本化任务”向导中,配置以下设置,然后单击“保存”。
-
任务名称。指定任务的名称。
-
标签。从现有标签中选择,或输入以逗号分隔的标签。标签长度不得超过 20 个字符。标签类似于关键字或标记。使用标签可以帮助您以新方式识别任务。此外,它们还可以充当筛选器,让您根据对您重要的条件重新排列“脚本化任务”中的任务视图。您可以根据需要使用任意数量的标签。
-
描述。可选,指定其他信息以帮助您识别任务。
-
文件类型。为任务选择文件类型。支持两种文件类型:
-
PowerShell。单个 PowerShell 脚本文件。
-
ZIP。捆绑到单个 zip 文件中的多个文件。不支持大于 10 MB 的 Zip 文件。上传 zip 文件后,指定一个入口点,指示在脚本化任务开始时运行哪个文件。请记住,入口点文件在文件夹结构中的深度不得超过三层。
-
-
上传文件。单击浏览,导航到文件,选择它,然后单击打开。您将返回到添加脚本化任务向导。提示:您可以通过两种方式上传脚本化任务:
-
选择已放置在 Web 控制台计算机上的 .zip 文件。
-
使用“脚本化任务助手”工具导出任务后,内容会自动复制到剪贴板。在添加脚本任务页面上,直接从剪贴板粘贴内容 (<Ctrl+V>)。此方法避免了在 Web 控制台计算机上存储 .zip 文件的需要。
-
-
授予权限。指定要授予脚本化任务的访问级别。确保您了解与每个选项关联的权限。
-
完全访问。分配了完全访问权限的脚本化任务具有广泛的本地访问权限。如果选择此项,则脚本化任务将获得权限,如同其在本地系统帐户下运行一样。
-
受限访问(具有网络访问权限)。分配了受限访问(具有网络访问权限)的脚本化任务不具有广泛的本地访问权限,但可以访问网络资源。如果选择此项,则脚本化任务将获得权限,如同其在网络服务帐户下运行一样。
-
受限访问(不具有网络访问权限)。分配了受限访问(不具有网络访问权限)的脚本化任务不具有广泛的本地访问权限,并且无法访问网络资源。如果选择此项,则脚本化任务将获得权限,如同其在本地服务帐户下运行一样。
有关详细信息,请参阅 Microsoft 文档<https://docs.microsoft.com/zh-cn/windows/security/identity-protection/access-control/security-identifiers#well-known-sids>。 -
-
-
工作文件夹。(可选)键入最终用户操作系统上本地文件夹的绝对路径。工作文件夹是文件启动时的当前文件夹。您可以使用环境变量构建路径(例如,%ProgramFiles%)。如果未指定,则
PSScriptRoot用作默认工作文件夹。有关PSScriptRoot的详细信息,请参阅 Microsoft 文档<https://docs.microsoft.com/zh-cn/powershell/module/microsoft.powershell.core/about/about_automatic_variables?view=powershell-7.1>。 -
此任务是否生成输出文件。选择您添加的任务是否生成输出文件。
-
输出路径。键入相对于文件所在文件夹的路径。路径必须包含文件名和文件扩展名。示例:
output\report.txt。
编辑脚本化任务
要编辑脚本化任务,请执行以下步骤:
-
在“脚本化任务”页面上,找到该任务。如果需要,可以使用搜索框快速搜索任务。
-
单击任务的省略号,然后选择“编辑任务”。“编辑脚本化任务”向导随即出现。
-
在“任务信息”选项卡上,根据需要配置设置。
-
在“脚本内容”选项卡上,查看脚本内容。
-
单击 保存。
注意:
您无法编辑内置脚本化任务。
删除脚本化任务
要删除脚本化任务,请执行以下步骤:
-
在“脚本化任务”页面上,找到该任务。如果需要,可以使用搜索框快速搜索任务。
-
单击任务的省略号,然后选择“删除任务”。
重要提示:
-
您无法删除内置脚本化任务。
-
如果要删除当前已为某些配置集启用的脚本化任务,请首先在这些配置集中禁用它。
克隆脚本化任务
要克隆脚本化任务,请执行以下步骤:
-
在“脚本化任务”页面上,找到该任务。如果需要,可以使用搜索框或标签快速查找任务。
-
单击任务的省略号,然后选择“克隆任务”。
注意:
克隆任务时,系统会提示您更改名称以避免重复名称。
配置任务设置选项
要快速访问任务设置,请执行以下步骤:
-
在“脚本化任务”页面上,找到该任务。如果需要,可以使用搜索框或标签快速查找任务。
-
单击任务的省略号,然后选择“配置任务设置”。
-
在“选择配置集”向导中选择一个配置集。
-
单击“Go”以在“脚本化任务设置”页面中访问筛选后的任务,其中仅筛选出所选任务。
更多信息
有关如何使用脚本化任务的示例,请参阅: