API Management 모니터링
적용 대상: 모든 API Management 계층
Azure Monitor는 시스템에서 메트릭 및 로그를 수집 및 집계하여 가용성, 성능 및 복원력을 모니터링하고 시스템에 영향을 주는 문제를 알려 줍니다. Azure Portal, PowerShell, Azure CLI, REST API 또는 클라이언트 라이브러리를 사용하여 모니터링 데이터를 설정하고 볼 수 있습니다.
리소스 유형에 따라 다른 메트릭 및 로그를 사용할 수 있습니다. 이 문서에서는 이 서비스에 대해 수집할 수 있는 모니터링 데이터 유형과 해당 데이터를 분석하는 방법을 설명합니다.
Azure Monitor를 사용하여 데이터 수집
이 표에서는 서비스를 모니터링하기 위해 데이터를 수집하는 방법과 수집된 데이터로 수행할 수 있는 작업을 설명합니다.
수집할 데이터 | 설명 | 데이터를 수집하고 라우팅하는 방법 | 데이터를 볼 수 있는 위치 | 지원되는 데이터 |
---|---|---|---|---|
메트릭 데이터 | 메트릭은 시간상 특정 지점에서 시스템의 측면을 설명하는 숫자 값입니다. 메트릭은 다른 메트릭과 비교하여 알고리즘을 사용하여 집계하고 시간에 따른 추세를 분석할 수 있습니다. | - 정기적으로 자동으로 수집됩니다. - 일부 플랫폼 메트릭을 Log Analytics 작업 영역으로 라우팅하여 다른 데이터를 쿼리할 수 있습니다. 각 메트릭에 대한 DS 내보내기 설정을 확인하여 진단 설정을 사용하여 메트릭 데이터를 라우팅할 수 있는지 확인합니다. |
메트릭 탐색기 | Azure Monitor에서 지원하는 Azure API Management 메트릭 |
리소스 로그 데이터 | 로그는 타임스탬프를 사용하여 기록된 시스템 이벤트입니다. 로그는 다양한 형식의 데이터를 포함할 수 있으며 구조화되거나 자유 형식의 텍스트일 수 있습니다. 쿼리 및 분석을 위해 리소스 로그 데이터를 Log Analytics 작업 영역으로 라우팅할 수 있습니다. | 리소스 로그 데이터를 수집하고 라우팅하는 진단 설정을 만듭니다. | Log Analytics | Azure Monitor에서 지원하는 Azure API Management 리소스 로그 데이터 |
활동 로그 데이터 | Azure Monitor 활동 로그는 구독 수준 이벤트에 대한 인사이트를 제공합니다. 활동 로그에는 리소스가 수정되거나 가상 머신이 시작될 때와 같은 정보가 포함됩니다. | - 자동으로 수집됩니다. - 무료로 Log Analytics 작업 영역에 대한 진단 설정을 만듭니다. |
활동 로그 |
Azure Monitor에서 지원하는 모든 데이터 목록은 다음을 참조하세요.
API Management에 대한 기본 제공 모니터링
Azure API Management에는 다음과 같은 기본 제공 모니터링 기능이 있습니다.
Azure API Management API 분석 사용
Azure API Management는 API에 대한 분석을 제공하므로 API의 사용량과 성능을 분석할 수 있습니다. 분석을 사용하여 API에 대한 개괄적인 모니터링과 문제 해결을 수행할 수 있습니다. 진단과 감사에 대한 근 실시간 메트릭 및 리소스 로그를 비롯한 다른 모니터링 기능은 자습서: 게시된 API 모니터링을 참조하세요.
참고 항목
현재 이 기능은 작업 영역에서 사용할 수 없습니다.
- API Management는 Azure Monitor 기반 대시보드를 사용하여 분석을 제공합니다. 대시보드는 Azure Log Analytics 작업 영역의 데이터를 집계합니다.
- 클래식 API Management 서비스 계층에서 API Management 인스턴스에는 Azure Portal의 레거시 클래식 제공 분석도 포함되어 있으며, API Management REST API를 사용하여 분석 데이터에 액세스할 수 있습니다. Azure Monitor 기반 대시보드와 기본 제공 분석에서도 매우 유사한 데이터가 표시됩니다.
Important
Azure Monitor 기반 대시보드는 분석 데이터에 액세스하는 데 권장되는 방법입니다. v2 계층에서는 클래식 제공(클래식) 분석 기능을 사용할 수 없습니다.
API 분석을 사용하면 다음을 포함한 여러 차원에 걸쳐 API Management 인스턴스의 API 사용량과 성능을 분석할 수 있습니다.
- Time
- Geography
- API
- API 작업
- 제품
- Abunələr
- 사용자
- 요청
API 분석은 실패한 요청과 권한이 없는 요청을 포함한 요청에 대한 데이터를 제공합니다. 지리 값은 IP 주소 매핑을 기반으로 합니다. 분석 데이터의 가용성이 지연될 수 있습니다.
Azure Monitor 기반 대시보드
Azure Monitor 기반 대시보드를 사용하려면 API Management 게이트웨이 로그의 데이터 원본으로 Log Analytics 작업 영역이 필요합니다.
구성해야 하는 경우 게이트웨이 로그를 Log Analytics 작업 영역으로 보내는 간단한 단계는 다음과 같습니다. 자세한 내용은 자습서: 게시된 API 모니터링을 참조하세요. 이 절차는 일회성 설정입니다.
- Azure Portal에서 API Management 인스턴스로 이동합니다.
- 왼쪽 메뉴의 모니터링에서 진단 설정>+ 진단 설정 추가를 선택합니다.
- 진단 설정을 설명하는 이름을 입력합니다.
- 로그에서 ApiManagement 게이트웨이 관련 로그를 선택합니다.
- 대상 세부 정보에서 Log Analytics로 보내기를 선택하고 동일하거나 다른 구독에서 Log Analytics 작업 영역을 선택합니다. 작업 영역을 만들어야 하는 경우 Log Analytics 작업 영역 만들기를 참조하세요.
- 대상 테이블로 특정 리소스가 선택되어 있는지 확인합니다.
- 저장을 선택합니다.
Important
새 Log Analytics 작업 영역은 데이터 수신을 시작하는 데 최대 2시간이 걸릴 수 있습니다. 기존 작업 영역은 약 15분 내에 데이터 수신을 시작해야 합니다.
대시보드에 액세스
Log Analytics 작업 영역이 구성된 후 Azure Monitor 기반 대시보드에 액세스하여 API의 사용량과 성능을 분석합니다.
- Azure Portal에서 API Management 인스턴스로 이동합니다.
- 왼쪽 메뉴의 모니터링에서 분석을 선택합니다. 분석 대시보드가 열립니다.
- 데이터의 시간 범위를 선택합니다.
- 분석 데이터의 보고서 범주(예: 타임라인, 지역)를 선택합니다.
레거시 기본 제공 분석
특정 API Management 서비스 계층에서는 클래식 제공 분석(레거시 분석 또는 클래식 분석이라고도 함)도 Azure Portal에서 사용할 수 있으며, API Management REST API를 사용하여 분석 데이터에 액세스할 수 있습니다.
Azure Portal에서 클래식 제공(클래식) 분석에 액세스하려면:
- Azure Portal에서 API Management 인스턴스로 이동합니다.
- 왼쪽 메뉴의 모니터링에서 분석(클래식)을 선택합니다.
- 데이터의 시간 범위를 선택하거나 사용자 지정 시간 범위를 입력합니다.
- 분석 데이터의 보고서 범주(예: 타임라인, 지역)를 선택합니다.
- 원하는 경우, 하나 이상의 다른 범주로 보고서를 필터링합니다.
API Management REST API의 보고서 작업을 사용하여 API Management 인스턴스에 대한 분석 데이터를 검색하고 필터링합니다.
지원되는 작업은 API, 지역, API 작업, 제품, 요청, 구독, 시간 또는 사용자별로 보고서 레코드를 반환합니다.
Azure API Management에서 개발자 포털 사용량 로깅 사용
이 섹션에서는 API Management 개발자 포털의 사용량에 대한 감사 및 문제 해결을 위해 Azure Monitor 로그를 사용하도록 설정하는 방법을 보여 줍니다. 진단 설정을 통해 사용하도록 설정하면 로그는 개발자 포털에서 수신하고 처리하는 요청에 대한 정보를 수집합니다.
개발자 포털 사용량 로그에는 다음을 포함하여 개발자 포털의 활동에 대한 데이터가 포함됩니다.
- 로그인 및 로그아웃과 같은 사용자 인증 작업
- API 세부 정보, API 작업 세부 정보, 제품 보기
- 대화형 테스트 콘솔의 API 테스트
개발자 포털 로그에 대한 진단 설정 사용
개발자 포털 사용량 로그에 대한 진단 설정을 구성하려면 다음을 수행합니다.
Azure Portal에서 API Management 인스턴스로 이동합니다.
왼쪽 메뉴의 모니터링에서 진단 설정>+ 진단 설정 추가를 선택합니다.
진단 설정 페이지에서 설정에 대한 세부 정보를 입력하거나 선택합니다.
- 진단 설정 이름: 설명이 포함된 이름을 입력합니다.
- 범주 그룹: 필요에 따라 시나리오를 선택합니다.
- 범주에서: 개발자 포털 사용량과 관련된 로그를 선택합니다. 필요에 따라 다른 범주를 선택합니다.
- 대상 세부 정보에서 하나 이상의 옵션을 선택하고 대상에 대한 세부 정보를 지정합니다. 예를 들어 스토리지 계정에 로그를 보관하거나 이벤트 허브로 스트리밍합니다. 자세한 내용은 Azure Monitor의 진단 설정을 참조하세요.
- 저장을 선택합니다.
진단 로그 데이터 보기
선택한 로그 대상에 따라 데이터가 표시되는 데 몇 분 정도 걸릴 수 있습니다.
스토리지 계정으로 로그를 보내는 경우 Azure Portal의 데이터에 액세스하여 분석을 위해 다운로드할 수 있습니다.
- Azure Portal에서 스토리지 계정 대상으로 이동합니다.
- 왼쪽 메뉴에서 스토리지 브라우저를 선택합니다.
- Blob 컨테이너에서 insights-logs-developerportalauditlogs를 선택합니다.
- API Management 인스턴스의 로그에 대한 컨테이너로 이동합니다. 로그는 1시간 간격으로 분할됩니다.
- 추가 분석을 위해 데이터를 검색하려면 다운로드를 선택합니다.
Azure Monitor 도구를 사용하여 데이터 분석
이러한 Azure Monitor 도구는 모니터링 데이터를 분석하는 데 도움이 되는 Azure Portal에서 사용할 수 있습니다.
일부 Azure 서비스에는 Azure Portal에 기본 제공 모니터링 대시보드가 있습니다. 이러한 대시보드를 인사이트라고 하며 Azure Portal에서 Azure Monitor의 Insights 섹션에서 찾을 수 있습니다.
메트릭 탐색기를 사용하면 Azure 리소스에 대한 메트릭을 보고 분석할 수 있습니다. 자세한 내용은 Azure Monitor 메트릭 탐색기로 메트릭 분석을 참조하세요.
Log Analytics를 사용하면 KQL(Kusto 쿼리 언어)을 사용하여 로그 데이터를 쿼리하고 분석할 수 있습니다. 자세한 내용은 Azure Monitor에서 로그 쿼리 시작을 참조하세요.
Azure Portal에는 활동 로그의 보기 및 기본 검색을 위한 사용자 인터페이스가 있습니다. 더 심층 분석을 수행하려면 데이터를 Azure Monitor 로그로 라우팅하고 Log Analytics에서 더 복잡한 쿼리를 실행합니다.
Application Insights 는 웹 애플리케이션의 가용성, 성능 및 사용을 모니터링하므로 사용자가 보고할 때까지 기다리지 않고 오류를 식별하고 진단할 수 있습니다.
Application Insights는 다양한 개발 도구에 대한 연결점을 포함하고 Visual Studio와 통합되어 DevOps 프로세스를 지원합니다. 자세한 내용은 App Service 대한 애플리케이션 모니터링을 참조하세요.
더 복잡한 시각화를 허용하는 도구는 다음과 같습니다.
- 대시보드: 다양한 종류의 데이터를 Azure Portal에서 하나의 창에 결합할 수 있습니다.
- 통합 문서: Azure Portal에서 만들 수 있는 사용자 지정 가능한 보고서입니다. 통합 문서에는 텍스트, 메트릭, 로그 쿼리가 포함될 수 있습니다.
- Grafana: 뛰어난 운영 대시보드를 제공하는 개방형 플랫폼 도구입니다. Grafana를 사용하여 Azure Monitor 외의 여러 소스에서 온 데이터를 포함하는 대시보드를 만들 수 있습니다.
- Power BI: 다양한 데이터 소스에서 대화형 시각화를 제공하는 비즈니스 분석 서비스입니다. Azure Monitor에서 자동으로 로그 데이터를 가져오도록 Power BI를 구성하여 이러한 시각화를 활용할 수 있습니다.
Managed Grafana 대시보드를 사용하여 API Management 모니터링 데이터 시각화
Azure Managed Grafana를 사용하여 Log Analytics 작업 영역에 수집된 API Management 모니터링 데이터를 시각화할 수 있습니다. 미리 빌드된 API Management 대시보드를 사용하여 API Management 인스턴스에서 수집된 로그 및 메트릭을 실시간으로 시각화합니다.
API Management 인스턴스에서:
API Management에 대한 리소스 로그 및 메트릭을 시각화하려면 리소스 로그를 수집하고 Log Analytics 작업 영역으로 보내도록 진단 설정을 구성합니다.
API Management 게이트웨이에 대한 요청에 관한 자세한 데이터를 시각화하려면 API Management 인스턴스를 Application Insights와 통합합니다.
참고 항목
단일 대시보드에서 데이터를 시각화하려면 진단 설정에 대한 Log Analytics 작업 영역을 구성하고 Application Insights 인스턴스를 API Management 인스턴스와 동일한 리소스 그룹에 구성합니다.
관리되는 Grafana 작업 영역에서 다음을 수행합니다.
- Managed Grafana 인스턴스 및 작업 영역을 만들려면 포털 또는 Azure CLI에 대한 빠른 시작을 참조하세요.
- Managed Grafana 인스턴스는 API Management 인스턴스와 동일한 구독에 있어야 합니다.
- Grafana 작업 영역을 만들면 구독에 대한 모니터 판독기 역할이 할당된 Microsoft Entra 관리 ID가 자동으로 할당됩니다. 이 방법을 사용하면 권한을 수동으로 설정할 필요 없이 새 Grafana 작업 영역에서 Azure Monitor에 즉시 액세스할 수 있습니다. Managed Grafana에 대한 데이터 원본 구성에 대해 자세히 알아봅니다.
먼저 API Management 대시보드를 Management Grafana 작업 영역으로 가져옵니다.
대시보드를 가져오려면 다음을 수행합니다.
- Azure Managed Grafana 작업 영역으로 이동합니다. 포털의 Managed Grafana 인스턴스 개요 페이지에서 엔드포인트 링크를 선택합니다.
- Managed Grafana 작업 영역에서 대시보드>찾아보기>가져오기로 이동합니다.
- 가져오기 페이지의 grafana.com 통해 가져오기에서 16604를 입력하고 로드를 선택합니다.
- Azure Monitor 데이터 원본을 선택하고, 다른 옵션을 검토하거나 업데이트하고, 가져오기를 선택합니다.
API Management 대시보드를 사용하려면 다음을 수행합니다.
- Managed Grafana 작업 영역에서 대시보드>찾아보기로 이동하여 API Management 대시보드를 선택합니다.
- 위쪽의 드롭다운에서 API Management 인스턴스를 선택합니다. 구성된 경우 Application Insights 인스턴스 및 Log Analytics 작업 영역을 선택합니다.
대시보드에서 다음 스크린샷과 유사한 기본 시각화를 검토합니다.
Azure Monitor 데이터 내보내기
다음을 사용하여 Azure Monitor에서 다른 도구로 데이터를 내보낼 수 있습니다.
메트릭: 메트릭용 REST API를 사용하여 Azure Monitor 메트릭 데이터베이스에서 메트릭 데이터를 추출합니다. 자세한 내용은 Azure REST API 참조를 참조하세요.
로그: REST API 또는 연결된 클라이언트 라이브러리를 사용합니다.
Azure Monitor REST API를 시작하려면 Azure 모니터링 REST API 연습을 참조 하세요.
Kusto 쿼리를 사용하여 로그 데이터 분석
KQL(Kusto 쿼리 언어)을 사용하여 Azure Monitor 로그 데이터를 분석할 수 있습니다. 자세한 내용은 Azure Monitor의 로그 쿼리를 참조하세요.
Azure Monitor 경고를 사용하여 문제 알림
Azure Monitor 경고를 사용하면 시스템에서 문제를 식별하고 해결할 수 있으며, 고객이 이를 확인하기 전에 모니터링 데이터에 특정 조건이 발견되면 사전에 알릴 수 있습니다. Azure Monitor 데이터 플랫폼의 모든 메트릭 또는 로그 데이터 원본에 대해 경고할 수 있습니다. 모니터링하는 서비스 및 수집하는 모니터링 데이터에 따라 다양한 유형의 Azure Monitor 경고가 있습니다. 올바른 유형의 경고 규칙 선택을 참조하세요.
Azure API Management에서 경고 규칙을 설정하는 방법을 보려면 경고 규칙 설정을 참조하세요.
Azure 리소스에 대한 일반적인 경고의 예는 샘플 로그 경고 쿼리를 참조하세요.
대규모 경고 구현
일부 서비스의 경우 동일한 Azure 지역에 존재하는 동일한 형식의 여러 리소스에 동일한 메트릭 경고 규칙을 적용하여 대규모로 모니터링할 수 있습니다. AMBA(Azure Monitor 기준 경고) 는 중요한 플랫폼 메트릭 경고, 대시보드 및 지침을 대규모로 구현하는 반자동 방법을 제공합니다.
Azure Advisor를 사용하여 개인 설정된 권장 사항 가져오기
일부 서비스의 경우 리소스 작업 중에 위험한 상태 또는 임박한 변경 사항이 발생하는 경우 해당 서비스에서 포털의 개요 페이지에 경고가 표시됩니다. 왼쪽 메뉴의 모니터링 아래 Advisor 권장 사항에서 해당 경고에 대한 자세한 정보와 권장 수정 사항을 찾을 수 있습니다. 정상적으로 작동하는 중에는 Advisor 권장 사항이 표시되지 않습니다.
Azure Advisor에 대한 자세한 내용은 Azure Advisor 개요를 참조하세요.