

# 경보에서 PromQL 사용
<a name="CloudWatch-PromQL-Alarms"></a>

PromQL 쿼리를 사용하여 지표를 모니터링하는 CloudWatch 경보를 생성할 수 있습니다. PromQL 경보는 PromQL 표현식을 평가하고 쿼리 결과를 기반으로 경보 상태 변경을 트리거합니다.

경보 개념에 대한 자세한 내용은 [개념](alarm-concepts.md) 섹션을 참조하세요.

경보 데이터 쿼리에 대한 자세한 내용은 [경보 데이터 쿼리](alarm-data-queries.md) 섹션을 참조하세요.

경보 작업에 대한 자세한 내용은 [경보 작업](alarm-actions.md) 섹션을 참조하세요.

한도에 대한 자세한 내용은 [Limits](alarm-limits.md) 섹션을 참조하세요.

## PromQL 경보 생성
<a name="CloudWatch-PromQL-Alarms-Create"></a>

CloudWatch 콘솔, AWS CLI 또는 CloudWatch API에서 PromQL 경보를 생성할 수 있습니다.

**콘솔에서 PromQL 경보 생성**

1. [CloudWatch 콘솔](https://console.aws.amazon.com/cloudwatch/)을 엽니다.

1. 탐색 창에서 **Alarms**, **All alarms**를 선택합니다.

1. **경보 생성**을 선택하세요.

1. **지표 선택**을 선택하고, **PromQL** 탭을 선택합니다.

1. PromQL 쿼리를 입력합니다. 경보를 평가하려면 쿼리가 단일 시계열을 반환해야 합니다.

1. 임계값, 평가 기간 및 경보를 보낼 데이터 포인트를 포함하여 경보 조건을 구성합니다.

1. Amazon SNS 알림과 같은 경보 작업을 구성합니다.

1. 경보의 이름과 설명을 입력하고 **경보 생성**을 선택합니다.

단일 시계열을 반환하는 쿼리를 실행한 후 [Query Studio에서 PromQL 쿼리 실행(미리 보기)](CloudWatch-PromQL-QueryStudio.md)에서 직접 PromQL 경보를 생성할 수도 있습니다.

## PromQL을 사용하여 이상 탐지에 대한 CloudWatch 경보 생성
<a name="promql_alarm_anomaly_detection"></a>

지표가 통계 경계로 정의된 예상 범위를 위반하면 트리거되는 PromQL 경보를 생성할 수 있습니다. 경보 쿼리는 상한과 하한을 이상 데이터 포인트만 반환하는 단일 표현식으로 결합합니다. 쿼리에서 반환하는 모든 시계열은 위반으로 간주됩니다.

다음 표현식 예제는 광고 요청 지표가 60분 기간 동안 중앙값에서 3 표준 편차를 초과하는 경우를 감지합니다.

```
1 * {"app.ads.ad_requests"} > quantile_over_time(0.5, {"app.ads.ad_requests"}[60m] offset 1m)
    + 3 * stddev_over_time({"app.ads.ad_requests"}[60m] offset 1m)
or
1 * {"app.ads.ad_requests"} < clamp_min(
    quantile_over_time(0.5, {"app.ads.ad_requests"}[60m] offset 1m)
    - 3 * stddev_over_time({"app.ads.ad_requests"}[60m] offset 1m),
0)
```

이 표현식은 여러 레이블 값에서 작동하므로 경보가 전체 플릿에서 이상을 추적할 수 있습니다. 각각의 위반 시계열은 별도의 기고자로 추적됩니다. PromQL 경보의 기고자 평가 방식에 대한 자세한 내용은 [PromQL 경보](alarm-promql.md) 섹션을 참조하세요.

지표 동작에 맞게 승수와 기간을 조정할 수 있습니다. 승수가 높을수록 오탐이 적은 더 넓은 범위가 생성됩니다. 기간이 길면 단기 스파이크가 완화됩니다. `clamp_min` 함수는 음수 값이 있을 수 없는 지표에서 하한이 음수가 되지 않도록 합니다.

PromQL을 사용한 이상 탐지 밴드 빌드에 대한 자세한 내용은 [PromQL을 사용한 이상 탐지](CloudWatch_Anomaly_Detection.md#anomaly_detection_promql) 섹션을 참조하세요.