Alert Webhook

Overview

Grafana 의 알람을 CloudOps 로 보내려면 Grafana 인스턴스에서 Webhook contact point 를 CloudOps webhook 엔드포인트로 설정하면 됩니다.

본 가이드는 Grafana Unified Alerting (Grafana 8.0+ 표준) 기준입니다. legacy alerting 사용 시 Grafana 공식 문서 를 참고하세요.

ℹ️

지원 payload 포맷 — 본 플러그인은 Grafana Unified Alerting 의 Webhook Payload Version 1 (Grafana 9.0+) 을 기준으로 동작합니다.

  • Standard — Grafana 9.0+ Unified Alerting (Webhook Payload Version 1)
  • Legacy — Grafana 7.x ~ 8.x Dashboard Alerting (Grafana 11 에서 제거됨, 구버전 호환용)
  • AWS SNS — SNS Notification wrapper 경유

필요 정보:

  • CloudOps webhook URL

    CloudOps 콘솔에서 Grafana 플러그인 webhook 을 등록할 때 발급되는 엔드포인트입니다. 다음과 같은 형태입니다.

    https://<your-cloudops-tenant>/api/v2/integrations/webhooks/<webhook-id>

    먼저 CloudOps 에 Grafana 연동하기 단계를 진행하여 이 값을 확보하세요.

  • contact point 및 notification policy 를 등록할 Grafana 조직에 대한 Editor (혹은 Admin) 권한.

설정은 아래 순서로 진행합니다.

  1. Contact Point 추가
  2. Contact Point 로 알람 라우팅 (Notification Policy)
  3. 연동 테스트
ℹ️
Contact point 만 만든다고 알람이 전송되지는 않습니다. Grafana 는 notification policy 가 contact point 로 라우팅해 줄 때만 알람을 전달하므로, 2단계에서 반드시 policy 와 짝지어 주세요.

1. Contact Point 추가

Contact Point 는 Grafana 가 알람을 어디로 보낼지 정의합니다. CloudOps 의 경우 Webhook integration 을 사용합니다.

Contact Points 진입

Grafana 사이드 네비게이션에서 [Alerting > Contact points] 로 이동합니다.

새 Contact Point 추가

Contact points 목록 우측 상단의 [+ Create contact point] 를 클릭합니다. 빈 Contact Point 폼이 열립니다.

Webhook integration 설정

(1) Name 에 contact point 식별용 이름 (예: cloudops-webhook) 을 입력합니다.
(2) IntegrationWebhook 으로 설정합니다 (폼은 Email 이 default — 드롭다운에서 변경).
(3) URLCloudOps webhook URL 을 붙여넣습니다.
(4) HTTP methodPOST 로 둡니다.

ℹ️
CloudOps 는 Grafana 기본 JSON body 를 그대로 수용합니다. 검증된 CloudOps payload 커스터마이즈 가 없는 한 Body 템플릿은 수정하지 마세요.

Contact Point 저장

페이지 하단의 [Save contact point] 를 클릭합니다. 새 contact point 가 목록에 표시됩니다.

2. Contact Point 로 알람 라우팅

Notification Policy어떤 알람을 contact point 로 보낼지 결정합니다. 매칭되는 policy 가 없으면 방금 만든 contact point 는 호출되지 않습니다.

라우팅 방식은 두 가지입니다 — 가장 단순한 방법은 default policy 를 새 contact point 로 가리키게 하는 것이고, 라벨 기반으로 일부 알람만 보내려면 specific policy 를 추가합니다.

Notification Policies 진입

사이드 네비게이션에서 [Alerting > Notification policies] 로 이동합니다. 페이지 상단에 Default policy 카드가 표시됩니다.

라우팅 방식 선택

  • 옵션 A — Default policy 갱신Default policy 카드의 [More] 메뉴를 열어 [Edit] 선택. 폼에서 Default contact point 를 방금 만든 contact point 로 변경 후 Save. 더 구체적인 policy 에 매칭되지 않는 모든 알람이 CloudOps 로 전송됩니다.
  • 옵션 B — Child / Nested policy 추가Default policy 카드의 [+ New child policy] 버튼 클릭 (일부 Grafana 버전에서는 [More > Add nested policy] 메뉴). 폼에서 전송할 알람을 선별할 Matching labels 정의 + Contact point 를 새 contact point 로 지정 후 Save. 일부 알람만 CloudOps 로 보내고 싶을 때 사용합니다.
ℹ️
Matching labels 은 Grafana label-matcher 문법 (severity =~ critical|warning, team = platform 등) 을 따릅니다. alert rule 이 여기서 매칭하는 라벨을 실제로 방출하는지 확인하지 않으면 알람이 default policy 로 떨어집니다.

3. 연동 테스트

실 alert rule 이 의존하기 전에 Grafana → CloudOps 경로가 정상 동작하는지 검증합니다.

테스트 알림 전송

[Alerting > Contact points] 로 돌아가 방금 만든 contact point 행의 [⋯] 메뉴를 열고 [Test] 를 클릭합니다. 표시되는 다이얼로그에서 [Send test notification] 으로 확인합니다.

CloudOps 측 확인

CloudOps 콘솔에서 이 webhook 에 등록한 알림 소스 아래에 테스트 이벤트가 도착했는지 확인합니다. 도착하지 않은 경우:

  • contact point 의 URL 이 CloudOps 가 발급한 값과 정확히 일치하는지 확인.
  • 새 contact point 로 라우팅하는 Notification policy 가 있는지 확인 (위 2단계).
  • Grafana 의 [Alerting > History] 화면에서 contact point 의 전송 오류 여부 확인.

(Optional) Alert rule 생성

Grafana 알람 엔진에서 발화하는 alert rule 이 아직 없다면 생성합니다.

  1. [Alerting > Alert rules] 진입 후 [+ New alert rule] 클릭.
  2. 데이터 소스를 선택하고 알람을 트리거할 쿼리/임계값 정의.
  3. Labels and notifications 섹션에서 2단계의 notification policy 가 매칭하는 라벨을 설정.
  4. 룰 저장.

Alert rule 작성 전체 흐름은 Grafana 공식 문서 를 참고하세요.

v1.1.0