Share via


Azure Application Gateway 모니터링

Azure 리소스를 사용하는 중요한 애플리케이션 및 비즈니스 프로세스가 있는 경우 이와 같은 리소스의 가용성, 성능 및 작업을 모니터링할 수 있습니다.

이 문서에서는 Azure 애플리케이션 Gateway에서 생성된 모니터링 데이터에 대해 설명합니다. Azure Application Gateway는 Azure Monitor를 사용합니다. 이 기능을 사용하는 모든 Azure 서비스에 공통되는 Azure Monitor 기능에 익숙하지 않은 경우 Azure Monitor로 Azure 리소스 모니터링을 읽어 보세요.

Azure Portal의 모니터링 개요 페이지

각 Application Gateway에 대한 Azure Portal의 개요 페이지에는 다음 메트릭이 포함됩니다.

  • 총 요청 합계
  • 실패한 요청 합계
  • HttpStatus별 응답 상태 합계
  • 합계 처리량
  • 합계 현재커넥트ions
  • BackendPool http의 평균 정상 호스트 수입니다설정
  • BackendPool http의 평균 비정상 호스트 수입니다설정

이 목록은 Application Gateway에 사용할 수 있는 메트릭의 하위 집합일 뿐입니다. 자세한 내용은 Azure Application Gateway 데이터 참조 모니터링을 참조하세요.

Azure Monitor Network Insights

Azure의 일부 서비스는 Azure Portal에서 서비스 모니터링을 위한 시작점을 제공하는 미리 빌드된 모니터링 대시보드를 특별히 제공합니다. 이러한 특수 대시보드를 “인사이트”라고 합니다.

Azure Monitor Network Insights는 구성 없이 배포된 모든 네트워크 리소스(Application Gateway 포함)에 대한 상태 및 메트릭에 대한 포괄적인 보기를 제공합니다. 자세한 내용은 Azure Monitor Network Insights를 참조하세요.

데이터 모니터링

Azure 애플리케이션 Gateway는 설명된 다른 Azure 리소스와 동일한 종류의 모니터링 데이터를 수집합니다.Azure 리소스에서 데이터 모니터링

Azure 애플리케이션 Gateway에서 만든 메트릭 및 로그 메트릭에 대한 자세한 내용은 모니터링 Azure 애플리케이션 게이트웨이 데이터 참조를 참조하세요.

수집 및 라우팅

플랫폼 메트릭 및 활동 로그는 자동으로 수집되고 저장되지만 진단 설정을 사용하여 다른 위치로 라우팅할 수 있습니다.

리소스 로그는 진단 설정을 만들고 하나 이상의 위치로 라우팅할 때까지 수집 및 저장되지 않습니다.

Azure Portal, CLI 또는 PowerShell을 사용한 진단 설정 만들기의 자세한 프로세스는 Azure에서 플랫폼 로그 및 메트릭을 수집하는 진단 설정 만들기를 참조하세요. 진단 설정을 만들 때 수집할 로그 범주를 지정합니다. Azure 애플리케이션 Gateway에 대한 범주는 Azure 애플리케이션 게이트웨이 모니터링 데이터 참조나열됩니다.

수집할 수 있는 메트릭 및 로그는 다음 섹션에서 설명합니다.

메트릭 분석

Azure Monitor 메뉴에서 메트릭을 열어 메트릭 탐색기를 사용하여 다른 Azure 서비스의 메트릭을 사용하여 Azure 애플리케이션 Gateway에 대한 메트릭을 분석할 수 있습니다. 이 도구 사용에 대한 자세한 내용은 Azure Monitor 메트릭 탐색기를 사용하여 메트릭 분석을 참조하세요.

Azure 애플리케이션 Gateway에 대해 수집된 플랫폼 메트릭 목록은 Application Gateway 데이터 참조 모니터링을 참조하세요.

Azure Monitor에서 지원되는 모든 리소스 메트릭 목록을 참조하세요.

로그 분석

Azure Monitor Logs의 데이터는 테이블마다 고유한 자체 속성 집합이 있는 테이블에 저장됩니다.

