链接复制成功!
函数支持的触发事件
FunctionGraph支持的触发事件
表1为支持触发FunctionGraph函数的云服务,这些云服务可配置为FunctionGraph函数的事件源,即配置函数的触发器。配置事件源触发器后,只要检测到相应事件,将自动调用FunctionGraph函数。
云服务/功能 |
触发事件 |
---|---|
计划事件功能 TIMER |
使用TIMER的计划事件功能定期调用函数代码,可以指定固定频率(分钟、小时、天数)或指定 Cron 表达式定期调用函数(TIMER示例事件)。 TIMER定时触发器的使用过程请参考使用定时触发器。 |
API网关服务 APIG |
通过HTTPS或者HTTP调用FunctionGraph函数,使用API Gateway自定义REST API和终端节点来实现。可以将各个API操作(如GET和PUT)映射到特定的FunctionGraph函数,当向该API终端节点发送HTTPS请求时(APIG示例事件),APIG会调用相应的FunctionGraph函数。 APIG的触发使用过程请参考:使用APIG专享版触发器 |
API Connect APIC |
通过HTTPS或者HTTP调用FunctionGraph函数,将各个API操作(如GET和PUT)映射到特定的FunctionGraph函数,当向该API发送HTTPS或者HTTP请求时,APIC 会调用相应的FunctionGraph函数。 APIC的触发使用过程请参考使用APIC触发器。 |
云审计服务 CTS |
编写FunctionGraph函数,根据CTS云审计服务类型和操作订阅所需要的事件通知,当CTS云审计服务获取已订阅的操作记录后,通过CTS触发器将采集到的操作记录作为参数传递(CTS示例事件)来调用FunctionGraph函数。经由函数对日志中的关键信息进行分析和处理,对系统、网络等业务模块进行自动修复,或通过短信、邮件等形式产生告警,通知业务人员进行处理。 CTS的触发使用过程请参考使用CTS触发器。 |
文档数据库服务 DDS |
使用DDS触发器,每次更新数据库中的表时,都可以触发Functiongraph函数以执行额外的工作(DDS示例事件)。 DDS的触发使用过程请参考使用DDS触发器。 |
数据接入服务 DIS |
将FunctionGraph函数配置为自动轮询流并处理任何新记录,例如网站点击流、财务交易记录、社交媒体源、IT日志和数据位置跟踪事件等(DIS示例事件)。FunctionGraph会定期轮询DIS数据流中的新记录。 DIS的触发使用过程请参考使用DIS触发器。 |
分布式消息服务 Kafka版 |
当向Kafka实例的Topic生产消息时,FunctionGraph会消费消息,触发函数以执行额外的工作(Kafka示例事件)。 分布式消息Kafka的触发使用过程请参见: |
分布式消息服务 RabbitMQ版 |
FunctionGraph可以定期轮询RabbitMQ实例指定Exchange绑定的队列下的新消息,FunctionGraph将轮询得到的消息作为参数传递来调用函数(分布式消息服务RabbitMQ示例事件)。 分布式消息RabbitMQ的触发使用过程请参见使用RabbitMQ触发器。 |
云数据库 GeminiDB MongoDB |
使用GeminiDB Mongo触发器,每次更新数据库中的表时,都可以触发FunctionGraph函数以执行额外的工作(GeminiDB MongoDB示例事件)。 GeminiDB Mongo触发器使用请参见使用GeminiDB Mongo触发器。 |
云数据库 GeminiDB DynamoDB |
使用GeminiDB DynamoDB(DYNAMODB)触发器,实现定时拉取DynamoDB数据库流表中的信息,并触发函数执行(云数据库GeminiDB DynamoDB示例)。 GeminiDB DynamoDB触发器使用请参见使用云数据库GeminiDB DynamoDB触发器。 |
设备接入服务 IoTDA |
使用IoTDA触发器,对于设备上报到平台的数据,FunctionGraph可跟踪设备的设备属性、消息上报,状态变更,分析、整理和计量数据流(IoTDA示例事件)。 IoTDA触发器的使用请参见使用IoTDA触发器。 |
云日志服务 LTS |
编写FunctionGraph函数来处理云日志服务订阅的日志,当云日志服务采集到订阅的日志后,可以通过将采集到的日志作为参数传递(LTS示例事件)来调用FunctionGraph函数,FunctionGraph函数代码可以对其进行自定义处理、分析或将其加载到其他系统。 LTS的触发使用过程请参考使用LTS触发器。 |
消息通知服务 SMN |
编写FunctionGraph函数来处理SMN的通知,在将消息发布到SMN主题时,服务可以通过将消息负载作为参数传递(SMN示例事件)来调用FunctionGraph函数,FunctionGraph函数代码可以处理事件,比如将消息发布到其他SMN主题或将消息发送到其他云服务。 SMN消息触发的使用过程请参考使用SMN触发器。 |
对象存储服务 OBS |
可以编写FunctionGraph函数来处理OBS存储桶事件,例如对象创建事件或对象删除事件(OBS示例事件)。当用户将一张照片上传到存储桶时,OBS存储桶调用FunctionGraph函数,实现读取图像和创建照片缩略图。 OBS对象操作触发函数的过程请参考: |
事件网格服务 EventGrid |
可以编写FunctionGraph函数来处理EventGrid的通知,在将消息发布到EG事件源时,服务可以通过将消息负载作为参数传递(EG示例事件)来调用FunctionGraph函数。FunctionGraph函数代码可以处理事件,比如将消息发送到其他云服务。 EventGrid的触发使用支持以下事件源: |
云服务触发事件示例
定时触发器(TIMER)
- TIMER示例事件,具体参数解释参考表2。
{ "version": "v2.0", "time": "2023-06-01T08:30:00+08:00", "trigger_type": "TIMER", "trigger_name": "Timer_001", "user_event": "User Event" }
API网关服务(APIG专享版)触发器
- API网关示例事件,具体参数解释参考表3。
{ "body": "", "requestContext": { "apiId": "bc1dcffd-aa35-474d-897c-d53425a4c08e", "requestId": "11cdcdcf33949dc6d722640a13091c77", "stage": "RELEASE" }, "queryStringParameters": { "responseType": "html" }, "httpMethod": "GET", "pathParameters": {}, "headers": { "accept-language": "zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2", "accept-encoding": "gzip, deflate, br", "x-forwarded-port": "443", "x-forwarded-for": "103.218.216.98", "accept": "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "upgrade-insecure-requests": "1", "host": "50eedf92-c9ad-4ac0-827e-d7c11415d4f1.apigw.region.cloud.com", "x-forwarded-proto": "https", "pragma": "no-cache", "cache-control": "no-cache", "x-real-ip": "103.218.216.98", "user-agent": "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:57.0) Gecko/20100101 Firefox/57.0" }, "path": "/apig-event-template", "isBase64Encoded": true }
表3 APIG示例事件参数说明 参数
类型
示例值
描述
body
String
例如:"{\"test\":\"body\"}"
记录实际请求转换为String字符串后的内容。
requestContext
Map
参考示例代码
请求来源的API网关的配置信息、请求标识、认证信息、来源信息。
httpMethod
String
GET
记录实际请求的HTTP方法。
queryStringParameters
Map
参考示例代码
记录在API网关中配置过的Query参数以及实际取值。
pathParameters
Map
参考示例代码
记录在API网关中配置过的Path参数以及实际取值。
headers
Map
参考示例代码
记录实际请求的完整Header内容。
path
String
/apig-event-template
记录实际请求的完整的Path信息。
isBase64Encoded
Boolean
true
默认为true。
约束与限制:
云审计服务(CTS)触发器
- 云审计服务CTS示例事件,具体参数解释参考表4。
{ "cts": { "time": 1529974447000, "user": { "name": "userName", "id": "5b726c4fbfd84821ba866bafaaf56aax", "domain": { "name": "domainName", "id": "b2b3853af40448fcb9e40dxj89505ba" } }, "request": {}, "response": {}, "code": 204, "service_type": "FunctionGraph", "resource_type": "graph", "resource_name": "workflow-2be1", "resource_id": "urn:fgs:region:projectId:graph:workflow-2be1", "trace_name": "deleteGraph", "trace_type": "ConsoleAction", "record_time": 1529974447000, "trace_id": "69be64a7-0233-11e8-82e4-e5d37911193e", "trace_status": "normal" } }
表4 CTS示例事件参数说明 参数
类型
示例值
描述
time
Long
参考示例代码
本次请求的时间,13位时间戳格式。
user
Map
参考示例代码
本次请求的发起用户信息。
request
Map
参考示例代码
事件请求内容。
response
Map
参考示例代码
事件响应内容。
code
Int
204
事件响应码,例如200、400。
service_type
String
FunctionGraph
发送方的简写,比如vpc,ecs等。
resource_type
String
graph
发送方资源类型,比如vm,vpn等。
resource_name
String
workflow-2be1
资源名称,例如ECS服务中某个虚拟机的名称。
trace_name
String
deleteGraph
事件名称,例如:startServer, shutDown等。
trace_type
String
ConsoleAction
事件发生源头类型,例如ApiCall。
record_time
Long
参考示例代码
CTS服务接收到这条trace的时间,13位时间戳格式。
trace_id
String
69be64a7-0233-11e8-82e4-e5d37911193e
事件的唯一标识符。
trace_status
String
normal
事件的状态。
文档数据库服务(DDS)触发器
- 文档数据库服务DDS示例事件,具体参数解释参考表5。
{ "records": [ { "event_source": "dds", "event_name": "insert", "region": "region", "event_version": "1.0", "dds": { "size_bytes": "100", "token": "{\"_data\": \"825D8C2F4D0000001529295A100474039A3412A64BA89041DC952357FB4446645F696400645D8C2F8E5BECCB6CF5370D6A0004\"}", "full_document": "{\"_id\": {\"$oid\": \"5d8c2f8e5beccb6cf5370d6a\"},\"name\": \"dds\",\"age\": {\"$numberDouble\": \"52.0\"}}", "ns": "{\"db\": \"functiongraph\",\"coll\": \"person\"}" }, "event_source_id": "e6065860-f7b8-4cca-80bd-24ef2a3bb748" } ] }
表5 DDS示例事件参数说明 参数
类型
示例值
描述
region
String
cn-north-1
DDS实例所在区域。
event_version
String
1.0
事件协议的版本。
event_source
String
dds
事件来源。
event_name
String
insert
事件名称。
size_bytes
Int
100
消息的字节数。
token
String
参考示例代码
Base64编码后的数据。
full_document
String
参考示例代码
完整的文件信息。
ns
String
参考示例代码
列名。
event_source_id
String
参考示例代码
事件源唯一标识符。
数据接入服务(DIS)触发器
- 数据接入服务DIS示例事件,具体参数解释参考表6。
{ "ShardID": "shardId-0000000000", "Message": { "next_partition_cursor": "eyJnZXRJdGVyYXRvclBhcmFtIjp7InN0cmVhbS1uYW1lIjoiZGlzLXN3dGVzdCIsInBhcnRpdGlvbi1pZCI6InNoYXJkSWQtMDAwMDAwMDAwMCIsImN1cnNvci10eXBlIjoiVFJJTV9IT1JJWk9OIiwic3RhcnRpbmctc2VxdWVuY2UtbnVtYmVyIjoiNCJ9LCJnZW5lcmF0ZVRpbWVzdGFtcCI6MTUwOTYwNjM5MjE5MX0", "records": [ { "partition_key": "shardId_0000000000", "data": "d2VsY29tZQ==", "sequence_number": "0" }, { "partition_key": "shardId_0000000000", "data": "dXNpbmc=", "sequence_number": "1" }, { "partition_key": "shardId_0000000000", "data": "RnVuY3Rpb25TdGFnZQ==", "sequence_number": "2" }, { "partition_key": "shardId_0000000000", "data": "c2VydmljZQ==", "sequence_number": "3" } ], "millis_behind_latest": "" }, "Tag": "latest", "StreamName": "dis-swtest" }
表6 DIS示例事件参数说明 参数
类型
示例值
描述
ShardID
String
shardId-0000000000
数据下载分区的ID。
next_partition_cursor
String
参考示例代码
下一个分区的游标。
Records
Map
参考示例代码
存储在DIS通道中的数据单元。
partition_key
String
参考示例代码
分区键。
data
String
参考示例代码
数据块,由数据生产者添加到数据通道。
sequence_number
Int
参考示例代码
每个记录的唯一标识符,由DIS服务自动分配。
Tag
String
latest
通道的标签。
StreamName
String
dis-swtest
通道名称。
分布式消息服务 Kafka(KAFKA)触发器/开源Kafka(OPENSOURCEKAFKA)触发器
- Kafka示例事件,具体参数解释参考表7。
{ "event_version": "v1.0", "event_time": 1576737962, "trigger_type": "KAFKA", "region": "region", "instance_id": "81335d56-b9fe-4679-ba95-7030949cc76b", "records": [ { "messages": [ "kafka message1", "kafka message2", "kafka message3", "kafka message4", "kafka message5" ], "topic_id": "topic-test" } ] }
表7 Kafka示例事件参数说明 参数
类型
示例值
描述
event_version
String
v1.0
事件协议的版本。
event_time
String
参考示例代码
事件发生时间。
trigger_type
String
KAFKA
事件类型。
region
String
cn-north-1
Kafka实例所在地域。
instance_id
String
81335d56-b9fe-4679-ba95-7030949cc76b
创建的Kafka实例的唯一标识符。
messages
String
参考示例代码
消息内容。
topic_id
String
topic-test
消息的唯一标识符。
分布式消息服务 RabbitMQ版(RABBITMQ)触发器
- 分布式消息服务RabbitMQ示例事件,具体参数解释参考表8。
{ "event_version": "v1.0", "event_time": 1576737962, "trigger_type": "RABBITMQ", "region": "region", "records": [ { "messages": [ "rabbitmq message1", "rabbitmq message2", "rabbitmq message3", "rabbitmq message4", "rabbitmq message5" ], "instance_id": "81335d56-b9fe-4679-ba95-7030949cc76b", "exchange": "exchange-test" } ] }
云数据库GeminiDB MongoDB触发器
- 云数据库 GeminiDB MongoDB示例事件,具体参数解释参考表9。
{ "records": [ { "event_name": "\"insert\"", "event_version": "1.0", "event_source": "gauss_mongo", "region": "cn-north-xx", "gauss_mongo": { "full_document": "{\"_id\": {\"$oid\":\"5f61de944778db5fcded3f87\"},\"zhangsan\": \"zhangsan\"}", "ns": "{\"db\": \"zhangsan\",\"coll\": \"zhangsan\"}", "size_bytes": "100", "token": "{\"_data\": \"825F61DE940000000129295A1004A2D9AE61206C43A5AF47CAF7C5C00C5946645F696400645F61DE944778DB5FCDED3F870004\"}" }, "event_source_id": "51153d19-2b7d-402c-9a79-757163258a36" } ], "vernier": "{\"_data\": \"825F61DE940000000129295A1004A2D9AE61206C43A5AF47CAF7C5C00C5946645F696400645F61DE944778DB5FCDED3F870004\"}" }
表9 GeminiDB MongoDB示例事件参数说明 参数
类型
示例值
描述
region
String
cn-north-1
GeminiDB实例所在的地域。
event_source
String
gemini_mongo
事件的来源。
event_version
String
1.0
事件协议的版本。
full_document
String
参考示例代码
完整的文件信息。
size_bytes
Int
100
消息的字节数。
token
String
参考示例代码
Base64编码后的数据。
event_source_id
String
参考示例代码
事件源唯一标识符。
vernier
String
参考示例代码
游标。
云数据库GeminiDB DynamoDB触发器
- 云数据库 GeminiDB DynamoDB示例事件,具体参数解释参考表10。
{ "event_time": 1747905781, "trigger_type": "DYNAMODB", "instance_ip": "10.0.0.205", "table_name": "test_052201", "records": [ { "region": "ddbhws", "event_id": "000001747880625259000", "event_name": "INSERT", "sequence_number": "000001747880625259000", "size_bytes": 170, "stream_view_type": "NEW_AND_OLD_IMAGES", "approximate_arrival_timestamp": "2025-05-22T02:23:45.259Z", "keys": { "Title": { "S": "test" }, "Year": { "N": "2025" } }, "old_image": { }, "new_image": { "Plot": { "S": "plot" }, "Rating": { "N": "1" }, "Title": { "S": "test" }, "Year": { "N": "2025" } } }, { "region": "ddbhws", "event_id": "000001747881021099000", "event_name": "MODIFY", "sequence_number": "000001747881021099000", "size_bytes": 323, "stream_view_type": "NEW_AND_OLD_IMAGES", "approximate_arrival_timestamp": "2025-05-22T02:30:21.099Z", "keys": { "Title": { "S": "test" }, "Year": { "N": "2025" } }, "old_image": { "Plot": { "S": "plot" }, "Rating": { "N": "1" }, "Title": { "S": "test" }, "Year": { "N": "2025" } }, "new_image": { "Plot": { "S": "plot" }, "Rating": { "N": "2" }, "Title": { "S": "test" }, "Year": { "N": "2025" } } } ] }
表10 GeminiDB DynamoDB示例事件参数说明 参数
类型
示例值
描述
EventTime
Int
1747905781
触发器拉取完消息时的时间。
TriggerType
String
DYNAMODB
触发器类型。
InstanceIp
String
参考示例代码
DynamoDB的实例IP。
TableName
String
参考示例代码
DynamoDB的表名。
Region
String
参考示例代码
局点信息。
EventId
String
参考示例代码
事件ID。
EventName
String
INSERT | MODIFY | REMOVE
事件类名,枚举示例表示分别为插入,更改,删除。
SequenceNumber
String
参考示例代码
事件序列号。
SizeBytes
Int
100
事件消息大小。
StreamViewType
String
NEW_IMAGE | OLD_IMAGE | NEW_AND_OLD_IMAGES | KEYS_ONLY
记录方式,枚举示例表示分别为新镜像,旧镜像,新旧镜像,仅主键。
ApproximateArrivalTimestamp
String
参考示例代码
事件入库时间。
Keys
Map
参考示例代码
主键。
OldImage
Map
参考示例代码
旧镜像。
NewImage
Map
参考示例代码
新镜像。
- 设备接入服务IoTDA示例事件,具体参数解释参考表11。
{ "resource" : "device", "event" : "create", "event_time" : "20240919T011335Z", "event_time_ms" : "2024-09-19T01:13:35.854Z", "request_id" : "75127474-1a26-4578-8847-3128d6101954", "notify_data" : { "body" : { "app_id" : "3d40caf3ddfc4e83815b54b50f13aad7", "app_name" : "DefaultApp_6439vdv2", "device_id" : "66eb7a0ffa8d9c36870c6892_ttytytytytytyt", "node_id" : "ttytytytytytyt", "gateway_id" : "66eb7a0ffa8d9c36870c6892_ttytytytytytyt", "node_type" : "GATEWAY", "auth_info" : { "auth_type" : "SECRET", "secure_access" : false, "timeout" : 0 }, "product_id" : "66eb7a0ffa8d9c36870c6892", "product_name" : "test", "status" : "INACTIVE", "create_time" : "20240919T011335Z" } } }
表11 IoTDA示例事件参数说明 参数
类型
示例值
描述
resource
string
device
数据来源,包括:设备、设置属性、设备消息、设备消息状态、设备状态、产品、设备异步命令状态、运行日志、批量任务。
event
string
create
触发事件。
event_time
string
20240919T011335Z
字符串格式的事件触发时间。
event_time_ms
string
2024-09-19T01:13:35.854Z
datetime格式的事件触发时间。
request_id
string
75127474-1a26-4578-8847-3128d6101954
请求id。
notify_data
object 参见表12
-
推送消息。
表13 NotifyDataBody 参数
类型
示例值
描述
app_id
string
3d40caf3ddfc4e83815b54b50f13aad7
资源空间ID。
app_name
string
DefaultApp_6439vdv2
资源空间名称。
device_id
string
66eb7a0ffa8d9c36870c6892_ttytytytytytyt
设备ID,用于唯一标识一个设备。在注册设备时直接指定,或者由物联网平台分配获得。由物联网平台分配时,生成规则为"product_id" + "_" + "node_id"拼接而成。
最大长度:256
node_id
string
ttytytytytytyt
设备标识码,通常使用IMEI、MAC地址或Serial No作为nodeId。
最大长度:64
gateway_id
string
66eb7a0ffa8d9c36870c6892_ttytytytytytyt
网关ID,用于标识设备所属的父设备,即父设备的设备ID。当设备是直连设备时,gateway_id与设备的device_id一致。当设备是非直连设备时,gateway_id为设备所关联的父设备的device_id。
node_type
string
GATEWAY
设备节点类型。
product_id
string
66eb7a0ffa8d9c36870c6892
设备关联的产品ID,用于唯一标识一个产品模型。
product_name
string
test
设备关联的产品名称。
status
string
INACTIVE
设备的状态。
- ONLINE:设备在线
- OFFLINE:设备离线
- ABNORMAL:设备异常
- INACTIVE:设备未激活
- FREEZED:设备冻结
create_time
string
20240919T011335Z
在物联网平台注册设备的时间。格式:yyyyMMdd'T'HHmmss'Z',如20151212T121212Z。
auth_info
Object参见表14
-
设备的接入认证信息。
表14 AuthInfo 参数
类型
示例值
描述
auth_type
string
SECRET
鉴权类型。支持密钥认证接入(SECRET)和证书认证接入(CERTIFICATES)两种方式。使用密钥认证接入方式(SECRET)填写secret字段,使用证书认证接入方式(CERTIFICATES)填写fingerprint字段,不填写auth_type默认为密钥认证接入方式(SECRET)。
secure_access
Boolean
false
指设备是否通过安全协议方式接入,默认值为true。
- true:通过安全协议方式接入。
- false:通过非安全协议方式接入。
timeout
Integer
0
设备验证码的有效时间,单位:秒,默认值:0。若设备在有效时间内未接入物联网平台并激活,则平台会删除该设备的注册信息。若设置为“0”,则表示设备验证码不会失效(建议填写为“0”)。注意:只有注册设备接口或者修改设备接口修改timeout时返回该参数。
最小值:0
最大值:2147483647
缺省值:0
具体的设备相关消息请以IoTDA官网为准,例如设备添加:设备添加通知。
云日志服务(LTS)触发器
- 云日志服务LTS示例事件,具体参数解释参考表15。
{ "lts": { "data": "eyJsb2dzIjoiW3tcIm1lc3NhZ2VcIjpcIjIwMTgtMDgtMDgvMDg6MDg6MDggW1dSTl0gW3Rlc3QuZ286MDhdVGhpcyBpcyBhIHRlc3QgbWVzc2FnZS5cIixcInRpbWVcIjoxNTMwMDA5NjUzMDU5LFwiaG9zdF9uYW1lXCI6XCJlY3MtdGVzdFwiLFwiaXBcIjpcIjE5Mi4xNjguMS4xXCIsXCJwYXRoXCI6XCJ2YXIvbG9nL3Rlc3QubG9nXCIsXCJsb2dfdWlkXCI6XCI2NjNkNjkzMC03OTJkLTExZTgtOGIwOC0yODZlZDQ4OGNlNzBcIixcImxpbmVfbm9cIjoxfV0iLCJvd25lciI6IjYyODBlMTcwYmQ5MzRmNjBhNGQ4NTFjZjVjYTA1MTI5IiwibG9nX2dyb3VwX2lkIjoiOTdhOWQyODQtNDQ0OC0xMWU4LThmYTQtMjg2ZWQ0ODhjZTcwIiwibG9nX3RvcGljX2lkIjoiMWE5Njc1YTctNzg0ZC0xMWU4LTlmNzAtMjg2ZWQ0ODhjZTcwIn0=" } }
消息通知服务(SMN)触发器
- 消息通知服务SMN示例事件,具体参数解释参考表16。
{ "record": [ { "event_version": "1.0", "smn": { "topic_urn": "topicUrn", "timestamp": "2018-01-09T07:11:40Z", "message_attributes": null, "message": "this is smn message content", "type": "notification", "message_id": "a51671f77d4a479cacb09e2cd591a983", "subject": "this is smn message subject" }, "event_subscription_urn": "functionUrn", "event_source": "smn" } ], "functionname": "test", "requestId": "7c307f6a-cf68-4e65-8be0-4c77405a1b2c", "timestamp": "Tue Jan 09 2018 15:11:40 GMT+0800 (CST)" }
表16 SMN示例事件参数说明 参数
类型
示例值
描述
event_version
String
1.0
事件协议的版本。
topic_urn
String
参考示例代码
SMN事件唯一编号,由SMN服务生成。
type
String
notification
事件的类型。
requestId
String
参考示例代码
请求ID,由FunctionGraph生成。
每个请求的ID取值唯一。
message_id
String
参考示例代码
消息ID,由SMN服务生成。
每条消息的ID取值唯一。
message
String
this is smn message content
消息内容。
event_source
String
smn
事件源。
event_subscription_urn
String
参考示例代码
函数订阅的URN,取值唯一,可在函数详情页获取。
timestamp
String
Tue Jan 09 2018 15:11:40 GMT+0800 (CST)
事件发生的时间。
对象存储服务(OBS)触发器
- 对象存储服务OBS示例事件,具体参数解释参考表17。
{ "Records": [ { "eventVersion": "2.0", "eventTime": "2018-01-09T07:50:50.028Z", "requestParameters": { "sourceIPAddress": "103.218.216.125" }, "s3": { "configurationId": "UK1DGFPYUKUZFHNQ00000160CC0B471D101ED30CE24DF4DB", "object": { "eTag": "9d377b10ce778c4938b3c7e2c63a229a", "sequencer": "00000000160D9E681484D6B4C0000000", "key": "job.png", "size": 777835 }, "bucket": { "arn": "arn:aws:s3:::syj-input2", "name": "functionstorage-template", "ownerIdentity": { "PrincipalId": "0ed1b73473f24134a478962e631651eb" } } }, "Region": "{region}", "eventName": "ObjectCreated:Post", "userIdentity": { "principalId": "9bf43789b1ff4b679040f35cc4f0dc05" } } ] }
表17 OBS示例事件参数说明 参数
类型
示例值
描述
eventVersion
String
2.0
事件协议的版本
eventTime
String
2018-01-09T07:50:50.028Z
事件产生的时间
使用ISO-8601标准时间格式
sourceIPAddress
String
103.218.216.125
请求的源IP地址
s3
Map
参考示例代码
OBS事件内容
object
Map
参考示例代码
object参数内容
bucket
Map
参考示例代码
bucket参数内容
arn
String
arn:aws:s3:::syj-input2
Bucket的唯一标识符
ownerIdentity
Map
参考示例代码
创建Bucket的用户ID
Region
String
cn-north-1
Bucket所在的地域
eventName
String
ObjectCreated:Post
配置的触发函数的事件
userIdentity
Map
参考示例代码
请求发起者的华为云账号ID
EventGrid触发器
- 事件网格服务EventGrid示例事件,具体参数解释参考表18。
RocketMQ自定义事件源:
{ "datacontenttype": "application/json", "data": { "context": "yyyyy" }, "subject": "ROCKETMQ:region:domainId/projectId:ROCKETMQ:eventSourceName", "specversion": "1.0", "id": "016d5bd3-6231-4e9e-86ef-e451a070d598", "source": "eventSourceName", "time": "2023-04-07T11:51:10Z", "type": "ROCKETMQ:CloudTrace:RocketmqCall" }
RabbitMQ自定义事件源:
{ "datacontenttype": "application/json", "data": { "context": "yyyyy" }, "subject": "RABBITMQ:region:domainId/projectId:RABBITMQ:eventSourceName", "specversion": "1.0", "id": "016d5bd3-6231-4e9e-86ef-e451a070d598", "source": "eventSourceName", "time": "2023-04-07T11:51:10Z", "type": "RABBITMQ:CloudTrace:RabbitmqCall" }
OBS应用事件源:{ "channel_id":"b65779ed-d9d0-4a6c-b312-c767226964cf", "description":"", "name":"subscription-xeak", "sources":[ { "id":null, "name":"HC.OBS.DWR", "detail":{ "bucket":"eventbucket", "objectKeyEncode":true }, "filter":{ "source":[ { "op":"StringIn", "values":[ "HC.OBS.DWR" ] } ], "type":[ { "op":"StringIn", "values":[ "OBS:DWR:ObjectCreated:PUT", "OBS:DWR:ObjectCreated:POST" ] } ], "subject":{ "and":[ { "op":"StringStartsWith", "values":[ "/ddd" ] } ] }, "data":{ "obs":{ "bucket":{ "name":[ { "op":"StringIn", "values":[ "output-your" ] } ] } } } }, "provider_type":"OFFICIAL" } ], "targets":[ { "id":null, "name":"HC.FunctionGraph", "detail":{ "urn":"urn:fss:cn-north-7:c53626012ba84727b938ca8bf03108ef:function:A-nodejs-lqz:pylog:latest", "agency_name":"EG_AGENCY" }, "dead_letter_queue":null, "provider_type":"OFFICIAL", "transform":{ "type":"ORIGINAL", "value":"" } } ] }