Amazon API Gateway
개발자 안내서

CloudWatch로 WebSocket API 실행 모니터링

Amazon CloudWatch 지표와 로그를 사용하여 WebSocket API의 실행을 모니터링할 수 있습니다. 구성은 REST API에 사용된 것과 유사합니다.

CloudWatch 액세스 및 실행 로깅을 설정하는 방법에 대한 지침은 API Gateway 콘솔을 사용하여 API 로깅 설정 단원을 참조하십시오.

로그 형식을 지정할 때 기록할 컨텍스트 변수를 선택할 수 있습니다. 다음은 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 게이트웨이 V2 REST API의 UpdateStage 작업을 호출하여 metricsEnabled 속성을 true로 업데이트하면 됩니다. 이러한 지표를 활성화할 경우 계정에 추가 비용이 발생합니다. 요금 정보는 Amazon CloudWatch 요금을 참조하십시오.