API 监控:定义、指标、类型及设置指南

快速定义

API 监控 是一种持续的、自动化的做法,用于验证 API 端点的可用性、响应时间和数据正确性——不仅确认端点是否响应,还确认其返回的是否是正确的数据、格式是否正确、延迟是否在可接受范围内,从用户和依赖系统的角度进行验证。

编辑插图展示API监控作为数字神经系统——互联的数据节点、服务器机架、云平台和一个通过发光数据路径连接的地球,前景是半透明的仪表盘面板。
API 是现代软件的连接组织。每当用户登录、提交支付或接收实时通知时,背后都会执行多个 API 调用——通常跨越微服务、云供应商和第三方供应商。当这些调用失败或变慢时,影响是即时的:结账流程中断、用户被锁定以及收入损失。

然而,大多数团队只有在客户报告时才发现 API 失败。没有主动监控,失败与调查之间的时间差通常以分钟计——足够长以致于在通知任何人之前暴露真实的收入和 SLA 风险。

本指南解释了什么是 API 监控、它如何工作、哪些指标需要跟踪、它与 API 测试和 APM 有何不同,以及如何实施——以便 DevOps 工程师、SRE 和 QA 团队能够做出明智的生产决策。

什么是 API 监控?

API 监控包括三个不同层次的验证,按照具体程度递增排序:

  • 可用性监控 — 端点是否可达?是否返回 HTTP 响应且无超时?
  • 性能监控 — 响应耗时多久?TTFB、DNS 解析或 TLS 握手是否引入延迟?
  • 载荷验证 — 响应体是否包含预期的数据结构?JSONPath 或 XPath 断言是否通过?
HTTP 200 陷阱。 HTTP 200 状态码并不保证正确性。上游依赖降级时可能返回 200,但数据为空、陈旧或格式错误。完整的 API 监控会验证响应载荷——而不仅仅是状态码。这正是基本在线监测失败的地方,也是载荷断言成为捕捉可用性监控漏掉的“隐形失败”关键能力的原因。

什么是 API 端点?

应用程序编程接口(API)是一组允许软件系统通信的协议和定义。API 端点是 API 接收请求的特定 URL并返回响应——API 监控的观察单元。例如:

  • POST /v2/auth/token — 令牌颁发端点
  • GET /v2/orders/{id} — 订单检索端点
  • POST /v2/payments/charge — 支付处理端点

现代应用同时依赖数十甚至数百个此类端点——内部微服务、第三方支付网关、身份提供者、运输 API 以及 CRM 系统。API 监控保持对所有这些端点的可见性。

API 监控类型

并非所有 API 监控都相同。理解各类别有助于团队构建符合其架构和业务需求的覆盖范围。五个核心类型适用于几乎所有团队;当特定条件适用时,专业类型则很重要。

核心类型

类型 验证内容 最佳用途
正常运行时间监控 端点可达性;HTTP 响应码;超时窗口内响应 基本可用性 SLA;即时故障检测
性能监控 响应时间,TTFB,DNS 解析,TCP 握手,TLS 时间,吞吐量 延迟 SLA,P95/P99 目标,容量规划
负载/验证监控 通过 JSONPath/XPath 断言验证响应体;模式正确性;字段值 捕获 HTTP 200 ≠ 正确数据的隐性失败
合成监控 定时从全球各地模拟 API 调用,独立于真实流量 主动检测;地理覆盖;零流量时间段
多步骤事务监控 链式 API 调用序列(例如 auth → query → submit → confirm);步骤间数据传递 电商流程,登录流程,订单工作流

专业类型

类型 验证内容 最佳用途
安全监控 认证失败,异常请求模式,证书过期,速率限制滥用,令牌重放 金融科技,医疗保健;处理 PII/PHI 的 API
合规相关检查 TLS 版本/密码验证,证书过期,安全头存在性,认证强制测试 医疗保健,金融服务,受监管行业
真实用户监控(RUM) 实际用户 API 交互;完整会话可见性;真实地理和设备差异 >理解真实用户影响;验证合成监测结果
版本控制与弃用监控 API版本采用率;版本变更后的错误激增;向后兼容性 同时管理多个API版本的团队
第三方/集成监控 外部API依赖(Stripe、Okta、Salesforce、Twilio);区分外部与内部故障 任何依赖第三方API执行关键流程的应用

关于合规相关检查的说明:这些为特定技术控制提供支持证据。合规框架(HIPAA、PCI DSS、SOC 2)需要广泛的组织治理,监控本身无法完全覆盖。

合成监控与真实用户监控(RUM)

