主页 topics API 监控 什么是 API 监控?
探索 IBM Instana Observability 预约 Instana Observability 演示
图表和图形插图

发布日期:2023 年 11 月 29 日
撰稿人:Chrystal R. China、Michael Goodwin

什么是 API 监控?

API 监控是观察企业应用程序编程接口 (API) 的性能、可用性和功能的过程。

具体而言,API 监控涉及评估正式上线环境中的 API 响应,以确保它们满足企业的性能基准,并在出现问题时向相关方发出警报。随着企业日益转向数字化 IT 基础架构,各方和系统之间的顺畅连接变得至关重要。 这正是 API 可以发挥作用的地方。

API 是大多数移动和网络应用程序的构件,也是构成大多数 IT 生态系统的各种流程、协议和应用程序的数据编排中心。它们促进应用程序之间以及应用程序与客户端之间的通信,从而实现各种服务的无缝整合。

超过 75% 的企业表示每个应用程序(平均)部署了 26 个 API。1超过三分之一的企业表示他们所有的应用程序均使用 API,预计这一数字在未来几年将增长到 50% 以上。1

因此,API 性能是大多数企业真正关心的问题。 如果管理不当,受损或过时的 API 可能会严重影响最终用户体验和应用程序的整体功能以及业务利润。严密的 API 监控措施有助于企业在 API 性能和功能问题成为破坏性(甚至灾难性)问题之前及时加以解决。

请求 Instana 演示

获取 IBM Instana Observability 演示,了解如何在几分钟内实现全栈可观察性和监控。

相关内容

订阅 IBM 时事通讯

API 监控类型

当今的 API 可以促进复杂的系统、应用程序和微服务整合流程,但即使是最先进的 API 也需要团队实施严格的监控措施。 幸运的是,有许多 API 监控策略可以帮助确保企业 API 的长期效率和有效性。

正常运行时间监控

正常运行时间监控定期对 API 端点(即 API 数据交换的位置)进行 ping 操作,以确保其可访问且响应良好(即“正常运行”)。 如果 API 没有响应或响应时间过长,系统会发送警报。

用于监控正常运行时间的 API 指标包括可用性百分比(API 可访问的时间比例)和停机持续时间(API 不可访问的时长)。 服务级别协议 (SLA) 规定所需正常运行时间百分比的情况并不罕见,通常要求约 99.9% 或更高的正常运行时间。

性能监控

性能监控可量化 API 响应请求的速度和可靠性,并帮助识别效率低下、网络问题和服务器过载的情况。 性能通常由响应时间(API 处理和响应请求/调用所需的时间)、延迟(将请求从发送方传输到接收方所需的时间)和吞吐量(单位时间内处理的请求数量)等指标来衡量。性能监控还可以跟踪错误率,错误率表示导致错误的请求所占的百分比。

综合监控

合成监控是一个模仿最终用户使用应用程序时可能采取的路径的过程,利用脚本模拟用户场景、设备类型和地理位置等要素,让团队了解应用程序的性能情况。

真实用户监控(RUM)

与合成监控一样,RUM 允许团队查看详细的应用程序性能和功能数据。不过,它并非监控模拟用户的体验,而是观察真实用户的实际体验,从而为最终用户体验提供全栈可观察性,并促进更精细的决策。

验证监控

验证监控通过发送测试脚本来验证 API 响应、数据格式和状态代码是否正确,以及系统调用是否返回适当的数据,从而评估 API 的行为是否符合预期。验证监控对于识别多步骤流程或 API 的底层逻辑或数据处理问题特别有用。

安全监控

去年,约有 35% 的企业至少发生过一次 API 安全事件,超过半数的企业表示面临多起事件。1由于 API 会向外界公开数据,因此最有可能成为网络攻击的目标之一。

安全监控的重点是通过实施跟踪不成功的登录尝试、扫描 API 调用模式中的异常情况以及检查数据泄露等措施,确保 API 免受不法之徒的恶意攻击。安全监控通常涉及使用加密、验证和身份验证协议(例如 OAuth 2.0、API 密钥、JSON 模式验证等),以确保只有授权用户才能获取 API 数据。这些系统还确保前端和后端系统之间的数据传输安全,防范黑客攻击、数据盗窃和 DDoS 攻击等网络威胁。

整合监控

Slack 等应用程序以及其他应用程序和网络服务通常都依赖于托管 API 和第三方 API,这可能会造成数据传输问题。整合监控通过测试 API 与其通信的其他应用程序和系统之间的交互来解决此类问题,确保系统的所有环节都能按预期协同运作,并识别系统之间的接口问题。此类监控对于在微服务架构中工作尤其有用,在这种架构中,多项独立服务会通过 API 进行交互。

合规监视

API,尤其是在医疗和金融行业运行的 API,经常会传输敏感的用户和公司数据,这增加了对合规监控流程的需求。

合规监控可确保 API 遵守相关的隐私标准(如 HIPAA)、特定行业标准(如用于支付处理的 PCI DSS),甚至公司内部标准。团队可以跟踪数据处理措施、加密标准和访问控制机制等流程,以维护法律合规性和客户信任。

