定义和捕获遥测数据

遥测指用于监测系统以观测和了解其行为的指标集合。 遥测用于:

  • 测量系统的性能以定义和比较基准
  • 验证系统是满足还是超过支持定义工作流程所需的要求
  • 识别延迟、索引、瓶颈和系统整体运行状况的差异
  • 通知系统优化以增强最终用户体验

可以利用 IT 基础设施监测工具来捕获系统日志和用户体验,以收集整体指标。 如果您在公共云中实施 ArcGIS,则可通过诸多服务进行整体系统监测,例如 AWS CloudWatchAzure Monitor。 此外,Windows 性能监视器 (PerfMon) 等系统性能监测工具有助于实时捕获基本特征,例如 CPU、内存 RAM、网络、磁盘以及日志,以跟踪趋势和长期问题。

在测试和捕获环境的不同阶段,建议采用不同级别的遥测颗粒度。 例如,虽然在测试环境中执行详细日志记录有助于进行故障排除,但在生产环境中执行此操作可能会对最终用户的性能产生负面影响。

何时捕获

系统遥测对于监测和管理系统的性能、运行状况和整体行为非常有价值。 考虑捕获遥测数据:

  • 实时进行持续的系统管理和主动问题检测
  • 对于长期趋势分析,长时间收集遥测数据可以为有关系统优化、硬件升级或软件改进的战略决策提供信息。
  • 在性能和负载测试期间,以整体方式了解系统的性能,并以减轻潜在问题和风险的方式设计未来架构。  
  • Apache JMeter 是一个开源工具,可用于模拟服务器、网络或对象上的繁重负载,以测试其强度或分析不同负载类型下的整体性能。
  • 在进行故障排除或调试时,遥测可以提供诊断问题所需的信息。

可使用多种工具选项捕获和分析 ArcGIS 不同组件的遥测数据。 其中一种工具 ArcGIS Monitor 可收集有关整个系统组件(如服务器、服务、门户和地理数据库)的指标。 请注意,下面提供了其他示例,但它并不是可用于捕获遥测的工具的完整列表。

客户端遥测

在客户端环境中,性能问题可能看起来像地图呈现速度缓慢或等待时间过长。

  • ArcGIS Pro 性能评估工具 (PAT):执行测试以评估计算机运行关键 ArcGIS Pro 工作流的能力。 可单独使用该工具调查感知的性能问题或借助 Esri 技术支持。
  • ArcGIS Pro 诊断监视器:可帮助诊断各种应用程序问题,包括未响应条件、资源过度消耗、功能故障和性能下降。
  • Fiddler 日志:帮助在从客户端应用程序使用服务时监测 Web 流量。  
  • 屏幕截图:除了定量遥测之外,还可以考虑在用户评估性能时通过观察用户体验来捕获定性指标。

Web 分析

捕获遥测数据的一种常见做法是使用嵌入在 Web 页面中的客户端 JavaScript 库,这些库在客户端浏览器中加载,然后将遥测信息发送到集中式收集或聚合服务。 这些方法通常由商业提供商或开源框架或模式支持,其中包括 Google Analytics、Adobe Experience Cloud 等示例。 大多数服务都包含用于查询和处理所收集数据的分析体验。

Web 分析通常通过 Cookie 和其他浏览器组件进行跟踪,这些组件可能需要考虑隐私限制,因此请务必与您的 Web 托管或 IT 团队密切合作,了解启用 Web 分析的影响。 Web 分析可以完全访问用户在 Web 页面上的行为,包括他们的鼠标移动、交互和输入,并且对于了解用户如何完成流程、他们如何在页面之间移动以及哪些页面和交互在您的站点上驱动更长或更详细的会话非常有用。 在自定义应用程序中,可以通过 JavaScript 将特定指示器发送到 Web 分析系统,例如,您可以指示用户平移地图的次数、最常见的缩放范围或最常查询的要素。

要实施 Web 分析,通常是向 HTML 文档或 Web 页面的 <head> 标记添加 <script> 标记。 这可以在部署自定义开发的 Web 页面或应用程序时轻松完成,但对于使用 ArcGIS 现成的 Web 应用程序,Web 分析的实施可能会受到限制,因为这些页面不支持编辑默认 HTML 或页面索引。 目前,对在 ArcGIS 现成 Web 应用程序中插入 Web 分析的支持仅限于:

  • ArcGIS Hub,支持插入 Google Analytics 4、Adobe Analytics 和 Siteimprove analytics,有关进一步的说明,请参阅相关文档
  • ArcGIS Instant Apps,支持插入 Google Analytics 和 Adobe Analytics 追踪,有关说明,请参阅相关文档
  • ArcGIS Story Maps,支持 Google Analytics 和 Adobe Analytics,包括发送到 Adobe Analytics 的特定属性,有关说明,请参阅相关的 Story Maps 文档
  • 以及 ArcGIS Experience Builder,它支持插入 Google Analytics 追踪代码,有关说明,请参阅相关文档和最近的博客文章

ArcGIS Enterprise

在 ArcGIS Enterprise 中,查找服务器和门户组件中的严重错误,例如服务崩溃或其他影响性能或中断服务的事件。  

  • ArcGIS Server 日志:监测并解决服务器站点的问题。 日志可帮助您识别错误,并提供用于解决问题的上下文。  

数据库

在数据库级别下,遥测数据可用于查找问题,例如性能不佳的 SQL 查询或系统等待时间过长。 RDBMS 工具通常提供诸多内置选项,用于识别和解决问题。 例如,SQL Server 查询存储功能可帮助数据库管理员监测和管理在 SQL Server 数据库上执行的查询的性能。可以配置报告和警报,以识别有问题的用户活动、数据库服务器或实例配置问题,或者使用索引、缓存、分区或其他技术优化查询性能的机会。

Top