并列示意图:左侧显示机器人合成监控探针定期向全球API端点发送稳定的检查;右侧显示真实用户向相同网络发送不规则的API请求波。
合成监控从受控位置24/7运行预定检查。RUM捕获真实用户带来的设备、网络和行为的实际混合情况。

两种方法都提供API性能数据,但视角根本不同:

合成监控 真实用户监控(RUM)
触发方式 按计划的脚本检查(例如,每1分钟一次) 生产环境中的实际用户请求
覆盖范围 全天候运行—包括无真实用户活跃时 仅在用户主动发起请求时生成数据
检测方式 主动—在用户受影响前捕获故障 被动—在用户受到影响后暴露问题
范围 公共及私有/内部API(通过Private Agent) 真实用户/客户端访问的API—主要是面向公众的,企业级RUM也可捕获经仪表化应用发出的内部API调用
使用场景 持续可用性和性能验证 理解真实影响范围和用户体验
最佳实践:合成监控作为您的第一道防线…efense — 它在用户发现之前捕捉故障。使用 RUM 验证实际影响并了解完整的用户体验。

关键 API 监控指标

跟踪正确的指标是知情响应事件与警报疲劳之间的区别。以下是最重要的指标 — 以及准确的基准和每个指标告诉您的内容。

指标 目标 / 基准 捕捉内容
可用性 (运行时间 %) ≥ 99.9%(三九);收入关键的 API 要求 99.99% 完全中断,部分中断,超时
总响应时间 简单端点< 200 毫秒;复杂操作< 1 秒 服务器变慢,过载,部署回归
首字节时间 (TTFB) 理想< 100 毫秒;可接受< 300 毫秒 响应开始前的服务器处理延迟
P95 / P99 响应时间 每个端点基线 P95 的 2 倍时警报;根据端点行为调整 影响最慢 1-5% 请求的尾部延迟
错误率 (4xx / 5xx) 生产环境 API< 0.1% 认证失败,错误输入处理,服务器错误
DNS 解析时间 同区域缓存查找< 50 毫秒;跨区域可超过 100 毫秒 DNS 传播问题,解析器故障
TLS 握手时间 < 100 毫秒 证书配置错误,TLS 版本协商问题
负载断言通过率 100%(任何失败均告警) 静默失败:HTTP 200 响应中数据错误或缺失
吞吐量(请求/秒) 与历史基线比较 异常流量骤降或剧增
证书到期(剩余天数) 30 天警报;7 天关键警报 TLS 证书临近到期

响应时间基准

优秀
< 100 毫秒
用户几乎感觉不到
良好
100–200 毫秒
大多数用例可接受
可接受
200–500 毫秒
可容忍;监控趋势
缓慢
500ms–1s
调查
较差
> 1s
可衡量的转换影响;> 3s 为关键

API 监控是如何工作的?

了解技术机制有助于团队正确配置监控并准确解释结果。

核心监控循环

  1. 计划。 在配置的间隔(例如每1分钟一次)从选定的全球监控位置运行合成检查。
  2. 发送请求。 监控代理向目标端点发送HTTP请求——包括HTTP方法(GET、POST、PUT、PATCH、DELETE),请求头,身份验证凭据和请求体。
  3. 测量时间。 代理记录DNS解析时间、TCP连接时间、TLS握手时间、首字节时间(TTFB)和总响应时间作为不同组成部分。
  4. 断言。 根据配置的断言评估响应——HTTP状态码、响应时间阈值、响应头和通过JSONPath(REST)或XPath(SOAP)的负载内容。
  5. 警报或通过。 如果任一断言失败,或请求超时,则会创建事件并根据配置的通知规则发送警报。
  6. 记录。 所有结果——通过和失败——都带有时间戳、响应数据和断言结果进行存储,以用于历史趋势和SLA报告。
水平瀑布图,显示HTTP请求阶段作为堆叠彩色条:DNS、TCP、TLS、服务器处理和主体传输,TTFB括号从开始到服务器处理。 构成HTTP请求的各阶段。TTFB涵盖DNS、TCP、TLS和服务器处理——不包括主体传输。主体传输慢而TTFB快通常表示负载大;TTFB慢而主体传输快通常表示服务器端处理慢。

多步骤API事务监控

五步API事务链:认证、产品查询、加入购物车、结账和付款确认,由箭头连接,传递令牌和会话ID等动态值。
一个真实的用户旅程通常不是单一API调用。多步骤监控将调用串联,并自动在它们之间传递动态值(令牌,会话ID,订单ID)。.

单端点监控确认单个端点的响应。但真实用户旅程不是单个 API 调用——它们是依赖于前一步输出的链式序列。

