SYSTEM$CREATE_BILLING_EVENTS
SYSTEM$CREATE_BILLING_EVENTS (과금 이벤트 일괄 생성)
설치된 수익화 애플리케이션의 소비자 사용량을 추적하는 여러 개의 과금 가능 이벤트를 만들어요. SYSTEM$CREATE_BILLING_EVENT의 분당 이벤트 1회 빈도 제한을 초과해야 할 때 이 시스템 함수를 사용해요. 이 시스템 함수는 소비자 계정에 설치된 애플리케이션에서만 호출할 수 있어요.
본문
구문
SYSTEM$CREATE_BILLING_EVENTS('<json_array_of_events>')
인자
'json_array_of_events'
객체의 JSON 배열을 담은 STRING이에요. 각 객체는 과금 이벤트를 지정해요. 각 JSON 객체는 다음 키-값 쌍을 포함해요:
{
"class": "my_class",
"subclass": "my_subclass",
"start_timestamp": 1730825611,
"timestamp": 1730826611,
"base_charge": 1.00,
"objects": "[\"my_schema.my_udf\"]",
"additional_info": "my_additional_info"
}
다음 표는 이러한 키-값 쌍을 설명해요:
| 키-값 쌍 | 타입 | 설명 |
|---|---|---|
"class" |
STRING | 사용자 지정 이벤트 클래스의 식별자 |
"subclass" |
STRING | 사용자 지정 이벤트 서브클래스의 식별자. 이 필드는 프로바이더만 사용해요. |
"start_timestamp" |
INTEGER | 밀리초 단위 Unix 타임스탬프로 나타낸 이벤트의 시작 시간(UTC) |
"timestamp" |
INTEGER | 밀리초 단위 Unix 타임스탬프로 나타낸 이벤트가 생성된 시각(UTC) |
"base_charge" |
DOUBLE | 과금 이벤트에 대해 청구할 미국 달러 금액. 값은 0보다 크고 99,999.99보다 작아야 하며, 소수점 둘째 자리를 넘지 않아야 해요. 예: 1.00 또는 0.07. |
"objects" |
STRING | 이벤트에 적용되는 정규화된 객체 이름을 담은 JSON 문자열 배열 |
"additional_info" |
STRING | 프로바이더가 추가 정보를 보낼 수 있는 키-값 쌍의 JSON 문자열 |
반환 값
이 함수는 다음 상태 메시지를 반환해요:
| 상태 메시지 | 설명 |
|---|---|
| Success | 과금 이벤트가 성공적으로 생성되었음을 나타내요. |
Invalid parameter: <PARAM_NAME>. |
지원되지 않는 매개변수가 함수에 전달되었음을 나타내요. |
| Only callable from within an application. | 함수가 애플리케이션 밖에서 호출되었음을 나타내요. |
| Payload length exceeds the limit of 9000 characters. | 함수 호출이 문자 제한을 초과했음을 나타내요. |
| Number of events exceeds the limit of 100. | 단일 호출에 대한 최대 과금 이벤트 수에 도달했음을 나타내요. 지정한 사용자 지정 이벤트 클래스는 이 결정에 사용되지 않아요. |
| Too many calls. At most 1 call is allowed per 10 millisecond window. | 애플리케이션이 특정 기간 안에 이 시스템 함수를 너무 많이 호출했음을 나타내요. |
사용 참고 사항
이 시스템 함수는 Snowflake Native App Framework로 만든 애플리케이션의 설정 스크립트 안의 저장 프로시저에서만 호출할 수 있어요.
예시
과금 이벤트 예시를 참고해요.