您正在查看 Apigee Edge 文档。
前往 Apigee X 文档。 信息
本部分将 API Monitoring 与 Edge Analytics 进行比较。虽然 API Monitoring 和 Edge Analytics 都可让您收集和查看 API 数据,但它们的目标不同:
- API Monitoring 的目标是确保您的 API 按预期启动并正常运行。为此,您需要查看最新的可用数据。API Monitoring 提供的数据非常接近实时数据,并且您可以创建提醒,以便在出现问题时收到通知。
- Edge Analytics 的目标是了解 API 的长期行为,以便确保您的 API 支持您的业务要求,或在必要时进行更改。出于这些目的,查看实时数据不那么重要。因此,Google Analytics 数据会稍有延迟,但通常最多延迟 10 分钟。
请注意,API Monitoring 数据(主要与错误代码和延迟时间相关)只是 Google Analytics 数据的一小部分。
API Monitoring 数据与 Google Analytics 数据之间的差异
本部分介绍了 Edge Analytics 与 API Monitoring 收集的数据之间的一些细微差异。 由于 API Monitoring 和 Analytics 使用不同的数据流水线,因此 Monitoring 生成的自定义报告与 Analytics 生成的报告之间可能会存在细微差异。例如,您可能会发现超时错误的报告结果存在差异,包括后端超时(请求的 HTTP 状态代码为 504)和客户端超时(HTTP 状态代码为 499)。这些数据在 Google Analytics 自定义报告中可能显示状态代码 200,但在 Google Analytics 监控自定义报告中则显示状态代码 504 或 499。API 监控
API Monitoring 可提供实时的 API 性能数据分析,并帮助您快速诊断和修复问题,以确保 API 按预期正常运行。
借助 API Monitoring,您可以执行以下操作:
- 提高 API 可用性并缩短平均诊断时间 (MTTD)。
- 根据上下文提醒,在使用方受到影响之前采取相应措施。
- 利用 Apigee 故障代码加快诊断。
- 快速找出问题区域,以诊断错误、性能和延迟时间问题及其来源。
Edge API Analytics
Edge API Analytics 会收集和分析流经 API 的信息。API Analytics 会捕获以下信息:
- API 流量随时间变化的趋势
- 您的热门应用有哪些
- 您的主要开发者有哪些
- 哪些 API 方法最受欢迎
- 什么时候 API 响应时间最快/最慢
- 从地理位置角度看,在哪里查看 API 流量最多
API Analytics 收集的数据
API Analytics 会收集并分析流经 API 的众多数据。例如,在您的 API 部署期间,Google Analytics 会持续记录收到的消息数、开发者数量、响应时间、错误数、正在使用的应用数量、请求大小以及许多其他数据。
如需详细了解指标及其使用方式,请参阅使用 Metrics API 衡量 API 程序性能。如需查看指标的完整列表,请参阅分析指标、维度和过滤条件参考文档。
收集自定义指标
您还可以使用 StatisticsCollector 政策收集自定义指标。StatisticsCollector 政策可以将请求标头、XML/JSON 载荷、查询参数、URI 和其他位置中的信息写入 Google Analytics 服务器,以进行分析和生成报告。
访问 Google Analytics 数据
生成预定义指标和自定义指标后,您可以使用 API Analytics 可视化工具(包括信息中心、自定义报告和地图)访问这些指标。如需详细了解 API Analytics 提供的可视化工具,请参阅分析信息中心。如需详细了解自定义报告,请参阅创建自定义报告。
比较 API Monitoring 和 API Analytics
API 开发者同时使用 API Monitoring 和 API Analytics。这两者之间的一个主要区别是,API Monitoring 内置了提醒机制。借助提醒功能,运营团队可以实时响应 API 问题,确保 API 可用并按预期运行。
提醒条件定义特定的状态代码(2xx/4xx/5xx)、延迟时间和故障代码阈值;一旦超出该阈值,界面就会触发视觉提醒,并通过各种渠道(例如电子邮件、Slack、PagerDuty 或网络钩子)发送通知。您可以在环境、API 代理、目标服务或地区级别设置提醒。
触发提醒后,您的运营团队可以使用 API 监控界面调查问题并深入探究其根本原因。 然后,您可以生成自定义报告,其中包含与提醒相关的预定义信息,例如:
- 总响应时间
- 目标响应时间
- 代理错误
- 目标错误
- 请求 UUID
- 其他更多
API Analytics 旨在捕获各种数据,供多个团队使用。例如:
- 运维团队可以使用 Google Analytics 数据来确定流量高峰期或低谷期,以便扩容或缩减服务以满足不断变化的需求。
- 营销团队可以使用 Google Analytics 数据来确定由各个 API、应用、客户或其他数据确定的客户使用模式。
- 所有团队都可以访问从请求收集的自定义数据,以跟踪标头值、查询参数或请求载荷等特定信息。