考虑一个电子商务结账流程:

  • 步骤 1POST /auth/token:用户认证;从响应体中提取 access_token
  • 步骤 2GET /products/{id}:获取产品详情;将令牌注入 Authorization
  • 步骤 3POST /cart/add:添加商品;从响应中提取 cart_id
  • 步骤 4POST /checkout/initiate:用 cart_id 启动结账;提取 checkout_session_id
  • 步骤 5POST /payments/charge:处理支付;断言响应字段 order_status 等于 'confirmed'

在单端点监控中,这五个步骤单独通过,而整个交易可能失败——因为会话数据未在步骤间正确传递,令牌中途过期,或者支付 API 返回 HTTP 200 状态但负载中含错误字段。多步骤监控作为一个监控任务执行整个链条,独立验证每个步骤,并自动在步骤之间传递动态值(令牌、会话 ID、订单 ID)。

Dotcom-Monitor 通过在单个监控任务中串联顺序 API 调用,实现了多步骤事务监控。步骤间的变量提取与注入是自动的。每个步骤都有独立断言,故障可准确定位到事务中断的具体步骤。

负载验证:JSONPath 和 XPath 断言

负载验证是将监控区别于简单可用性检测的关键。断言的表达方式依工具不同而异,但逻辑一致:

  • JSONPath 字段访问(REST): 访问 $.data.status — 断言返回值等于 'active'
  • JSONPath 数组检查: 访问 $.items — 断言数组长度大于 0
  • XPath 断言(SOAP): //order/status/text() — 断言节点值等于 'confirmed'
  • 头部断言: 断言 Content-Type 头值等于 'application/json'
  • 响应时间断言: 断言总响应时间低于 500ms
关于JSONPath的可移植性说明。 各实现间比较语法不同(Jayway、Goessner、RFC 9535)。将断言表示为字段路径加上单独的断言条件,而不是依赖可能在不同工具间不具可移植性的内联比较运算符。

身份验证监控

生产环境 API 需要身份验证。监控工具必须处理与您的实际 API 客户端相同的身份验证方法。生产就绪的监控平台应支持的方案:

身份验证方法 描述 备注
OAuth 2.0 — 客户端凭据 机器对机器;客户端直接用凭据交换令牌 服务器到服务器 API 监控中最常见
OAuth 2.0 — 授权码 用户委托授权;通常与 PKCE 一起用于 SPA/移动应用 监控工具需自动处理令牌刷新
OAuth 2.0 — 资源所有者密码凭证 (ROPC) 直接用户名 + 密码交换—传统流程 仅在授权码不可行时使用
Bearer Token (JWT) 静态或动态刷新令牌,放置于 Authorization 短期 JWT 需要自动令牌刷新
API Key 静态密钥放在头部、查询参数或 Cookie 中 监控最简单;关注密钥轮换事件
基本认证 Base64 编码的 username:password 放在 Authorization 头中 传统方法 — 企业和内部 API 中仍常见
AWS 签名 v4 使用 AWS 凭据的 HMAC 签名请求 AWS API Gateway 端点必需
mTLS / 客户端证书 双向 TLS — 双方均出示证书 零信任环境;证书过期监控至关重要
NTLM / Kerberos Windows/Active Directory 集成身份验证 企业内部 API;云原生架构中较少见
自定义头 通过自定义请求头实现专有身份验证方案 非标准身份验证实现的通用方案

令牌过期是监控误报的主要原因。OAuth 2.0 访问令牌的有效期因实现和授权类型而大不相同。用户委托令牌(授权码流程)通常在 15 分钟到 1 小时之间。机器对机器令牌(客户端凭据流程)通常配置为较长时间窗口——1 小时到 24 小时——以减少刷新开销。高安全环境可能强制执行短至 5 分钟的有效期。不论有效期长短,监控器都需…ring 工具如果不处理 自动令牌刷新,将会产生误报或需要手动凭据轮换,带来运营负担和停机风险。

关于 OAuth 2.0 隐式授权:根据当前的 OAuth 2.0 安全最佳实践(RFC 9700),该授权方式已被弃用,不应在新系统中使用。如果现有 API 仍使用隐式流程,强烈建议迁移到授权码 + PKCE。

API 监控的重要性:业务影响

API 不是基础设施抽象——它们是收入渠道。当它们失败时,后果涉及财务、运营和合同。

未检测到的 API 故障成本

