数据粒度和保留

Last published : Nov 13, 2026

数据值聚合

监视服务收集各种数据,包括用户会话使用情况、用户登录性能详细信息、会话负载平衡详细信息以及连接和计算机故障信息。数据根据其类别以不同方式进行聚合。了解使用 OData 方法 API 呈现的数据值的聚合对于解释数据至关重要。例如:
  • 连接会话和计算机故障在一段时间内发生。因此,它们以该时间段内的最大值形式显示。
  • 登录持续时间是时间长度的度量,因此以该时间段内的平均值形式显示。
  • 登录计数和连接故障是该时间段内发生次数的计数,因此以该时间段内的总和形式显示。

并发数据评估

会话必须重叠才能被视为并发。但是,当时间间隔为 1 分钟时,该分钟内的所有会话(无论是否重叠)都被视为并发。间隔的大小如此之小,以至于计算精度所涉及的性能开销不值得其增加的价值。如果会话发生在同一小时内,但不在同一分钟内,则不认为它们重叠。

汇总表与原始数据的关联

数据模型以两种不同的方式表示指标:
  • 汇总表以每分钟、每小时和每天的时间粒度表示指标的聚合视图。
  • 原始数据表示在会话、连接、应用程序和其他对象中跟踪的单个事件或当前状态。
尝试跨 API 调用或在数据模型本身中关联数据时,了解以下概念和限制非常重要:
  • 部分间隔无汇总数据。 指标汇总旨在满足长期历史趋势的需求。这些指标被聚合到汇总表中以形成完整间隔。在数据收集的开始(最旧的可用数据)和结束时,没有部分间隔的汇总数据。当查看一天的聚合(Interval=1440)时,这意味着第一个和最近的不完整天数没有任何数据。尽管这些部分间隔可能存在原始数据,但它们从不进行汇总。您可以通过从特定汇总表中提取最小和最大 SummaryDate 来确定特定数据粒度的最早和最晚聚合间隔。SummaryDate 列表示间隔的开始。Granularity 列表示聚合数据间隔的长度。
  • 按时间关联。 指标按照上一节所述,聚合到汇总表中以形成完整间隔。它们可用于历史趋势,但原始事件在状态上可能比为趋势分析而汇总的数据更具时效性。任何基于时间的汇总数据与原始数据比较都必须考虑到,对于可能发生的部分间隔或时间段的开始和结束,没有汇总数据。
  • 丢失和延迟事件。 如果事件丢失或延迟到聚合周期,聚合到汇总表中的指标可能略有不准确。尽管 Monitor Service 尝试维护准确的当前状态,但它不会回溯时间来重新计算汇总表中丢失或延迟事件的聚合。
  • 连接高可用性。 在连接高可用性期间,当前连接的汇总数据计数中会出现空白,但会话实例仍将在原始数据中运行。
  • 数据保留期。 汇总表中的数据保留计划与原始事件数据的计划不同。数据可能因已从汇总表或原始表中清除而丢失。不同粒度的汇总数据,其保留期也可能不同。较低粒度的数据(分钟)比较高粒度的数据(天)清除得更快。如果由于清除而导致某个粒度的数据丢失,则可以在更高粒度中找到它。由于 API 调用仅返回请求的特定粒度,因此某个粒度没有数据并不意味着同一时间段内更高粒度的数据不存在。
  • 时区。 指标以 UTC 时间戳存储。汇总表按小时时区边界进行聚合。对于不属于小时边界的时区,数据聚合的位置可能存在一些差异。

粒度和保留

Director 检索的聚合数据的粒度是所请求的时间 (T) 跨度的函数。规则如下:
  • 0 \< T \<= 1 小时 - 使用每分钟粒度
  • 0 \< T \<= 30 天 - 使用每小时粒度
  • T \> 31 天 - 使用每日粒度
未聚合的数据来自原始会话和连接信息。此数据增长迅速,因此有其自己的清除设置。清除可确保仅保留长期相关的有用数据。清除可确保更好的性能,同时保持报告所需的粒度。Premium 许可站点的客户可以将其清除保留期更改为所需的保留天数,否则将使用默认值。如果与站点数据库失去连接,Monitor Service 将使用下表中指定的 Premium 授权的默认保留天数。
要访问这些设置,请在 Delivery Controller™ 上运行以下 PowerShell 命令:
asnp Citrix.*
 Get-MonitorConfiguration
 Set-MonitorConfiguration -<setting name> <value>