版本控制监控

随着时间的推移,API 会不断发展,添加新功能,淘汰旧功能,并改变某些功能的运作方式。当发生这些变化时,有必要监控过渡情况,以便依赖 API 的应用程序不会受到更新的负面影响。版本控制监控让团队可以跟踪一段时间内的 API 变化,通常的做法是审查每次发布的新版本。

版本控制监控可能涉及比较不同版本之间的功能,跟踪新 API 版本的采用率,监控与已停用功能相关的错误率,以及跟踪应用程序各个版本的 API 使用情况。此类监控有助于识别 API 结构或功能更改期间出现的问题,并可以为 API 的未来更改提供信息。

无论采用哪种方法,团队都应优先考虑实时监控,以获得有关应用程序性能的即时反馈,并在问题造成用户和合作伙伴服务中断之前加以解决。另一个益处是,通常可以通过仪表板和状态页面直观呈现实时监控信息,从而提供即时见解并自动发出系统警报,这都是管理高可用性或关键工作流的重要流程。

API 监控流程

API 是将现代应用程序架构和自动化工作流结合在一起的粘合剂,因此保持其最佳状态可使 IT 基础架构更迅速敏捷。为了实施全面有效的 API 监控流程,开发运维 (DevOps) 和安全团队可以:

定义性能指标

在制定任何监控协议之前,团队应确立明确的目标。这意味着要定义可用性、响应时间、吞吐量和错误率等方面的 KPI。当然,KPI 应与更广泛的企业目标和消费者需求保持一致。

选择合适的 API 监控解决方案

考虑到一些 API 网络的广泛程度,依赖 API 监控工具是理所当然的选择。先进的 API 数据可观察性平台(例如 Postman、Datadog 和 IBM Instana Observability)可以使用 HTTP 关键字检查和 DNS 服务器监控等功能自动执行并简化监控流程。在评估监控服务时,应考虑其功能、易用性、技术堆栈兼容性和成本,以确保合适。

配置监控协议

此流程将因监控工具而异,但通常涉及三项关键任务:设置端点、定义 API 测试和调度监控。

设置端点需要团队提供 API 端点的 URL、HTTP 响应代码以及任何必需的标头或参数,以便监控工具了解运行测试脚本的位置和方式。顾名思义,定义测试就是配置监控工具将运行的测试以验证 API 性能的过程。设置监控计划只需团队决定相关工具运行所选测试的频率。

设置警报

警报是任何监控系统的关键环节,可提供系统问题的即时通知,使团队能够在问题影响用户之前加以解决。大多数监控工具允许用户根据各种条件配置警报,例如当 API 响应时间超过特定阈值,或在给定时间范围内发生一定数量的错误时。

分析和优化

API 会不断发展,因此必须定期查看 API 性能数据和洞察分析,以确保监控协议仍然适用。查找历史数据中可能表明潜在问题的趋势和模式。例如,如果 API 的响应时间在某些时段持续偏长,则可能表明在这些时段需要更多资源。

API 监控工具的优势
  • 预先确定的自动监控时间表。团队可以在整个 API 生命周期中定期运行完全自动化的 API 测试脚本,只需极少的日常维护。
  • 全球化测试功能。团队可以测试全球各地的端点,以了解问题和错误的规模。
  • 提高数据能见度。 团队可以查看自己管理的 API 和第三方供应商(例如信用卡公司)管理的 API 的监控数据。
  • 即时错误警报。 出现问题时,团队会通过监控平台、短信、电子邮件或其他渠道立即收到通知。
相关解决方案
IBM Instana Observability 新一代应用性能管理平台

IBM Instana 通过提供一个解决方案来实现可观察性的普及化,任何人都可以使用该解决方案在所需的环境中获取所需的数据。该平台专为云原生而构建,但与技术无关,支持以 1 秒的粒度自动且连续地提供高保真数据,并在移动、网络、应用程序和基础架构的逻辑和物理依赖关系环境中进行端到端跟踪。

    深入了解 Instana Observability 预约 Instana Observability 演示

    IBM Instana Observability API 监控

    利用 IBM Instana Observability 进行 API 监控,您将能够确保 API 的可用性、可靠性和性能,提供无缝的数字体验。

      深入了解如何利用 Instana Observability 进行 API 监控

      资源 API 管理关键功能

      IBM 在 2023 年 Gartner API 管理关键功能报告中被评为领导者。

      什么是 REST API?

      REST API 提供了一种灵活的轻量级应用程序整合方式,并已成为连接微服务体系结构组件的最常用方法。

      什么是应用程序现代化?

      应用程序现代化主要是指将单体旧版应用程序转变为基于微服务架构的云应用程序。

      采取后续步骤

      IBM Instana 提供人人都能使用的实时可观察性。它可以快速实现价值,同时确保您的可观察性策略能够跟上当今和未来环境的动态复杂性。从移动设备到大型机,Instana 支持超过 250 种技术,并且还在不断增加。

      探索 IBM Instana 预约实时演示