没有主动监控,团队依赖客户报告来发现故障。行业调查显示,客户报告的平均故障检测时间(MTTD)远超 30 分钟——在投诉提交、调查、分诊和升级的过程中,这一时段已过去。以 1 分钟检测间隔进行的持续合成监控,可将检测时间缩短到 60 秒以内,实现问题恶化前的根因定位。

收入计算公式简单明了:订单数/分钟 × 平均订单价值 × 停机时长(分钟)。一个处理 100 笔订单/分钟且平均订单价值为 50 美元的平台,在支付 API 停机5分钟时将损失 25,000 美元的潜在收入。可根据自身吞吐量和订单价值计算潜在风险。

行业特定场景

  • 电子商务。 高峰期结账 API 故障导致所有转化停止。支付授权 API 返回 HTTP 200 但状态为拒绝,且无警报,导致交易静默阻塞数分钟,直至有人察觉。
  • 金融科技。 交易处理 API 必须满足亚秒级延迟要求。持续超出 SLA 阈值的性能下降可能引发合同罚款和 PCI DSS 审计问题。
  • 医疗健康。 电子健康记录集成 API 和远程医疗端点必须保持 HIPAA 合规数据交换。返回 HTTP 200 但患者数据不完整的 API 是合规事件,而不仅仅是性能问题。
  • SaaS / API 即产品。 当 API 是计费产品时,停机会触发合同 SLA 罚款和客户流失。监控提供合规的正常运行时间证明,支持 SLA 报告。
  • 企业 IT。 跨部门的 CRM、ERP 和人力资源 API 集成。Salesforce API 性能下降,可能在日志中无单个 500 错误的情况下,悄无声息地破坏整个组织的销售工作流程。

第三方 API 风险

现代应用依赖其不控制的外部 API:支付网关(Stripe、PayPal、Braintree)、身份提供者(Okta、Auth0、AWS Cognito)、shipping API 和 CRM 系统。当它们性能下降时,即使您的基础设施健康,应用程序对用户来说也会显得失效。

监控第三方端点让团队能立即确定故障是内部还是外部问题——没有之前的监控数据,这个区分往往需要大量调查时间。这也为追究供应商对其发布的 SLA 负责提供了有据可查的证据。

别再从客户那里得知 API 故障。

Dotcom-Monitor 的合成 API 监控在不到 60 秒内检测到故障,并将警报直接发送到 PagerDuty、Slack 或 Microsoft Teams。从一个平台监控支付网关、身份提供者和内部 API。

免费试用 30 天 →   无需信用卡

API 监控与 API 测试

两者都验证 API 行为,但在软件交付生命周期中用途不同。混淆它们会导致覆盖差距。

维度 API 测试 API 监控
时间 部署前——开发、QA、CI/CD 流程 部署后——生产环境持续运行
环境 开发、预发布、受控测试环境 实时生产、真实基础设施、真实流量
触发方式 代码提交、构建、手动运行、PR 审核关卡 计划调度(例如每 1 分钟),全天候 24/7 持续
目标 防止缺陷进入生产 检测生产环境中的故障和性能下降
覆盖范围 所有行为、边缘情况、错误路径 关键路径、SLA 端点、用户旅程链
视角 内向外:测试代码行为 外向内:从用户视角验证
输出 通过/失败报告;失败时阻止部署 实时警报、正常运行时间 SLA 记录、事件历史

实际关系:API 测试 是开发阶段的活动,API 监控是运营阶段的活动。测试在部署前捕捉缺陷;监控在部署后捕捉故障、回归、性能下降和依赖性问题——在与受控测试环境不同的真实基础设施条件下。

一个成熟的工程团队同时运行两者,并使用 Postman Collection 导入 来连接两者,将开发测试转换为生产监控,而无需重复请求定义。

API 监控与 APM

同一应用的两种视角:外向的合成监控利用来自全球各地的外部探针,而内向的 APM 观察应用内部层级——API 代码、业务逻辑、数据访问、数据库、线程。
合成 API 监控看到的是客户所见。APM 看到的是代码的运行。两者互补,非可替代。

这两类通常容易混淆。它们是互补的,而非可以替代的。

合成 API 监控 APM(应用性能监控)
视角 外向 — 从用户和合作伙伴的相同视角进行验证 内向 — 观察应用内部行为
检测内容 DNS 失败、网络路由问题、TLS 错误、CDN 错误路由、地理覆盖缺失 慢数据库查询、内存泄漏、代码异常、慢函数调用
运行时间 24/7 — 即使是零流量期间 只有在处理真实请求时
解决的问题 “我们的客户现在能否真正调用此 API?” “请求进入时,我们的应用内部发生了什么?”

