- 类别:
:doc:`/sql-reference/functions-system`(系统控制)
SYSTEM$CREATE_BILLING_EVENTS¶
创建多个 可计费事件,这些事件跟踪使用者对已安装的创收型应用程序的使用情况。当您需要超出每分钟一个事件的频率限制 SYSTEM$CREATE_BILLING_EVENT 时,请使用此系统函数。此系统函数只能从安装在使用者账户中的应用程序调用。
语法¶
SYSTEM$CREATE_BILLING_EVENTS('<json_array_of_events>')
实参¶
'json_array_of_events'
STRING,其中包含一个 JSON 对象数组。每个对象指定一个计费事件。
每个 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
将事件的开始时间 (UTC) 指定为 Unix 时间戳(以毫秒为单位)。
"timestamp"
INTEGER
在事件已创建为 Unix 时间戳(以毫秒为单位)(以毫秒为单位)时指定时间戳 (UTC)。
"base_charge"
DOUBLE
要为可计费事件收取的金额(以 US 美元为单位)。值必须大于 0,小于 99,999.99,且精度不得超过 2 个小数位。例如,
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 创建的应用程序的安装脚本中。
示例¶
请参阅 可计费事件示例。