# 设置名称 受影响的架构表 Monitor 页面中受影响的表和图表 Premium 的保留天数 Advanced 的保留天数
1 GroomSessionsRetentionDays MonitorData.Session 和 Monitordata.Connection 表 此设置会影响“趋势”页面上的会话详细信息、按用户会话划分的登录持续时间、基于应用程序的使用情况表。 90 31
2 GroomFailuresRetentionDays MonitorData.MachineFailureLog 和 MonitorData.ConnectionFailureLog 趋势页面:此设置会影响故障选项卡上的图表和表格。 90 31
3 GroomLoadIndexesRetentionDays MonitorData.LoadIndex 此设置会影响“趋势”页面上“负载评估器索引”选项卡中显示的数据。 3 3
4 GroomDeletedRetentionDays LifecycleState 为“Deleted”的 MonitorData.Machine、MonitorData.Catalog、MonitorData.DesktopGroup 和 MonitorData.Hypervisor 实体。此设置还会删除任何相关的 Session、SessionDetail、Summary、Failure 或 LoadIndex 记录。 LifecycleState 为“Deleted”的 Machine、Catalog、DesktopGroup 和 Hypervisor 实体。此设置还会删除任何相关的 Session、SessionDetail、Summary、Failure 或 LoadIndex 记录。 90 31
5 GroomSummariesRetentionDays MonitorData.DesktopGroupSummary、MonitorData.FailureLogSummary 和 MonitorData.LoadIndexSummary 此设置影响“趋势”页面上的所有图表数据。 365 31
6 GroomMachineHotfixLogRetentionDays MonitorData.Hotfix 此设置影响“计算机详细信息”页面上显示的 VDA 热修复数据。 90 31
7 GroomMinuteRetentionDays 所有摘要表 此设置影响“趋势”页面上显示的“最近 2 小时”时间段的图表。 3 3
8 GroomHourlyRetentionDays 所有摘要表 这会影响“趋势”页面上显示的每周图表。 32 31
9 GroomApplicationInstanceRetentionDays MonitorData.ApplicationInstance 此设置会影响“容量管理”选项卡上的图表和表格以及“趋势”页面上的应用程序使用情况表。 90 不适用
10 GroomNotificationLogRetentionDays MonitorData.NotificationLog 此设置会影响在 Monitor 上显示的警报。 90 不适用
11 GroomResourceUsageRawDataRetentionDays MonitorData.Resourceutilization 此设置会影响在“历史计算机利用率”计算机详细信息页面中看到的 CPU 和内存图表。 3 3
12 GroomResourceUsageMinuteDataRetentionDays MonitorData.ResourceUtilizationSummary 此设置会影响在“历史计算机利用率”计算机详细信息页面中看到的“最近 2 小时”时间段的 CPU 和内存图表。 7 7
13 GroomResourceUsageHourDataRetentionDays MonitorData.Resourceutilizationsummary 此设置影响“历史计算机利用率”计算机详细信息页面中显示的 CPU 和内存图表。 30 30
14 GroomResourceUsageDayDataRetentionDays MonitorData.Resourceutilizationsummary 此设置影响趋势页面上“资源利用率”计算机中以及特定计算机的“计算机利用率”页面中显示的 CPU 和内存图表。 365 31
15 GroomProcessUsageRawDataRetentionDays MonitorData.ProcessUtilization 此设置影响在计算机历史使用情况页面上显示的每进程资源趋势信息。 1 1
16 GroomProcessUsageMinuteDataRetentionDays MonitorData.ProcessUtilizationMinuteSummary 此设置影响在历史计算机利用率页面上显示的“最近 2 小时”每进程的 CPU 和内存使用情况图表。 3 3
17 GroomProcessUsageHourDataRetentionDays MonitorData.ProcessUtilizationHourSummary 此设置影响计算机历史使用情况页面上显示的每个进程的 CPU 和内存使用趋势。 7 7
18 GroomProcessUsageDayDataRetentionDays MonitorData.ProcessUtilizationDaySummary 此设置影响计算机历史使用情况页面上显示的每个进程的 CPU 和内存使用趋势。 30 30
19 GroomSessionMetricsDataRetentionDays MonitorData.Sessionmetrics 此设置影响用户详细信息页面上“会话性能”选项卡中显示的所有图表。 1 1
20 GroomMachineMetricDataRetentionDays MonitorData.Machinemetrics 此设置影响趋势页面上“资源利用率”选项卡中的图表和表格。 3 3
21 GroomMachineMetricDaySummaryDataRetentionDays MonitorData.MachineMetricDaySummary 此设置会影响趋势页面上“资源利用率”选项卡中的图表和表格。 365 31
22 GroomApplicationErrorsRetentionDays MonitorData.ApplicationError 此设置会影响应用程序页面上“应用程序错误”列中显示的错误详细信息。 1 1
23 GroomApplicationFaultsRetentionDays MonitorData.Applicationfailure 此设置会影响应用程序页面上“应用程序故障”列。 1 1
注意:
修改 Monitor Service 数据库中的值需要重新启动服务才能使新值生效。建议仅在 Citrix 支持部门的指导下对 Monitor Service 数据库进行更改。
GroomProcessUsageRawDataRetentionDays、GroomResourceUsageRawDataRetentionDays 和 GroomSessionMetricsDataRetentionDays 设置的默认值限制为 1,而 GroomProcessUsageMinuteDataRetentionDays 的默认值限制为 3。用于设置这些值的 PowerShell 命令已被禁用,因为进程使用数据往往会快速增长。 此外,基于许可证的保留设置如下:
  • 高级许可站点 - 所有设置的清理保留期限制为 1000 天(Citrix 建议 365 天)。
  • 进阶许可站点 - 所有设置的清理保留期限制为 31 天。
  • 所有其他站点 - 所有设置的清理保留期限制为 7 天。
例外:
  • GroomApplicationInstanceRetentionDays 只能在高级许可站点中设置。
  • GroomApplicationErrorsRetentionDays 和 GroomApplicationFaultsRetentionDays 在高级许可站点中限制为 31 天。
长期保留数据会对表大小产生以下影响:
  • 每小时数据。 如果允许每小时数据在数据库中保留长达两年,则一个包含 1000 个交付组的站点可能导致数据库按如下方式增长:
    1000 个交付组 x 24 小时/天 x 365 天/年 x 2 年 = 17,520,000 行数据。如此大量的数据在聚合表中对性能的影响是巨大的。鉴于仪表板数据是从此表中提取的,因此对数据库服务器的要求可能很高。过多的数据量可能会对性能产生显著影响。
  • 会话和事件数据。 每次启动会话并建立连接/重新连接时收集的数据。对于大型站点(10 万用户),此数据增长迅速。例如,两年内这些表的数据量将超过 1 TB,需要高端企业级数据库。