MTTR 最低的团队都会使用两者:APM 用于内部根因分析,合成 API 监控用于外部验证。日志和追踪回答“代码中出了什么问题?”,合成监控回答“我们的客户是否能使用此 API?”

API 协议:REST、SOAP、GraphQL、gRPC 和 WebSocket

每种 API 协议有不同的监控需求和故障模式。将所有 API 视为简单的 HTTP GET 请求的监控工具会遗漏特定协议的问题。

REST API 监控

REST 是主导的 API 协议。监控验证 HTTP 方法(GET、POST、PUT、PATCH、DELETE)、状态码、响应头和通过 JSONPath 断言的 JSON 响应体。关键要求:断言响应负载字段值,而不仅仅是状态码;监控所有 HTTP 方法,而不仅是 GET(POST、PUT 和 DELETE 触发不同的服务器端逻辑和故障)modes); 单独跟踪每个端点的响应时间,而不是作为端点间的聚合平均值。

SOAP API 监控

SOAP API 使用 HTTP 交换 XML。监控需求:导入 WSDL 以定义端点和架构;对 XML 响应元素进行 XPath 断言;支持 SOAP 1.1 和 SOAP 1.2 协议;配置 WS-Security 来为使用消息级安全的企业 SOAP 服务提供支持。

GraphQL API 监控

GraphQL 的关键监控挑战:大多数 GraphQL 服务器实现 即使对部分错误或格式错误的查询也返回 HTTP 200。HTTP 状态码并不是可靠的失败信号。您必须:

  • 发送特定的查询负载并断言响应中的 data 对象
  • 检查响应体中的 errors 数组 —— 在标准 GraphQL 中,每个响应都有一个可选的顶层 errors 字段,成功时为空或不存在,失败时则填充。一个带有填充 errors[] 的 200 响应意味着请求在 GraphQL 层失败,尽管 HTTP 成功了
  • 验证查询特定的数据不变量:断言预期字段在数据对象中存在,非空且类型正确 —— 有些系统将领域失败编码在数据对象内,而不是填充顶层的错误数组
  • 监控查询复杂度和深度限制,以在性能下降导致超时前检测到问题

gRPC API 监控

gRPC 默认使用基于 HTTP/2 的协议缓冲(Protocol Buffers),但 gRPC-Web 通过代理支持浏览器客户端的 HTTP/1.1。监控需求:导入 proto 文件以定义服务和方法;支持协议缓冲消息的二进制编码/解码;使用 gRPC 状态码(OK、UNAVAILABLE、DEADLINE_EXCEEDED 等)进行状态验证——而非 HTTP 状态码;支持 Unary、Server-Streaming、Client-Streaming 和双向流(Bidirectional-Streaming)RPC 类型。

WebSocket API 监控

WebSocket API 维持持久的双向连接以实现实时数据传输。监控验证连接建立时间和 WebSocket 握手成功率、消息传递延迟及负载正确性,以及连接稳定性,包括断线后的重连行为。

公共 API 监控与内部 API 监控

等距数据中心建筑被半透明的防火墙穹顶包围。穹顶外,绕着地球的监控探针对面向公众的 API 端点进行检查。穹顶内,私有代理连接到内部微服务节点。
一个私有代理在您的网络内运行并启动到监控平台的出站连接——无需入站防火墙规则。这为内部微服务带来了与公共 API 相同的监控精度。[ /caption]

大多数 API 监控指南仅专注于面向公众的端点。但在微服务架构中,大多数关键 API 调用都是内部的——即服务间调用,永远不会到达公共互联网。

公共 API 监控 内部 API 监控
监控范围 面向客户的端点,合作伙伴 API,第三方集成 内部微服务,私有 VPC,预发布环境,防火墙后的 API
工作方式 外部监控代理从全球各地通过公共互联网运行检查 部署在网络内部的私有代理发起到监控平台的出站连接
防火墙要求 无 —— 检查源自外部 无需入站规则 —— 代理仅发起出站连接
监测内容 DNS 解析失败,CDN 路由问题,TLS 错误,地域可用性差异 服务间故障,身份验证微服务延迟,数据库查询 API 性能下降
部署 无需安装 —— 立即生效 代理安装于本地或私有云(支持 Windows 和 Linux)

内部微服务 API 是级联故障最常见的来源。身份验证服务性能下降或数据访问 API 变慢,会导致下游问题表现为前端故障——没有内部可见性时根本原因难以定位。监控内部 API 使团队能够确认故障是发生在 API 层、下游微服务,还是数据库。了解更多关于 防火墙后私有代理监控的信息。

API 监控最佳实践

