웹훅 알림 보내기
웹훅 알림 보내기 (Sending webhook notifications)
이 문서는 Snowflake에서 웹훅(webhook) 알림을 보내는 방법을 설명해요.
본문
개요
웹훅 알림은 Snowflake 이벤트가 발생했을 때 외부 HTTP 엔드포인트로 알림을 전송하는 방식이에요. 웹훅을 사용하면 타사 시스템이나 자체 서비스와 통합할 수 있어요.
웹훅 알림은 병렬 처리를 위해 실행 시 여러 알림으로 분할되어 전달돼요. 웹훅 엔드포인트는 어떤 수의 알림이라도 처리할 수 있도록 설계되어야 해요.
Snowpipe Streaming과 함께 사용하면 각 파이프에 대해 웹훅 알림이 전송돼요.
웹훅 알림 통합 만들기
웹훅 알림을 보내려면 TYPE = WEBHOOK인 알림 통합을 만들어요:
CREATE NOTIFICATION INTEGRATION my_webhook_integration
TYPE = WEBHOOK
ENABLED = TRUE
WEBHOOK_URL = 'https://example.com/webhook'
WEBHOOK_SECRET = 'my_secret'
WEBHOOK_TYPE = 'CLOUD';
WEBHOOK_URL: 알림을 보낼 HTTPS 엔드포인트.WEBHOOK_SECRET: 엔드포인트에 대한 인증에 사용할 비밀 키.WEBHOOK_TYPE: 웹훅 유형 (예:CLOUD,SNOWFLAKE,HTTPS).
참고: 웹훅 URL은 HTTPS여야 하고, 신뢰할 수 있는 엔드포인트여야 해요.
웹훅 알림 보내기
웹훅 알림은 태스크, Snowpipe, 저장 프로시저 등에서 생성할 수 있어요. 알림을 보내는 방법 중 하나는 SYSTEM$SEND_SNOWFLAKE_NOTIFICATION 함수를 사용하는 것이에요:
SELECT SYSTEM$SEND_SNOWFLAKE_NOTIFICATION(
'my_webhook_integration',
'알림 메시지'
);
또한 태스크에 웹훅 알림을 연결해 태스크 완료·실패 시 이벤트를 자동으로 알릴 수 있어요. 태스크 완료 알림 구성은 태스크 문서를 참고하세요.
웹훅 본문 형식
웹훅으로 전송되는 알림 본문에는 알림 메시지와 관련 메타데이터가 JSON 형태로 포함될 수 있어요. 실제 본문 형식은 알림을 생성하는 이벤트 유형에 따라 달라져요.
알림 통합 관리
SHOW NOTIFICATION INTEGRATIONS— 통합 나열.DESCRIBE NOTIFICATION INTEGRATION— 통합 세부 정보.ALTER NOTIFICATION INTEGRATION— 통합 수정 (예: 웹훅 URL 변경).
제한 사항
- 웹훅 엔드포인트는 HTTPS여야 해요.
- 알림은 여러 알림으로 분할 전송될 수 있으므로 엔드포인트가 이를 처리할 수 있어야 해요.
- 보안을 위해
WEBHOOK_SECRET을 설정해 엔드포인트가 인증된 알림만 받도록 하는 것이 좋아요.