Citrix 洞察服务
Citrix Insight Services (CIS) 是一个 Citrix 平台,用于实现检测、遥测和业务洞察生成。其检测和遥测功能使技术用户(客户、合作伙伴和工程师)能够自行诊断和修复问题并优化其环境。有关 CIS 及其工作原理的详细信息和最新信息,请参阅 https://cis.citrix.com(需要 Citrix 帐户凭据)。
上传到 Citrix 的所有信息均用于故障排除和诊断目的,以及改进产品的质量、可靠性和性能,但须遵守:
- Citrix 洞察服务策略,位于 https://cis.citrix.com/legal
- Citrix 隐私策略,位于 https://www.cloud.com/privacy-policy
此 思杰虚拟应用和桌面™ 版本支持以下技术。
除了 CIS 和 Citrix Analytics 之外(且独立于它们):当您安装(或升级)Studio 时,会自动收集(并随后上传)Google Analytics 数据。安装 Studio 后,您可以使用注册表项 HKLM\Software\Citrix\DesktopStudio\GAEnabled 更改此设置。值为 1 表示启用收集和上传,0 表示禁用收集和上传。
安装和升级过程的分析
当您使用完整产品安装程序部署或升级 Citrix Virtual Apps and Desktops 组件时,有关安装过程的匿名信息会在您安装/升级组件的计算机上收集和存储。此数据用于帮助 Citrix 改善客户的安装体验。
这些信息将存储在本地的指定目录中,具体路径为 %ProgramData%\Citrix\CTQs。
在完整产品安装程序的图形界面和命令行界面中,此数据的自动上传默认启用。
- 您可以在注册表设置中更改默认值。如果您在安装/升级之前更改注册表设置,则在使用完整产品安装程序时将使用该值。
- 如果您使用命令行界面安装/升级,可以通过在命令中指定一个选项来覆盖默认设置。
控制自动上传:
-
控制安装/升级分析数据自动上传的注册表设置(默认值 = 1):
- Location: HKLM:\Software\Citrix\MetaInstall
- Name: SendExperienceMetrics
- 值:0 = 禁用,1 = 启用
-
使用 PowerShell,以下 cmdlet 可禁用安装/升级分析数据的自动上传:
New-ItemProperty -Path HKLM:\SOFTWARE\Citrix\MetaInstall -Name SendExperienceMetrics -PropertyType DWORD -Value 0 <!--NeedCopy--> -
To disable automatic uploads with the XenDesktopServerSetup.exe or XenDesktopVDASetup.exe command, include the
/disableexperiencemetricsoption.To enable automatic uploads with the XenDesktopServerSetup.exe or XenDesktopVDASetup.exe command, include the
/sendexperiencemetricsoption.
Citrix 客户体验改善计划
当您参与 Citrix 客户体验改善计划 (CEIP) 时,匿名统计数据和使用信息将发送给 Citrix,以帮助 Citrix 改进 Citrix 产品的质量和性能。有关详细信息,请参阅 https://more.citrix.com/XD-CEIP。
在站点创建或升级期间注册
当您创建站点(安装第一个 Delivery Controller™ 后)时,您将自动注册 CEIP。首次数据上传大约在您创建站点七天后进行。
您可以在创建站点后的任何时间停止参与。在 Web Studio 左窗格中选择设置节点,然后关闭Citrix 客户体验改善计划设置。
When you upgrade a Citrix Virtual Apps and Desktops deployment:
- 如果您从不支持 CEIP 的版本升级,系统会询问您是否要参与。
- 如果您从支持 CEIP 的版本升级,并且已启用参与,则在升级后的站点中会启用 CEIP。
- 如果您从支持 CEIP 的版本升级,并且已禁用参与,则在升级后的站点中会禁用 CEIP。
- 如果您从支持 CEIP 的版本升级,并且参与状态未知,系统会询问您是否要参与。
收集的信息是匿名的,因此上传到 Citrix Insight Services 后无法查看。
安装 VDA 时的加入
默认情况下,在安装 Windows VDA 时,您会自动加入 CEIP。您可以在注册表设置中更改此默认值。如果在安装 VDA 之前更改注册表设置,则会使用该值。
控制自动加入 CEIP 的注册表设置(默认值 = 1):
此设置的注册表路径位于: HKLM: \Software\Citrix\Telemetry\CEIP 该注册表项的名称为: 已启用 其值定义如下: 0 代表禁用此功能, 1 代表启用此功能
默认情况下,Enabled 属性在注册表中是隐藏的。当它未指定时,自动上传功能将启用。
使用 PowerShell,以下命令程序可以禁用 CEIP 的注册:
New-ItemProperty -Path HKLM:\SOFTWARE\Citrix\Telemetry\CEIP -Name Enabled -PropertyType DWORD -Value 0
<!--NeedCopy-->
收集的运行时数据点会定期作为文件写入输出文件夹(默认 %programdata%/Citrix/VdaCeip)。
首次数据上传大约在安装 VDA 七天后进行。
在安装其他产品和组件时的注册流程
您也可以在安装相关 Citrix 产品、组件和技术(例如 Citrix Provisioning™、AppDNA、Citrix 许可证服务器、适用于 Windows 的 Citrix Workspace™ 应用程序、通用打印服务器和会话录制)时参与 CEIP。有关安装和参与默认值的详细信息,请参阅其文档。
Citrix 回家呼叫
在 Citrix Virtual Apps and Desktops 中安装某些组件和功能时,系统会提供参与 Citrix Call Home 的机会。Call Home 会收集诊断数据,然后定期将包含这些数据的遥测包直接上传到 Citrix Insight Services(通过默认端口 443 上的 HTTPS)进行分析和故障排除。
在 Citrix Virtual Apps and Desktops 这一产品中,Call Home 功能以 Citrix 遥测服务 的名称作为一项后台服务进行运行。
The Call Home scheduling functionality is also available in Citrix Scout. For details, see Citrix Scout.
收集的内容
Citrix Diagnostic Facility (CDF) 跟踪记录了有助于故障排除的信息。Call Home 收集 CDF 跟踪的子集,这些跟踪在排查常见故障(例如 VDA 注册和应用程序/桌面启动)时非常有用。此技术称为始终开启跟踪 (AOT)。AOT 日志保存在 C:\ProgramData\Citrix\TelemetryService\CitrixAOT 磁盘上。
注意:
ProgramData文件夹是隐藏的。要显示它,请单击查看 > 显示 > 隐藏的项目。
Call Home 不会收集任何其他 Windows 事件跟踪 (ETW) 信息,也无法配置为这样做。
Call Home 还会收集其他信息,例如:
- Citrix 虚拟应用和桌面 在
HKEY_LOCAL_MACHINE\SOFTWARE\Citrix下创建的注册表项。 - Citrix 命名空间下的 Windows 管理规范 (WMI) 信息。
- 正在运行的进程列表。
- Crash dumps of Citrix processes that are stored in %PROGRAM DATA%\Citrix\CDF.
- 安装和升级信息。这可以包括完整产品元安装程序日志、失败的 MSI 日志、MSI 日志分析器输出、StoreFront™ 日志、许可兼容性检查日志以及初步站点升级测试的结果。
跟踪信息在收集时会进行压缩。Citrix Telemetry Service 最多保留 10 MB 压缩的最新跟踪信息,最长保留时间为八天。
- 压缩数据使 Call Home 能够在 VDA 上保持较小的占用空间。
- 跟踪信息保存在内存中,以避免预配计算机上的 IOP。
- 跟踪缓冲区使用循环机制在内存中保留跟踪信息。
Call Home 收集 Call Home 关键数据点 中列出的关键数据点。
配置和管理摘要
您可以在使用完整产品安装向导时或之后,使用 PowerShell cmdlet 注册 Call Home。注册后,默认情况下,诊断信息会在当地时间每周日凌晨 3:00 左右收集并上传到 Citrix。上传时间会在指定时间的基础上随机化两小时。这意味着使用默认计划的上传会在凌晨 3:00 到凌晨 5:00 之间进行。
如果您不想定期上传诊断信息(或者如果您想更改计划),可以使用 PowerShell cmdlet 手动收集和上传诊断信息,或将其存储在本地。
当您注册计划的 Call Home 上传以及手动将诊断信息上传到 Citrix 时,您需要提供 Citrix 帐户或 Citrix Cloud™ 凭据。Citrix 会将凭据交换为上传令牌,该令牌用于识别客户并上传数据。凭据不会保存。
上传发生时,通知将通过电子邮件发送到与 Citrix 帐户关联的地址。
如果您在安装组件时启用了 Call Home,则可以稍后将其禁用。
先决条件
- 计算机必须运行 PowerShell 3.0 或更高版本。
- Citrix 遥测服务必须在计算机上运行。
- The system variable
PSModulePathmust be set to Telemetry’s install path, for example, C:\Program Files\Citrix\Telemetry Service\.
在组件安装期间启用 Call Home
在 VDA 安装或升级期间: 当您使用完整产品安装程序中的图形界面安装或升级 Virtual Delivery Agent 时,系统会询问您是否要参与 Call Home。有两个选项:
- 参与 Call Home 功能的运行。
- 选择不参与 Call Home 功能。
如果您正在升级 VDA 并且之前已注册 Call Home,则不会显示该向导页面。
在 Controller 安装或升级期间: 当您使用图形界面安装或升级 Delivery Controller 时,系统会询问您是否要参与 Call Home。有三个选项:
如果服务器具有应用了策略设置“作为服务登录”的 Active Directory GPO,则在安装 Controller 时,无法在安装向导的 Call Home 页面上配置信息。有关详细信息,请参阅 CTX218094。
如果您正在升级 Controller 并且之前已注册 Call Home,则不会询问您是否参与。
PowerShell 命令行管理程序命令
PowerShell 帮助提供了全面的语法,包括这些常见用例中未使用的 cmdlet 和参数的说明。
要使用代理服务器进行上传,请参阅 配置代理服务器。
-
启用计划上传: 诊断集合会自动上传到 Citrix。如果您不为自定义计划输入其他 cmdlet,则使用默认计划。
$cred = Get-Credential Enable-CitrixCallHome -Credential $cred <!--NeedCopy-->要确认已启用计划上传,请输入
Get-CitrixCallHome。如果已启用,则返回IsEnabled=True和IsMasterImage=False。 -
为从主映像创建的计算机启用计划上传: 在主映像中启用计划上传可避免配置在计算机目录中创建的每台计算机。
Enable-CitrixCallHome -Credential $cred -MasterImage要确认已启用计划上传,请输入 Get-CitrixCallHome。如果已启用,则返回
IsEnabled=True和IsMasterImage=True。 -
创建自定义计划: 为诊断数据收集和上传创建每日或每周计划。
$timespan = New-TimeSpan –Hours hours -Minutes minutes Set-CitrixCallHomeSchedule –TimeOfDay $timespan –DayOfWeek day -UploadFrequency {Daily|Weekly} <!--NeedCopy-->
示例:
以下 cmdlet 创建一个计划,用于在每天晚上 10:20 捆绑和上传数据。Hours 参数使用 24 小时制。当 UploadFrequency 参数值为 Daily 时,如果指定了 DayOfWeek 参数,则会忽略该参数。
$timespan – New-TimeSpan –Hours 22 –Minutes 20
Set-CitrixCallHomeSchedule –TimeOfDay $timespan -UploadFrequency Daily
<!--NeedCopy-->
要确认计划,请输入 Get-CitrixCallHomeSchedule。在前面的示例中,它返回 StartTime=22:20:00, DayOfWeek=Sunday (ignored), Upload Frequency=Daily。
以下 cmdlet 创建一个计划,用于在每周三晚上 10:20 捆绑和上传数据。
$timespan – New-TimeSpan –Hours 22 –Minutes 20
Set-CitrixCallHomeSchedule –TimeOfDay $timespan –DayOfWeek Wed -UploadFrequency Weekly
<!--NeedCopy-->
要确认计划,请输入 Get-CitrixCallHomeSchedule。在前面的示例中,它返回 StartTime=22:20:00, DayOfWeek=Wednesday, Upload Frequency=Weekly。
禁用回传功能
您可以使用 PowerShell 命令或通过 Citrix Scout 禁用回传功能。
即使禁用 Call Home 计划上传,AOT 日志也会被收集并保存到磁盘。(当禁用计划上传时,AOT 日志不会自动上传到 Citrix。)您可以禁用 AOT 日志的收集和本地存储。
使用 PowerShell 禁用回传功能
运行以下 cmdlet 后,诊断数据将不会自动上传到 Citrix。(您仍然可以使用 Citrix Scout 或遥测 PowerShell cmdlet 上传诊断数据。)
Disable-CitrixCallHome
要确认 Call Home 已禁用,请输入 Get-CitrixCallHome。如果已禁用,则返回 IsEnabled=False 和 IsMasterImage=False。
使用 Citrix Scout 禁用收集计划
要使用 Citrix Scout 禁用诊断收集计划,请遵循 计划收集 中的指导。在步骤 3 中,单击“关闭”以取消所选计算机的计划。
禁用 AOT 日志收集
运行以下 cmdlet(将 Enabled 字段设置为 false)后,将不会收集 AOT 日志。
Enable-CitrixTrace -Listen'{"trace":{"enabled":false,"persistDirectory":"C:\Users\Public","maxSizeBytes":1000000, "sliceDurationSeconds":300}}'
Listen 参数包含 JSON 格式的参数。
为 Call Home 上传配置代理服务器
在启用 Call Home 的计算机上完成以下任务。以下过程中的示例图包含服务器地址和端口 10.158.139.37:3128。您的信息将有所不同。
-
在浏览器中添加代理服务器信息。在 Internet Explorer 中,选择“Internet 选项 > 连接 > 局域网设置”。选择“为 LAN 使用代理服务器”并输入代理服务器地址和端口号。
-
在 PowerShell 命令行界面中,运行
netsh winhttp import proxy source=ie。
-
Using a text editor, edit the TelemetryService.exe config file, which is located in C:\Program Files\Citrix\Telemetry Service. Add the information shown in the red box.