这些实践可减少平均检测时间(MTTD),提高警报精准度,确保监控覆盖与生产风险相匹配。

  1. 对关键收入端点以 1 分钟间隔进行监控。对于支付、身份验证和核心数据 API,每一分钟的未检测都会直接影响业务。对于较低关键性的端点,5 分钟或 15 分钟间隔是可接受的。
  2. 至少从 5 个地理分布的地点运行检查。单一监控地点无法探测区域性的 DNS 故障、CDN 配置错误或特定地区路由问题。至少覆盖北美、欧洲和亚洲-Pacific.
  3. 验证有效载荷内容,而不仅仅是状态码。 为每个关键端点配置 JSONPath 断言。最昂贵的隐性失败是 API 返回 HTTP 200 但数据不完整、过时或格式错误。
  4. 使用基线派生的警报阈值,而非静态毫秒值。 为每个端点建立响应时间基线,并在 P95 值的 2 倍处配置警报。静态阈值会在正常流量高峰期间产生误报。
  5. 在监控链中包含身份验证。 令牌过期、OAuth 刷新失败和证书轮换是 API 中断的主要原因。监控身份验证步骤可在凭据相关故障扩散前抓住问题。
  6. 为每个关键用户流程构建多步骤事务监控。 登录流程、结账序列和数据提交工作流是链式 API 调用。单端点监控无法捕捉由错误数据传递或会话处理引起的步骤间故障。
  7. 将第三方 API 依赖作为独立监控进行监控。 为 Stripe、Okta、Salesforce 及其他外部依赖创建专用监控。这能立即判断故障是内部还是外部原因。
  8. 导入 Postman 或 Insomnia 集合以快速启动监控 将现有 API 定义转换为 24/7 生产监控,无需重新创建请求结构。这样消除了开发测试与生产监控之间的差距。
  9. 将部署后 API 检查集成到 CI/CD 流水线 部署后运行合成 API 检查作为自动化冒烟测试。如果部署后检查失败,可考虑在渐进式交付配置(蓝绿或金丝雀)中触发自动回滚或流量暂停——使用来自第二个位置的确认运行以减少误报,确保采取自动操作前的准确性。
  10. 将警报路由到 PagerDuty、Slack 或 Microsoft Teams 并设置升级策略。 仅通过电子邮件通知会导致检测延迟。与事件管理工具的本地集成确保警报立即发送给正确人员,并为无响应情况定义升级路径。

API 监控的挑战

即使是设计良好的监控设置也面临操作挑战。预见这些有助于团队进行设计规避。

第三方 API 可见性

监控外部依赖可以获得可用性和延迟数据,但无法揭示降级的内部原因。当 Stripe 或 Okta 变慢时,您可以确认并隔离影响范围——但根因分析依赖于供应商状态页面和支持升级路径。

速率限制

监控代理会计入您的 API 速率限制。合成请求总量的计算公式为:地点 × 每小时检查次数 × 每次监控运行的 API 调用次数 × 确认重试次数。对于单端点监控:30 个地点 × 60 次/小时 = 1,800 次请求/小时。对于相同设置下的 5 步事务监控:30 × 60 × 5 = 每个监控 9,000 次请求/小时。请在速率限制预算中考虑这一因素,尤其是针对限制更严格的内部 API。确保在需要时将监控提供商的 IP 范围添加到白名单中。

认证复杂性

使用短期有效令牌的 API 需要监控工具能够自动处理令牌刷新。用户委托的 OAuth 2.0 令牌(授权码流程)通常在15分钟到1小时内过期;机器对机器的客户端凭据令牌通常有效期为1至24小时;高安全环境可能要求5分钟的有效窗口。基于证书的认证和轮换 API 密钥同样需要谨慎的凭证管理。

动态和非确定性响应

返回带时间戳数据、分页结果或随机排序数组的 API 由于返回值每次请求都变化,因此难以用精确值匹配来断言。使用 JSONPath 表达式验证结构、字段存在性和字段类型——而不是验证每次请求都会变化的准确字段值。

告警疲劳

过度监控——过多的端点以1分钟间隔监测,或阈值设置过于严格——会产生噪音,使团队对真实告警产生迟钝。采用分级监控:关键路径采用1分钟间隔,非关键端点采用5至15分钟间隔。在发送告警前先确认来自第二个地点的告警,以消除临时假阳性。

协议多样性

REST、SOAP、GraphQL、gRPC 和 WebSocket 各自需要不同的断言策略。仅支持 REST 的工具会遗漏 SOAP 服务故障,并会错误地将 GraphQL 错误报告为成功,因为它们返回 HTTP 200。

如何使用 Dotcom-Monitor 设置 API 监控

