Citrix 洞察服务

Citrix Insight Services (CIS) 是一个 Citrix 平台,用于实现检测、遥测和业务洞察生成。它的检测和遥测功能使技术用户(客户、合作伙伴和工程师)能够自行诊断和修复问题并优化其环境。有关 CIS 及其工作原理的详细信息和最新信息,请参阅 https://cis.citrix.com(需要 Citrix 帐户凭据)。

上传到 Citrix 的所有信息均用于故障排除和诊断目的,以及改进产品的质量、可靠性和性能,但须遵守:

此 Citrix 虚拟应用和桌面™ 版本支持以下技术。

除了(且独立于)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 /disableexperiencemetrics option.

    To enable automatic uploads with the XenDesktopServerSetup.exe or XenDesktopVDASetup.exe command, include the /sendexperiencemetrics option.

Citrix 客户体验改善计划

当您参与 Citrix 客户体验改善计划 (CEIP) 时,匿名统计数据和使用信息将发送给 Citrix,以帮助 Citrix 改进 Citrix 产品的质量和性能。有关详细信息,请参阅 https://more.citrix.com/XD-CEIP

在站点创建或升级期间注册

当您创建站点(安装第一个 Delivery Controller™ 后)时,您将自动注册 CEIP。首次数据上传大约在您创建站点七天后进行。

您可以在创建站点后的任何时间停止参与。在 Web Studio 左侧窗格中选择“设置”节点,然后关闭“Citrix 客户体验改善计划”设置。

当您升级 Citrix 虚拟应用和桌面 部署时:

  • 如果您从不支持 CEIP 的版本升级,系统会询问您是否要参与。
  • 如果您从支持 CEIP 的版本升级,并且已启用参与,则 CEIP 会在升级后的站点中启用。
  • 如果您从支持 CEIP 的版本升级,并且已禁用参与,则 CEIP 会在升级后的站点中禁用。
  • 如果您从支持 CEIP 的版本升级,并且参与状态未知,系统会询问您是否要参与。

收集的信息是匿名的,因此上传到 Citrix Insight Services 后无法查看。

安装 VDA 时的注册

默认情况下,安装 Windows VDA 时会自动注册 CEIP。您可以在注册表设置中更改此默认值。如果您在安装 VDA 之前更改注册表设置,则会使用该值。

控制 CEIP 自动注册的注册表设置(默认值 = 1):

Location: HKLM: \Software\Citrix\Telemetry\CEIP Name: Enabled Value: 0 = disabled, 1 = enabled

默认情况下,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),以进行分析和故障排除。

In Citrix Virtual Apps and Desktops, Call Home runs as a background service under the name Citrix Telemetry Service.

回传调度功能也可在 Citrix Scout 中使用。有关详细信息,请参阅 Citrix Scout

收集了哪些内容

Citrix Diagnostic Facility (CDF) 跟踪记录了对故障排除有用的信息。Call Home 收集 CDF 跟踪的子集,这些跟踪在排查常见故障(例如 VDA 注册和应用程序/桌面启动)时非常有用。此技术称为始终开启跟踪 (AOT)。AOT 日志保存到磁盘上的 C:\ProgramData\Citrix\TelemetryService\CitrixAOT。

注意:

ProgramData 文件夹是隐藏的。要显示它,请单击 View > Show > Hidden items

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 上保持较小的占用空间。
  • 跟踪信息保存在内存中,以避免预配的计算机上出现 IOPs。
  • 跟踪缓冲区使用循环机制在内存中保留跟踪信息。

Call Home 收集 (/zh-cn/citrix-virtual-apps-desktops/2411/manage-deployment/call-home-datapoints.html) 中列出的关键数据点。

配置和管理摘要

您可以在使用完整产品安装向导时或之后,使用 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 或更高版本。
  • 思杰遥测服务必须正在计算机上运行。
  • The system variable PSModulePath must be set to Telemetry’s install path, for example, C:\Program Files\Citrix\Telemetry Service\.

在组件安装期间启用 Call Home

在 VDA 安装或升级期间: 当您使用完整产品安装程序中的图形界面安装或升级 Virtual Delivery Agent 时,系统会询问您是否要参与 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=TrueIsMasterImage=False

  • 为从主映像创建的计算机启用计划上传: 在主映像中启用计划上传可避免配置计算机目录中创建的每台计算机。

    Enable-CitrixCallHome -Credential $cred -MasterImage

    为确认已启用计划上传,请输入 Get-CitrixCallHome。如果已启用,则返回 IsEnabled=TrueIsMasterImage=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=FalseIsMasterImage=False

使用 Citrix Scout 禁用收集计划

要使用 Citrix Scout 禁用诊断收集计划,请遵循 计划收集 中的指导。在步骤 3 中,单击 Off 以取消所选计算机的计划。

禁用 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。您的信息将有所不同。

  1. 在浏览器中添加代理服务器信息。在 Internet Explorer 中,选择 Internet 选项 > 连接 > 局域网设置。选择 为局域网使用代理服务器” 并输入代理服务器地址和端口号。

  2. 在 PowerShell 中,执行以下命令:netsh winhttp import proxy source=ie

    配置代理服务器时运行 netsh 命令的示例

  3. 使用文本编辑器,打开并编辑 TelemetryService.exe 配置文件,此文件位于 C:\Program Files\Citrix\Telemetry Service 路径下。请将红色框中显示的信息添加进去。

    Add proxy information to the TelemetryService.exe file

  4. 重新启动遥测服务。

Run the Call Home cmdlets in PowerShell.

手动收集诊断信息,并将其上传

您可以使用 CIS 网站将诊断信息包上传到 CIS。您还可以使用 PowerShell cmdlet 收集诊断信息并将其上传到 CIS。

要使用 CIS 网站上传捆绑包:

  1. 使用您的思杰帐户凭据登录思杰洞察服务。
  2. 选择 我的工作区
  3. 选择 健康检查,然后导航到您的数据位置。

CIS 支持多个用于管理数据上传的 PowerShell cmdlet。本文档涵盖了两种常见情况下的 cmdlet:

  • 使用 Start-CitrixCallHomeUpload cmdlet 手动收集诊断信息包并将其上传到 CIS。(该捆绑包不会在本地保存。)
  • 使用 Start-CitrixCallHomeUpload cmdlet 手动收集数据并在本地存储诊断信息包。这允许您预览数据。稍后,使用 Send-CitrixCallHomeBundle cmdlet 手动将该捆绑包的副本上传到 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 数据时,此参数是必需的。
  • 描述和事件时间: 关于上传的自由格式信息。
  • 服务请求编号: Citrix 技术支持事件编号。
  • Name: 标识捆绑包的名称。
  • UploadHeader: 指定上传到 CIS 的上传标头的 JSON 格式字符串。
  • AppendHeaders: 指定上传到 CIS 的附加标头的 JSON 格式字符串。
  • 收集: JSON 格式字符串,指定要收集或省略的数据,格式为 {‘collector’:{‘enabled’:Boolean}},其中 Boolean 为 true 或 false。 有效的收集器值为:

    • “wmi”
    • ‘进程’
    • ‘注册表
    • ‘崩溃报告’
    • ‘跟踪’
    • ‘文件’
    • msi
    • ‘本地数据’
    • ‘站点数据’
    • sfb

    默认情况下,除“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-->
Citrix 洞察服务