Amazon API Gateway
开发人员指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

使用 CloudWatch 监控 WebSocket API 执行

您可以使用 Amazon CloudWatch 指标和日志来监控 WebSocket API 的执行。该配置类似于 REST API 使用的配置。

有关如何设置 CloudWatch 访问权限和执行日志记录的更多信息,请参阅使用 API Gateway 控制台设置 API 日志记录

当您指定 Log Format (日志格式) 时,您可以选择要记录的上下文变量。以下是 WebSocket API 的 JSON 格式上下文变量列表的示例:

{ "apiId" : "$context.apiId", "routeKey" : "$context.routeKey", "authorizer" : "$context.authorizer", "messageId" : "$context.messageId", "integrationLatency" : "$context.integrationLatency", "eventType" : "$context.eventType", "error" : "$context.error", "extendedRequestId" : "$context.extendedRequestId", "requestTime" : "$context.requestTime", "stage" : "$context.stage", "connectedAt" : "$context.connectedAt", "requestTimeEpoch" : "$context.requestTimeEpoch", "requestId" : "$context.requestId", "connectionId" : "$context.connectionId" }

您可以在此处找到特定于 WebSocket 的上下文变量:API Gateway WebSocket API 映射模板参考

WebSocket API 支持以下指标:

指标 描述
ConnectCount 发送到 $connect 路由集成的消息数。
MessageCount 从客户端发送到 WebSocket API 的消息数。
IntegrationError 从集成返回 4XX/5XX 响应的请求数。
ClientError 在调用集成之前由 API Gateway 返回 4XX 响应的请求数。
ExecutionError 调用集成时发生的错误。
IntegrationLatency API Gateway 向集成发送请求和 API Gateway 从集成接收响应之间的时间差。已对回调和模拟集成禁止。

您可以使用下表中的维度筛选 API Gateway 指标。

维度 描述
ApiId 针对具有指定 API ID 的 API 筛选 API Gateway 指标。
ApiId、阶段 针对指定 API ID 和阶段 ID 的 API 阶段筛选 API Gateway 指标。
ApiId、阶段、路由

针对指定 API ID、阶段 ID 和路由 ID 的 API 方法筛选 API Gateway 指标。

仅当您显式启用详细 CloudWatch 指标时,API Gateway 才会发送这些指标。您可以通过调用 API Gateway V2 REST API 的 UpdateStage 操作将 metricsEnabled 属性更新为 true 来执行此操作。启用这些指标会对您的账户额外计费。有关定价信息,请参阅 Amazon CloudWatch 定价