Alert routing flow: a failing API endpoint with a warning glyph feeds into a central monitoring hub, which fans out to four destination icons — phone, two chat platforms, and email — representing PagerDuty, Slack, Microsoft Teams, and email channels. 当检查失败时,告警会路由至您现有的事件响应工具——而非无人关注的单独监控收件箱。

Dotcom-Monitor 提供 合成 API 监控,支持来自30多个全球地点的 REST、SOAP 和 GraphQL,检查间隔为1分钟,支持多步骤事务,并原生集成 PagerDuty、Slack,和微软团队。

步骤1 — 定义您的端点和断言

  • 端点URL: 需要监控的API端点
  • HTTP方法: GET、POST、PUT、PATCH或DELETE
  • 请求头: Content-TypeAuthorization 以及任何必需的自定义头
  • 请求体: POST/PUT请求的JSON负载
  • 认证: OAuth 2.0、Bearer Token、API密钥、基本认证、mTLS、AWS签名v4、NTLM、Kerberos或自定义头
  • 断言: HTTP状态码、响应时间阈值、头部值、JSONPath/XPath负载断言

步骤2 — 从Postman或Insomnia导入

如果您的团队使用Postman或Insomnia,可完全跳过手动端点配置:

  • Postman: 将您的集合导出为v2.0或v2.1 JSON,并导入到Dotcom-Monitor。请求定义、头部、正文、环境变量和测试断言均被保留。
  • Insomnia: 将您的工作区导出为Insomnia v4 JSON文件,并导入到Dotcom-Monitor。请求组、认证配置和环境变量均被保留。

两种导入格式都将一次性开发测试转换为持续调度的24/7生产监控,无需重新配置。

已经使用Postman?距24/7生产监控只差5分钟。

直接将您现有的Postman集合导入Dotcom-Monitor。您的请求定义、头部、环境变量和断言都会被保留 — 无需重新配置。

查看Postman导入功能 →

步骤3 — 配置监控位置和频率

  • 检查频率: 1、3、5或15分钟间隔 — 根据关键性为每个端点设置
  • 监控位置: 从北美、欧洲、亚太和南美的30多个地点中选择
  • 私有代理: 适用于内部或防火墙后的API — 在本地或私有云部署代理(支持Windows和Linux)。代理仅发起出站连接 — 无需入站防火墙规则。
  • 确认重试: 配置二次位置确认检查再触发警报,以消除瞬时网络误报

步骤4 — 配置警报路由

  • PagerDuty: 将关键警报直接路由到值班日程,自动创建和升级事件
  • Slack / Microsoft Teams: 向运维频道发布包含端点详情、错误类型和响应数据的警报消息
  • 邮件、短信、Phone call: 配置每个联系人或团队的通知偏好
  • Webhook: 集成OpsGenie、ServiceNow或任何HTTP兼容服务
  • 阈值配置: 针对每个指标设置警报条件——响应时间、错误率、断言失败率——并设置严重级别

步骤5 — CI/CD流水线集成

  • Dotcom-Monitor REST API: 通过HTTP API调用,从任何CI/CD系统编程创建、更新和触发监控任务
  • GitHub Actions / Azure DevOps / Jenkins: 添加部署后步骤,触发Dotcom-Monitor检查,等待结果,如果有断言失败则使流水线失败
  • 预生产验证: 在将构建发布到生产环境前,对暂存环境运行相同的合成检查——在任何用户受影响前捕获回归

各行业API监控用例

行业 关键监控API 主要监控需求
电商 结账、支付授权、库存、物流、购物车管理 多步骤交易链;1分钟间隔;支付确认状态的负载断言
金融科技 / 银行 交易处理、KYC/AML验证、账户余额、外汇汇率、电汇API 200ms以下延迟SLA;支持PCI DSS证据的合规检查;完整认证流程验证
医疗健康 电子健康记录集成(HL7 FHIR)、保险门户、远程医疗端点、患者排班 支持HIPAA证据的合规检查;数据完整性的负载验证;99.99%运行时间SLA
SaaS 核心产品API、Webhook投递端点、合作伙伴集成API、认证API API即产品的SLA遵守;Postman导入保持开发与监控一致性;第三方依赖监控
企业IT CRM、ERP、HRIS、身份提供商、内部工作流自动化API 用于防火墙内API的私有代理;支持NTLM/Kerberos认证;跨部门API可见性
媒体 / 游戏 CDN内容分发API、认证、实时计分、社交功能API 地理分布监控;WebSocket连接监控;流量激增检测

立即开始监控您的API。