Azure Monitor의 모든 리소스 로그에는 동일한 필드와 그 뒤에 오는 서비스별 필드가 있습니다. 공통 스키마는 Azure 리소스 로그에 대한 공통 및 서비스별 스키마에 설명되어 있습니다.

활동 로그는 구독 수준의 이벤트에 대한 인사이트를 제공하는 Azure의 플랫폼 로그입니다. 활동 로그는 독립적으로 보거나 Azure Monitor Logs로 라우팅할 수 있습니다. 여기서 Log Analytics를 사용하여 훨씬 더 복잡한 쿼리를 수행할 수 있습니다.

Azure 애플리케이션 Gateway에 대해 수집된 리소스 로그 유형 목록은 게이트웨이 데이터 참조 Azure 애플리케이션 모니터링을 참조하세요.

Azure Monitor 로그에서 사용하고 Log Analytics에서 쿼리할 수 있는 테이블 목록은 모니터링 Azure 애플리케이션 게이트웨이 데이터 참조를 참조하세요.

샘플 Kusto 쿼리

Important

Application Gateway 메뉴에서 로그를 선택하면 쿼리 범위가 현재 Application Gateway로 설정된 상태로 Log Analytics가 열립니다. 즉, 로그 쿼리에는 해당 리소스의 데이터만 포함됩니다. 다른 Application Gateway의 데이터 또는 다른 Azure 서비스의 데이터를 포함하는 쿼리를 실행하려면 Azure Monitor 메뉴에서 로그선택합니다. 자세한 내용은 Azure Monitor Log Analytics의 로그 쿼리 범위 및 시간 범위를 참조하세요.

다음 쿼리를 사용하여 Application Gateway 리소스를 모니터링할 수 있습니다.

// Requests per hour 
// Count of the incoming requests on the Application Gateway. 
// To create an alert for this query, click '+ New alert rule'
AzureDiagnostics
| where ResourceType == "APPLICATIONGATEWAYS" and OperationName == "ApplicationGatewayAccess"
| summarize AggregatedValue = count() by bin(TimeGenerated, 1h), _ResourceId
| render timechart 
// Failed requests per hour 
// Count of requests to which Application Gateway responded with an error. 
// To create an alert for this query, click '+ New alert rule'
AzureDiagnostics
| where ResourceType == "APPLICATIONGATEWAYS" and OperationName == "ApplicationGatewayAccess" and httpStatus_d > 399
| summarize AggregatedValue = count() by bin(TimeGenerated, 1h), _ResourceId
| render timechart
// Top 10 Client IPs 
// Count of requests per client IP. 
AzureDiagnostics
| where ResourceType == "APPLICATIONGATEWAYS" and OperationName == "ApplicationGatewayAccess"
| summarize AggregatedValue = count() by clientIP_s
| top 10 by AggregatedValue
// Errors by user agent 
// Number of errors by user agent. 
// To create an alert for this query, click '+ New alert rule'
AzureDiagnostics
| where ResourceType == "APPLICATIONGATEWAYS" and OperationName == "ApplicationGatewayAccess" and httpStatus_d > 399
| summarize AggregatedValue = count() by userAgent_s, _ResourceId
| sort by AggregatedValue desc

경고

Azure Monitor 경고는 모니터링 데이터에서 중요한 조건이 발견될 때 사용자에게 사전에 알립니다. 이를 통해 고객이 알기 전에 시스템 문제를 식별하고 해결할 수 있습니다. 메트릭, 로그활동 로그에서 경고를 설정할 수 있습니다. 서로 다른 형식의 경고에는 장점과 단점이 있습니다

Application Gateway 를 사용하는 애플리케이션을 만들거나 실행하는 경우 Azure Monitor Application Insights 는 추가 유형의 경고를 제공할 수 있습니다.

다음 표에는 Application Gateway에 대한 공통 및 권장 경고 규칙이 나열되어 있습니다.

Application Gateway v1

