类别:

:doc:`/sql-reference/functions-system`(系统控制)

SYSTEM$CREATE_BILLING_EVENTS

创建多个 可计费事件,这些事件跟踪使用者对已安装的创收型应用程序的使用情况。当您需要超出每分钟一个事件的频率限制 SYSTEM$CREATE_BILLING_EVENT 时,请使用此系统函数。此系统函数只能从安装在使用者账户中的应用程序调用。

语法

SYSTEM$CREATE_BILLING_EVENTS('<json_array_of_events>')
Copy

实参

'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"
}
Copy

下表描述了这些键值对:

键值对

类型

描述

"class"

STRING

自定义事件类的标识符。

"subclass"

STRING

自定义事件子类的标识符。此字段仅由提供商使用。

"start_timestamp"

INTEGER

将事件的开始时间 (UTC) 指定为 Unix 时间戳(以毫秒为单位)。

"timestamp"

INTEGER

在事件已创建为 Unix 时间戳(以毫秒为单位)(以毫秒为单位)时指定时间戳 (UTC)。

"base_charge"

DOUBLE

要为可计费事件收取的金额(以 US 美元为单位)。值必须大于 0,小于 99,999.99,且精度不得超过 2 个小数位。例如,1.000.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 创建的应用程序的安装脚本中。

示例

请参阅 可计费事件示例

语言: 中文