웹훅 채널 플러그인
웹훅 채널 플러그인은 Core가 렌더링한 알림 페이로드를 HTTP 웹훅으로 전송하는 alert_deliver 플러그인입니다. 범용 JSON부터 Slack, Mattermost, PagerDuty, Teams, Discord, Opsgenie, Grafana OnCall, Google Chat, CloudEvents 형식까지 여러 템플릿 프로필을 제공합니다.
특징
- HTTP 메서드, 헤더, 인증, 제한 시간, 재시도, 멱등성 키를 전송 설정으로 다룹니다.
- Slack 블록/첨부/텍스트, Mattermost, PagerDuty Events v2, Teams MessageCard, Discord 임베드, Opsgenie 알림, Google Chat 카드/텍스트, CloudEvents v1 프로필을 지원합니다.
- 사설/내부망 대상은 기본적으로 차단하고, 신뢰된 배포에서만 명시적으로 허용합니다.
- 상태 점검은 설정 검증과 선택적 테스트 전송을 구분합니다.
등록 전 확인
- 웹훅 URL, 인증 방식, 템플릿 유형, 제한 시간/재시도 정책을 준비합니다.
- SaaS 웹훅별 필수 필드와 전송률 제한을 확인합니다.
- 내부 웹훅을 사용할 경우 네트워크 허용 정책을 명시적으로 검토합니다.
운영 팁
- 커스텀 헤더는 Core가 관리하는
Authorization,Content-Type,User-Agent,Idempotency-Key등을 덮어쓰지 못합니다. - 범용 프로필은 원본
message_json을 보존하므로 후속 자동화에 적합합니다. - 사람이 읽기 좋은 채팅 프로필은
notification_language와 Core가 렌더링한 메시지를 기준으로 표시됩니다.
운영 화면
- 채널 설정은 웹훅 URL, 메서드, 인증, 헤더, 템플릿 프로필, 제한 시간/재시도, 내부 대상 허용 여부를 관리합니다.
- Webhook은 별도 채널 화면을 제공하지 않습니다. 초안 진단은 등록/수정 폼과 테스트 결과 상세에서 확인합니다.
- 폼 보조 정보는 HTTP 요청을 보내지 않고 민감 정보가 제거된 요청, 렌더링 페이로드, HMAC 서명 자리표시자, 엔드포인트 정책, 재시도 일정을 미리 보여줍니다.
- 상태 점검은 URL과 템플릿 설정 검증, 선택적 테스트 전송, 사설 대상 보호 장치를 분리해 보여줍니다.
- 전송 결과는 HTTP 상태, 재시도 가능 여부, 멱등성 키, 후속 시스템 응답 일부를 Core 전송 세션과 연결합니다.
템플릿 프로필
generic프로필은 후속 자동화가 원본 알림 맥락을 처리하기 좋도록 JSON 구조를 보존합니다.- Slack, Mattermost, Teams, Discord, Google Chat 프로필은 사람이 읽기 좋은 채팅 메시지 형태에 집중합니다.
- PagerDuty Events v2, Opsgenie, Grafana OnCall 프로필은 장애 대응/당직 시스템의 필수 필드와 라우팅 키를 맞추는 데 초점을 둡니다.
- CloudEvents v1 프로필은 이벤트 기반 연동에서 표준 봉투 형식이 필요한 경우에 적합합니다.
관리 경계
- 내부망 webhook은 SSRF 위험이 있으므로 기본적으로 차단하고, 신뢰된 배포에서만 명시적으로 허용합니다.
- 후속 SaaS별 전송률 제한, 페이로드 크기, 필수 필드는 채널 설정 시 운영자가 확인해야 합니다.
- 웹훅 채널은 알림 전달 수단이며, 후속 장애 대응 생명주기의 기준 상태를 소유하지 않습니다.
대표 시나리오
- 웹훅 전송이 실패하면 HTTP 상태, 인증 헤더, 템플릿 필수 필드, 제공자 전송률 제한, 재시도 기록을 확인합니다.
- 미리보기는 정상인데 수신자가 거부하면 명시적 전송 테스트를 실행하고 제공자 인증, HMAC 서명 헤더, 필수 필드, 페이로드 크기를 비교합니다.
- 채팅 메시지가 깨져 보이면 알림 언어, 제공자별 템플릿 옵션, 렌더링된 메시지를 비교합니다.
- 후속 자동화가 필요하면 범용 또는 CloudEvents 프로필을 우선 검토합니다.