경고 유형 조건 설명
메트릭 CPU 사용률이 80%를 초과합니다. 정상적인 조건에서 CPU 사용량은 정기적으로 90%를 초과하면 안 됩니다. 이로 인해 Application Gateway 뒤에 호스트되는 웹 사이트의 대기 시간이 발생하고 클라이언트 환경이 중단될 수 있습니다.
메트릭 비정상 호스트 수가 임계값을 초과합니다. Application Gateway에서 성공적으로 검색할 수 없는 백 엔드 서버 수를 나타냅니다. 이렇게 하면 Application Gateway 인스턴스가 백 엔드에 연결할 수 없는 문제가 발생합니다. 해당 수가 백 엔드 용량의 20%를 초과하면 경고를 표시합니다.
메트릭 응답 상태(4xx, 5xx)가 임계값을 초과합니다. Application Gateway 응답 상태 4xx 또는 5xx인 경우 일시적인 문제로 인해 가끔 4xx 또는 5xx 응답이 보일 수 있습니다. 프로덕션에서 게이트웨이를 관찰하여 정적 임계값을 확인하거나 경고에 대한 동적 임계값을 사용해야 합니다.
메트릭 실패한 요청이 임계값을 초과함 실패한 요청 메트릭이 임계값을 초과합니다. 프로덕션에서 게이트웨이를 관찰하여 정적 임계값을 확인하거나 경고에 대한 동적 임계값을 사용해야 합니다.

Application Gateway v2

경고 유형 조건 설명
메트릭 컴퓨팅 단위 사용률이 평균 사용량의 75%를 초과합니다. 컴퓨팅 단위는 Application Gateway 컴퓨팅 사용률을 측정한 것입니다. 지난 한 달 동안의 평균 컴퓨팅 단위 사용량을 확인하고 75%를 초과하는 경우 경고를 설정합니다.
메트릭 용량 단위 사용률이 최대 사용량의 75%를 초과합니다. 용량 단위는 처리량, 컴퓨팅 및 연결 수 면에서 전체 게이트웨이 사용률을 나타냅니다. 지난 한 달 동안의 최대 용량 단위 사용량을 확인하고 75%를 초과하는 경우 경고를 설정합니다.
메트릭 비정상 호스트 수가 임계값을 초과합니다. Application Gateway가 성공적으로 검색할 수 없는 백 엔드 서버 수를 나타냅니다. 애플리케이션 게이트웨이 인스턴스가 백 엔드에 연결할 수 없는 문제를 catch합니다. 해당 수가 백 엔드 용량의 20%를 초과하면 경고를 표시합니다.
메트릭 응답 상태(4xx, 5xx)가 임계값을 초과합니다. Application Gateway 응답 상태 4xx 또는 5xx인 경우 일시적인 문제로 인해 가끔 4xx 또는 5xx 응답이 보일 수 있습니다. 프로덕션에서 게이트웨이를 관찰하여 정적 임계값을 확인하거나 경고에 대한 동적 임계값을 사용해야 합니다.
메트릭 실패한 요청이 임계값을 초과함 실패한 요청 메트릭이 임계값을 초과하는 경우 프로덕션에서 게이트웨이를 관찰하여 정적 임계값을 확인하거나 경고에 대한 동적 임계값을 사용해야 합니다.
메트릭 백 엔드 마지막 바이트 응답 시간이 임계값을 초과합니다. 백 엔드 서버에 대한 연결을 설정하고 응답 본문의 마지막 바이트를 받는 것 사이의 시간 간격을 나타냅니다. 백 엔드 응답 대기 시간이 일반적인 특정 임계값에 더 많은 경우 경고를 만듭니다.
메트릭 Application Gateway 총 시간이 임계값을 초과합니다. Application Gateway가 HTTP 요청의 첫 번째 바이트를 받은 시점부터 마지막 응답 바이트가 클라이언트로 전송된 시간까지의 간격입니다. 백 엔드 응답 대기 시간이 일반적인 특정 임계값에 더 많은 경우 경고를 만들어야 합니다.

다음 단계