지표 수식을 사용한 Amazon CloudWatch 경보 생성
2018년 AWS에서는 실시간 분석을 위해 여러 지표에 걸친 계산을 수행할 수 있게 해 주는 지표 수식을 발표했습니다. 수집된 지표로 부터 간단한 표현식을 사용해 계산된 지표를 생성하고 이렇게 계산된 지표를 Amazon CloudWatch를 통해 시각화하고 CloudWatch 대시보드에 추가하거나 새롭게 출시된 GetMetricData API를 통해 검색할 수 있습니다. 지표 수식을 사용하면 기존 CloudWatch 지표에 대한 통찰력을 얻고 운영 상태 및 인프라 성능에 대한 이해를 높일 수 있습니다.
AWS는 re:Invent 2018에서 지표 수식을 사용하여 CloudWatch 경보를 생성할 수 있는 기능을 발표했습니다.
이 블로그 게시물에서는 AWS Lambda 오류율을 계산하는 지표 수식에 대한 경보를 생성해 보겠습니다. AWS Lambda 오류에 대한 경보를 생성하되 적은 수의 오류는 경보가 트리거되지 않도록 허용하겠습니다. 지표 수식을 사용하면 백분율 형식의 오류율 표현식을 생성할 수 있습니다. 이렇게 하려면 [Errors] 지표를 [Invocations] 지표로 나누어 오류율을 얻고 이에 해당하는 시계열을 CloudWatch 대시보드의 그래프에 추가합니다. 표현식 = 오류 / 요청 * 100.다른 사용 사례로는 다음과 같은 사례가 포함됩니다.1. Amazon EC2, CloudWatch 및 Amazon DynamoDB를 비롯한 다른 AWS 서비스의 총 결제 금액 계산. 표현식: e1 = m1 + m2 + m3.2. HealthyHostCount 및 UnHealthyHostCount 지표를 사용한 비정상 ELB(Elastic Load Balancing) 호스트의 비율 계산. 표현식: 비정상/(정상 + 비정상) * 100.이 블로그 게시물에서는 Amazon CloudWatch를 사용합니다. 적격한 사용자의 경우 이 서비스는 AWS 프리 티어에 포함됩니다.
1단계. CloudWatch 경보 생성
1. Amazon CloudWatch 콘솔을 엽니다. 탐색 창에서 [경보], [경보 생성]을 선택합니다.
2. [지표 선택]을 선택합니다.
3. Lambda 서비스 네임스페이스를 선택합니다.
4. 리소스별을 선택합니다.
5. 지표 목록이 표시되면 [오류] 및 [호출](요청) 지표에 대한 확인란을 선택합니다.
6. 지표 수식에 사용할 다른 지표를 추가하려면 [모든 지표] 아래에서 [모두]를 선택하고 특정 지표를 찾은 다음 그 옆에 있는 확인란을 선택합니다. 최대 10개의 지표를 추가할 수 있습니다.
7. [그래프로 표시된 지표]를 선택합니다.
8. 추가된 각 지표에 대해 다음 작업을 수행합니다.
a. [통계] 아래에서 통계 또는 사전 정의된 백분위 중 하나를 선택하거나 사용자 지정 백분위를 선택합니다(이 예에서는 [합계]).
b. [기간] 아래에서 경보를 위한 평가 기간을 선택합니다. 모든 지표는 동일한 기간을 가져야 한다는 점을 참고하십시오. 경보를 평가할 때 각 기간은 하나의 데이터 포인트에 집계됩니다(이 예에서는 5분).
9. [지표 표현식 추가]를 선택합니다.
2단계. 지표 표현식 생성
[지표 표현식 추가]를 선택하면 해당 표현식을 위한 새 행이 추가됩니다. 총 요청 수에 대한 오류 백분율을 계산하는 표현식을 [세부 정보] 필드에 입력합니다. 자세한 내용은 지표 수식 사용을 참조하십시오.
1. 지표 또는 다른 표현식의 결과를 이 표현식을 위한 공식의 일부로 사용하려면 [ID] 열에 표시된 값을 사용합니다. [ID]의 값은 변경할 수 있습니다. 이 값은 숫자, 문자 및 밑줄을 포함할 수 있으며 소문자 문자로 시작해야 합니다. [ID]의 값을 보다 유의미한 이름으로 변경하면 경보 그래프를 쉽게 이해하는 데 도움이 됩니다.
2. 경보에 사용할 표현식이 있으면 페이지에 있는 다른 모든 표현식과 모든 지표 왼쪽에 있는 확인란을 선택 취소합니다. 오류율 표현식 옆의 확인란만 선택해야 합니다. 경보를 위해 선택한 표현식은 단일 시계열을 출력해야 하며 그래프에 하나의 선만 표시해야 합니다.
3. 그런 다음 [지표 선택]을 선택합니다.
4. 경보에 대한 이름과 설명을 선택합니다. 이름은 ASCII 문자만 포함해야 합니다.
5. 다음 경우 항상에 경보 조건을 지정합니다.
a. 결과 값:에 표현식 결과가 임계값보다 크거나 자거나 같아야 하는지를 지정하고 임계값을 지정합니다.
b. 기간:에 경보를 트리거하기 위해 얼마나 많은 평가 기간(데이터 포인트)이 [ALARM] 상태에 있어야 하는 지 지정합니다. 초기에는 두 번째 값만 변경할 수 있으며 첫 번째 값은 입력한 내용에 맞게 변경됩니다. 이렇게 하면 해당 수의 기간이 연속적으로 위반되는 경우 [ALARM] 상태로 전환되는 경보가 생성됩니다.
N 중 M 경보를 생성하려면 연필 아이콘을 선택합니다. 그런 다음 N 숫자와 다르게 M 숫자를 변경할 수 있습니다. 자세한 내용은 경보 평가를 참조하십시오.
6. [추가 설정] 아래에서 [누락 데이터 처리]에 대해 일부 데이터 포인트가 누락되었을 때 경보가 어떻게 작동할지 선택합니다. 자세한 내용은 CloudWatch 경보가 누락 데이터를 처리하는 방법 구성을 참조하십시오.
7. [작업] 아래에서 경보가 트리거되었을 때 경보가 수행할 작업 유형을 선택합니다. 경보가 여러 작업을 수행하도록 하려면 [+알림] 또는 [+Auto Scaling 작업]을 선택합니다. 하나 이상의 작업을 지정합니다.
8. 마지막으로 [경보 생성]을 선택하여 경보를 저장합니다.
3단계. CloudWatch 대시보드 생성
1. 지표 수식 경보가 생성된 후 경보 확인란을 선택하고 [대시보드에 추가]를 선택합니다.
2. 대시보드, 위젯 유형 및 위젯 제목을 선택합니다. [대시보드에 추가]를 선택합니다.
맺음말
축하합니다. 지표 수식을 모니터링하는 경보가 성공적으로 생성되었습니다. 지표 수식 경보의 요금에 대한 자세한 내용을 보려면 CloudWatch 요금 사이트를 방문하십시오.
AWS CloudFormation 템플릿을 사용하면 AWS 리소스 및 애플리케이션 전반에 걸쳐 일관적으로 지표 수식 경보를 생성 및 수정할 수 있습니다. 지표 표현식 경보에 있는 최근에 트리거된 경보는 즉각적으로 CloudWatch 자동 대시보드에 추가되어 원인 분석 작업을 가속화해 줍니다.
작성자 소개
Javier Martin은 Amazon CloudWatch의 선임 제품 관리자입니다. Javier는 고객의 시스템 및 애플리케이션 모니터링을 돕는 AWS 기반 제품을 제작하는 것을 좋아합니다.
이 글은 AWS Management Tools Blog의 Create a metric math alarm using Amazon CloudWatch의 한국어 번역으로 정도현 AWS 테크니컬 트레이너가 감수하였습니다.
Leave a Reply