Dotcom-Monitor 提供来自30+全球地点的合成API监控,支持1分钟检查间隔、多步骤事务支持以及原生PagerDuty、Slack和Microsoft Teams集成。设置不到5分钟。30天试用无需信用卡。

开始免费30天试用 →

常见问题解答

API 监控和网站监控之间有什么区别?
网站监控验证网页的最终用户体验——渲染、加载时间、核心网页指标和视觉完整性。API 监控验证为这些页面和使用它们的应用程序提供支持的基础数据端点。它们是互补的:API 监控识别问题的来源;网站监控确认其对用户体验的影响。
我应该多频繁监控关键API?
影响收入的API——支付、身份验证、核心数据检索——应以1分钟间隔进行检测。这将检测时间缩短到60秒以内。非关键端点可以使用5分钟或15分钟的间隔,以减少检测频次并保持在速率限制范围内。
什么是良好的API响应时间?
通用基准:优秀 1秒。响应时间超过3秒会明显影响转化率和用户留存率。这些是起点——应为每个端点建立基线,并在偏离时发出警报,而不是应用通用阈值。
我可以监控防火墙后的API吗?
是的。私有代理——一个轻量级的二进制程序,安装在您的网络内部——发起到监控平台的出站连接。无需入站防火墙规则。这样内部微服务和私有API与公共端点一样,提供相同的正常运行时间、性能和有效负载验证。
生产环境 API 监控需要支持哪些身份验证方法?
至少支持:OAuth 2.0(客户端凭证和授权码流程)、具有自动 JWT 刷新的 Bearer 令牌、API 密钥和基础认证。对于企业环境:支持 AWS Signature v4、mTLS/客户端证书、NTLM、Kerberos 和自定义头方案。仅支持基础认证和 API 密钥的工具将无法在没有手动令牌管理的情况下监控 OAuth 2.0 API。
API 监控如何处理 GraphQL?
大多数 GraphQL 服务器实现即使在查询失败或部分错误时也返回 HTTP 200。监控必须发送特定的查询有效载荷并对响应正文进行断言——而不是状态码。检查是否存在或填充了顶层 errors 数组,并验证响应中的查询特定数据不变量。有些系统将领域失败编码在 data 对象中,而不是填充 errors 数组,因此两个信号都很重要。
什么是多步骤API交易监控?
多步骤交易监控将一系列API调用串联成单一监控器——复制真实用户的工作流程,如登录 → 搜索 → 加入购物车 → 结账 → 付款确认。每一步的输出都会在执行下一步前进行验证,动态值(访问令牌、会话ID、订单ID)会自动提取并注入到各步骤之间。这能够捕捉单端点监控无法发现的集成故障。
如何将API监控集成到CI/CD管道中?
使用监控平台的 REST API 在每次部署后以编程方式触发检查运行。在 GitHub Actions、Azure DevOps 或 Jenkins 中,添加一个部署后管道步骤,调用监控 API,轮询检查结果,如果任何断言失败则使管道失败。这将在每次部署时创建自动化的生产冒烟测试——在任何用户流量路由到新版本之前捕获回归。
TTFB 是什么,为什么它对 API 监控很重要?
首次字节时间(TTFB)衡量从发起 API 请求到接收到 HTTP 响应的第一个字节所经过的时间。从合成监控客户端来看,这包括 DNS 解析、TCP 连接、TLS 握手和服务器端处理——但不包括传输完整响应正文的时间。高总响应时间且 TTFB 低,表明有效载荷较大或传输缓慢;TTFB 高则表明服务器端处理缓慢或上游延迟——比单纯的总响应时间更快地定位根本原因。
我应该使用多少个监测位置?
至少使用覆盖主要用户区域的5个地理分布位置。对于全球应用,至少覆盖:北美东部、北美西部、西欧、亚太地区和南美洲。这可以检测单一位置监控完全忽略的区域性CDN问题、DNS传播失败和地理路由异常。
Matthew Schmitz
About the Author
Matthew Schmitz
Dotcom-Monitor 负载与性能测试总监

作为 Dotcom-Monitor 的负载与性能测试总监,Matt 目前领导着一支由优秀工程师和开发人员组成的团队,共同为最严苛的企业需求打造先进的负载与性能测试解决方案。

Latest Web Performance Articles​

API 监控:定义、指标、类型及设置指南

API 监控是持续的自动化实践,用于验证 API 端点的可用性、响应时间和数据正确性——不仅确认端点是否响应,还确认其在用户和依赖系统的角度下,是否在可接受的延迟内返回正确格式的正确数据。

立即免费启动Dotcom-Monitor

无需信用卡