Azure Cosmos DB 컨테이너 또는 계정의 작업에 대한 서버 쪽 대기 시간을 모니터링하는 방법

적용 대상: NoSQL MongoDB Cassandra Gremlin 테이블

Azure Cosmos DB용 Azure Monitor는 계정을 모니터링하고 대시보드를 만들 수 있는 메트릭 보기를 제공합니다. Azure Cosmos DB 메트릭은 기본적으로 수집되며, 아무것도 명시적으로 활성화하거나 구성할 필요가 없습니다. 서버 쪽 대기 시간 메트릭 직접 및 서버 쪽 대기 시간 게이트웨이 메트릭은 작업의 서버 쪽 대기 시간을 두 가지 연결 모드에서 보는 데 사용됩니다. 요청 작업이 게이트웨이 연결 모드이면 서버 쪽 대기 시간 게이트웨이 메트릭을 사용합니다. 요청 작업이 직접 연결 모드이면 서버 쪽 대기 시간 직접 메트릭을 사용합니다. Azure Cosmos DB 직접 연결을 통해 지점 읽기/쓰기 작업에 대해 10ms 미만의 SLA를 제공합니다. 지점 읽기 및 지점 쓰기 작업의 경우 SLA는 SLA 문서에 설명된 대로 계산됩니다. 연결 모드에 대한 자세한 내용은 연결 모드 문서를 참조하세요.

다음 표는 서버 쪽 대기 시간 메트릭(직접 vs 게이트웨이)을 지원하는 API를 보여줍니다.

API 서버 쪽 대기 시간 직접 서버 쪽 대기 시간 게이트웨이
SQL
MongoDB
Cassandra
Gremlin
테이블

다음과 같은 지점 작업에 대해 비정상적으로 높은 대기 시간이 발생하면 서버 쪽 대기 시간 메트릭을 모니터링할 수 있습니다.

  • 파티션 키 및 ID를 사용하는 GET 또는 SET 작업
  • 읽기 또는 쓰기 작업 또는
  • 쿼리.

진단 로그를 조회하여 반환된 데이터의 크기를 확인할 수 있습니다. 쿼리 작업에 대한 대기 시간이 지속적으로 높은 경우 더 높은 처리량 또는 사용된 RU/s에 대한 진단 로그를 조회해야 합니다. 서버 쪽 대기 시간은 데이터가 클라이언트에 반환되기 전에 백 엔드 인프라에 소요된 시간을 보여줍니다. 백 엔드 대기 시간 문제를 제외하려면 이 메트릭을 살펴보는 것이 중요합니다.

서버 쪽 대기 시간 메트릭 보기

  1. Azure Portal에 로그인합니다.

  2. 왼쪽 탐색 모음에서 모니터를 선택한 다음 메트릭을 선택합니다.

    Metrics pane in Azure Monitor

  3. 메트릭 창 >리소스 선택>에서 필요한 구독리소스 그룹을 선택합니다. 리소스 유형으로 Azure Cosmos DB 계정을 선택하고, 기존 Azure Cosmos DB 계정 중 하나를 선택한 후 적용을 선택합니다.

    Select the account scope to view metrics

  4. 다음으로 작업이 게이트웨이 연결 모드인 경우 사용 가능한 메트릭 목록에서 서버 쪽 대기 시간 게이트웨이 메트릭을 선택합니다. 작업이 직접 연결 모드인 경우 서버 쪽 대기 시간 직접 메트릭을 선택합니다. 이 목록에서 사용 가능한 모든 메트릭에 대해 자세히 알아 보려면 범주별 메트릭 문서를 참조하세요. 이 예제에서는 서버 쪽 대기 시간 게이트웨이를 선택하고 Avg를 집계 값으로 선택합니다. 이러한 세부 정보 외에 메트릭의 시간 범위시간 단위를 선택할 수도 있습니다. 최대는 지난 30일 동안의 메트릭을 볼 수 있습니다. 필터를 적용하면 필터에 기반하여 차트가 표시됩니다. 선택한 기간의 서버 쪽 대기 시간을 5분 간격으로 게이트웨이 연결 모드에서 볼 수 있습니다.

    Choose the Server-Side Latency Gateway metric from the Azure portal

서버 쪽 대기 시간 필터

메트릭을 필터링하고 특정 CollectionName, DatabaseName, OperationType, RegionPublicAPIType에 의해 표시되는 차트를 얻을 수도 있습니다.

메트릭을 필터링하려면 필터 추가를 선택하고, 필요한 속성(예: PublicAPIType)을 선택하고, 값(예: Sql)을 선택합니다. OperationType에 대해 분할 적용을 선택합니다. 그러면 선택한 기간 동안 여러 작업의 서버 쪽 대기 시간이 게이트웨이 연결 모드로 그래프에 표시됩니다. 저장 프로시저를 통해 실행된 작업은 기록되지 않으므로 OperationType 메트릭에서 사용할 수 없습니다.

각 작업의 서버 쪽 대기 시간 게이트웨이 메트릭은 다음 이미지와 같이 표시됩니다.

Filters for server-side latency gateway metrics

분할 적용 옵션을 사용하여 메트릭을 그룹화할 수 있습니다.

참고 항목

Azure Cosmos DB로 들어오는 요청이 항상 컨테이너를 대상으로 하는 것은 아닙니다. 예를 들어 전역적으로 분산된 계정 내에 데이터베이스를 만들 수 있으며 서버 쪽 대기 시간 메트릭에 대한 요청은 계속 기록됩니다. 데이터베이스 리소스를 만드는 데 시간이 걸리지만 컨테이너를 대상으로 하지 않기 때문에 요청이 기록됩니다. CollectionName 메트릭의 값이 <empty>이면 대상이 컨테이너가 아니라 Azure Cosmos DB의 다른 리소스임을 의미합니다.

해결 방법으로 사전에 메트릭을 특정 컨테이너(CollectionName)로 필터링하여 쿼리의 주체인 컨테이너와 관련이 없는 요청을 제외할 수 있습니다.

다음 단계