SYSTEM$GET_ALERT_CONFIG
SYSTEM$GET_ALERT_CONFIG
알림(alert) 구성에서 정보를 반환해요.
알림에 구성 값을 저장하는 방법에 대한 정보는 CREATE ALERT … CONFIG를 참고하세요.
본문
구문 (Syntax)
SYSTEM$GET_ALERT_CONFIG( [<configuration_path>] )
인자 (Arguments)
configuration_path— 선택 사항. 반환할 구성 값의 경로예요. 반정형(semi-structured) 데이터에 대한 Snowflake 쿼리와 동일한 구문을 사용해요. 자세한 내용은 GET_PATH를 참고하세요. 생략하면 함수가 전체 구성을 JSON 문자열로 반환해요.
반환 값 (Returns)
구성에서 지정된 경로의 값이거나, 경로를 지정하지 않으면 전체 JSON 문자열이에요. 알림에 구성이 설정되어 있지 않으면 NULL을 반환해요.
사용 참고 (Usage Notes)
- 이 함수는 알림 실행 중(알림의 조건 또는 동작 SQL에서)에만 호출할 수 있어요. 알림 런타임 밖에서 호출하면 오류가 발생해요.
- 구성 값을 특정 유형으로 변환할 때 TRY_TO_NUMBER, TRY_TO_BOOLEAN 같은 방어적 캐스팅 함수를 사용해요. 구성이
NULL일 수 있는 경우 기본 값을 제공하려면 COALESCE를 사용해요.
예제 (Examples)
다음 예제는 구성을 가진 알림을 만들고 조건과 동작에서 모두 SYSTEM$GET_ALERT_CONFIG를 사용해 값을 읽어요.
CREATE OR REPLACE ALERT my_metric_threshold_alert
WAREHOUSE = my_alert_wh
SCHEDULE = '5 MINUTE'
CONFIG = $${
"enabled": true,
"threshold": 10,
"notify": "ops"
}$$
IF( EXISTS(
SELECT 1
FROM my_db.my_schema.my_source_table
WHERE COALESCE(TRY_TO_BOOLEAN(SYSTEM$GET_ALERT_CONFIG('enabled')), FALSE)
AND metric_value > COALESCE(
TRY_TO_NUMBER(SYSTEM$GET_ALERT_CONFIG('threshold')), 0)
))
THEN
INSERT INTO my_db.my_schema.my_output_table
SELECT CURRENT_TIMESTAMP(), SYSTEM$GET_ALERT_CONFIG('notify');
더 알아보기
- Snowflake 시스템 정보 함수 — 관련 시스템 함수 전체 목록