-
重新启动遥测服务。
Run the Call Home cmdlets in PowerShell.
手动收集并上传用于诊断的详细信息
您可以使用 CIS 网站将诊断信息包上传到 CIS。您还可以使用 PowerShell cmdlet 收集诊断信息并将其上传到 CIS。
要使用 CIS 网站上传捆绑包:
- 使用您的 Citrix 帐户凭据登录 Citrix 洞察服务。
- 选择 我的工作区。
- 选择 运行状况检查,然后导航到您的数据位置。
CIS 支持多个用于管理数据上传的 PowerShell cmdlet。本文档涵盖了两种常见情况下的 cmdlet:
- 使用
Start-CitrixCallHomeUploadcmdlet 手动收集诊断信息包并将其上传到 CIS。(该捆绑包未在本地保存。) - 使用
Start-CitrixCallHomeUploadcmdlet 手动收集数据并在本地存储诊断信息包。这允许您预览数据。稍后,使用Send-CitrixCallHomeBundlecmdlet 手动将该捆绑包的副本上传到 CIS。(您最初保存的数据仍保留在本地。)
PowerShell 帮助提供了全面的语法,包括这些常见用例中未使用的 cmdlet 和参数的说明。
当您输入 cmdlet 将数据上传到 CIS 时,系统会提示您确认上传。如果 cmdlet 在上传完成之前超时,请在系统事件日志中检查上传状态。如果服务已在执行上传,则上传请求可能会被拒绝。
收集数据并将捆绑包上传到 CIS:
Start-CitrixCallHomeUpload [-Credential] PSCredential [-InputPath string] [-Description string] [-IncidentTime string] [-SRNumber string] [-Name string] [-UploadHeader string] [-AppendHeaders string] [-Collect string] [<CommonParameters>]
<!--NeedCopy-->
收集数据并将其保存在本地:
Start-CitrixCallHomeUpload -OutputPath <String> [-InputPath string] [-Description string] [-IncidentTime string] [-SRNumber string] [-Name string] [-UploaderHeader string] [-AppendHeaders string] [-Collect strings] [<CommonParameters>]
<!--NeedCopy-->
以下参数是有效的:
- 凭据: 将上传定向到 CIS。
- InputPath: 要包含在捆绑包中的 zip 文件的位置。这可能是 Citrix 支持部门请求的附加文件。请务必包含 .zip 扩展名。
- OutputPath: 诊断信息的保存位置。在本地保存 Call Home 数据时,此参数是必需的。
- 描述和事件时间: 有关上传的自由格式信息。
- SRNumber: 思杰技术支持事件编号。
- Name: 标识捆绑包的名称。
- UploadHeader: 指定上传到 CIS 的上传标头的 JSON 格式字符串。
- AppendHeaders: 指定上传到 CIS 的附加标头的 JSON 格式字符串。
-
收集: JSON 格式字符串,用于指定要收集或省略的数据,格式为 {‘collector’:{‘enabled’:Boolean}},其中 Boolean 为 true 或 false。 有效的收集器值为:
- ‘视窗管理规范’
- ‘进程’
- ‘注册表’
- ‘崩溃报告’
- ‘跟踪’
- ‘文件’
- ‘安装包’
- ‘本地数据’
- ‘站点数据’
- ‘思福B’
默认情况下,除“sfb”之外的所有收集器均已启用。
“sfb”收集器旨在按需使用,以诊断 Skype for Business 问题。除了“enabled”参数外,“sfb”收集器还支持“account”和“accounts”参数来指定目标用户。使用以下形式之一:
- “-Collect “{‘sfb’:{‘account’:’domain\\user1’}}”
- “-Collect “{‘sfb’:{‘accounts’:[‘domain\\user1’, ‘domain\\user2’]}}”
- 常见参数: 请参阅 PowerShell 帮助。
上传以前本地保存的数据:
Send-CitrixCallHomeBundle -Credential <PSCredentia\> -Path string [<CommonParameters>]
Path 参数指定了以前保存的捆绑包的位置。
示例:
以下 cmdlet 请求将 Call Home 数据(不包括 WMI 收集器的数据)上传到 CIS。此数据与 Citrix Provisioning VDA 的注册失败有关,该失败在下午 2:30 记录,对应 Citrix 支持案例 123456。除了 Call Home 数据外,文件“c:\Diagnostics\ExtraData.zip”也包含在上传的捆绑包中。
C:\PS\>Start-CitrixCallHomeUpload -InputPath "c:\Diagnostics\ExtraData.zip" -Description "Registration failures with Citrix Provisioning VDAs" -IncidentTime "14:30" -SRNumber 123456 -Name "RegistrationFailure-021812016" -Collect "{'wmi':{'enabled':false}}" -UploadHeader "{'key1':'value1'}" -AppendHeaders "{'key2':'value2'}"
<!--NeedCopy-->
以下 cmdlet 保存了与 Citrix 支持案例 223344 相关的 Call Home 数据,该数据在上午 8:15 记录。数据保存在网络共享上的文件 mydata.zip 中。除了 Call Home 数据外,文件“c:\Diagnostics\ExtraData.zip”也将包含在保存的捆绑包中。
C:\PS\>Start-CitrixCallHomeUpload -OutputPath \\mynetwork\myshare\mydata.zip -InputPath "c:\Diagnostics\ExtraData.zip" -Description "Diagnostics for incident number 223344" -IncidentTime "8:15" -SRNumber 223344
<!--NeedCopy-->
以下 cmdlet 上传您之前保存的数据捆绑包。
$cred=Get-Credential
C:\PS>Send-CitrixCallHomeBundle –Credential $cred -Path \\mynetwork\myshare\mydata.zip
<!--NeedCopy-->