函数计算每个类型的触发器,其event内容和结构都会根据触发事件的具体情况有所不同,函数在被调用时可以根据event中的信息来执行相应的业务逻辑处理。
使用说明
触发器触发事件,传递到函数的Event参数需要您自行在代码中解析才能使用。关于解析Event参数的代码示例,请参见示例一:解析JSON格式参数。
HTTP触发器
HTTP触发器有别于其他触发器,函数签名是请求(Request)和响应(Response)对象,而不是事件(event)对象。所以HTTP触发器没有事件格式。具体信息,请参见配置HTTP触发器并使用HTTP触发。
定时触发器
{
    "triggerTime":"2023-12-26T07:49:00Z",
    "triggerName":"timer-trigger",
    "payload":"awesome-fc"
}            参数  | 类型  | 示例值  | 描述  | 
triggerTime  | String  | 2023-12-26T07:49:00Z  | 函数被触发的时间。  | 
triggerName  | String  | timer-trigger  | 定时触发器的名称。  | 
payload  | String  | awesome-fc  | 您在触发器配置里输入的自定义参数,即触发消息的值。  | 
OSS触发器
{
    "events": [
        {
            "eventName": "ObjectCreated:PutObject",
            "eventSource": "acs:oss",
            "eventTime": "2022-08-13T06:45:43.000Z",
            "eventVersion": "1.0",
            "oss": {
                "bucket": {
                    "arn": "acs:oss:cn-hangzhou:123456789:testbucket",
                    "name": "testbucket",
                    "ownerIdentity": "164901546557****"
                },
                "object": {
                    "deltaSize": 122539,
                    "eTag": "688A7BF4F233DC9C88A80BF985AB****",
                    "key": "source/a.png",
                    "size": 122539
                },
                "ossSchemaVersion": "1.0",
                "ruleId": "9adac8e253828f4f7c0466d941fa3db81161****"
            },
            "region": "cn-hangzhou",
            "requestParameters": {
                "sourceIPAddress": "140.205.XX.XX"
            },
            "responseElements": {
                "requestId": "58F9FF2D3DF792092E12044C"
            },
            "userIdentity": {
                "principalId": "164901546557****"
            }
        }
    ]
}event参数中不同属性字段的解释如下表所示。
参数  | 类型  | 示例值  | 描述  | 
eventName  | String  | ObjectCreated:PutObject  | 事件类型。  | 
eventSource  | String  | acs:oss  | 事件源,固定为  | 
eventTime  | String  | 2022-08-13T06:45:43.000Z  | 事件产生的时间。使用ISO-8601标准时间格式。  | 
eventVersion  | String  | 1.0  | 事件协议的版本。  | 
oss  | Map  | OSS事件内容。  | |
bucket  | Map  | bucket参数内容。  | |
name  | String  | testbucket  | Bucket的名称。  | 
arn  | String  | acs:oss:cn-hangzhou:123456789:testbucket  | Bucket的唯一标识符。  | 
ownerIdentity  | String  | 164901546557****  | 创建Bucket的用户ID。  | 
object  | Map  | object参数内容。  | |
size  | Int  | 122539  | object的大小。单位:Byte。  | 
deltaSize  | Int  | 122539  | object的大小变化量。单位:Byte。 
  | 
eTag  | String  | 688A7BF4F233DC9C88A80BF985AB****  | Object的标签。  | 
key  | String  | source/a.png  | Object的名称。  | 
ossSchemaVersion  | String  | 1.0  | OSS模式的版本号。  | 
ruleId  | String  | 9adac8e253828f4f7c0466d941fa3db81161****  | 事件匹配的规则ID。  | 
region  | String  | cn-hangzhou  | Bucket所在的地域。  | 
requestParameters  | Map  | 请求参数。  | |
sourceIPAddress  | String  | 140.205.XX.XX  | 请求的源IP地址。  | 
responseElements  | Map  | 响应元素。  | |
requestId  | String  | 58F9FF2D3DF792092E12044C  | 请求对应的Request ID。  | 
userIdentity  | Map  | 用户属性。  | |
principalId  | String  | 164901546557****  | 请求发起者的阿里云账号ID。  | 
SLS触发器
event是函数计算的入口参数。具体格式如下:
{
    "parameter": {},
    "source": {
        "endpoint": "http://cn-hangzhou-intranet.log.aliyuncs.com",
        "projectName": "aliyun-fc-cn-hangzhou-2238f0df-a742-524f-9f90-976ba457****",
        "logstoreName": "function-log",
        "shardId": 0,
        "beginCursor": "MTUyOTQ4MDIwOTY1NTk3ODQ2Mw==",
        "endCursor": "MTUyOTQ4MDIwOTY1NTk3ODQ2NA=="
    },
    "jobName": "1f7043ced683de1a4e3d8d70b5a412843d81****",
    "taskId": "c2691505-38da-4d1b-998a-f1d4bb8c****",
    "cursorTime": 1529486425
}                       参数  | 描述  | 本文示例  | 
parameter  | 您配置触发器时填写的调用参数的值。  | 无。  | 
source  | 设置函数读取的日志块信息。 
  |  | 
jobName  | 日志服务ETL Job名字,函数配置的SLS触发器对应一个日志服务的ETL Job。  | 1f7043ced683de1a4e3d8d70b5a412843d81****  | 
taskId  | 对于ETL Job而言,taskId是一个确定性的函数调用标识。  | c2691505-38da-4d1b-998a-f1d4bb8c****  | 
cursorTime  | 最后一条日志到达日志服务端的Unix时间戳,单位:秒。  | 1529486425  | 
CDN触发器
event是函数计算的入口参数,具体格式如下。其中,对于不同的CDN事件类型,eventParameter中包含的键值对不同。
LogFileCreated事件的event示例。
替换
filePath为您CDN日志的路径,或任何测试文件。{ "events": [ { "eventName": "LogFileCreated", "eventSource": "cdn", "region": "cn-hangzhou", "eventVersion": "1.0.0", "eventTime": "2018-06-14T15:31:49+08:00", "traceId": "c6459282-6a4d-4413-894c-e4ea3968****", "userIdentity": { "aliUid": "164901546557****" }, "resource": { "domain": "example.com" }, "eventParameter": { "domain": "example.com", "endTime": 1528959900, "fileSize": 1788115, "filePath": "http://cdnlog.cn-hangzhou.oss.aliyun-inc.com/www.aliyun.com/2017_12_27/www.aliyun.com_2017_12_27_0800_0900.gz?OSSAccessKeyId=xxxx&Expires=xxxx&Signature=xxxx", "startTime": 1528959600 } } ] }event参数中不同属性字段的解释如下表所示。
参数
类型
示例值
描述
eventName
String
LogFileCreated
事件类型。
eventSource
String
cdn
事件源名称。
region
String
cn-hangzhou
CDN所在地域,默认为cn-hangzhou。
eventVersion
String
1.0.0
事件触发版本。
eventTime
String
2018-06-14T15:31:49+08:00
事件发生时间。
traceId
String
c6459282-6a4d-4413-894c-e4ea3968****
事件源传递的ID,用于排查问题。
userIdentity
Map
用户属性。
aliUid
String
164901546557****
阿里云账号ID。
resource
Map
资源信息。
domain
String
example.com
域名。
eventParameter
Map
事件参数。
domain
String
example.com
域名。
endTime
String
1528959900
日志文件的结束时间。
fileSize
String
1788115
日志文件大小。
filePath
String
http://cdnlog.cn-hangzhou.oss.aliyun-inc.com/www.aliyun.com/2017_12_27/www.aliyun.com_2017_12_27_0800_0900.gz?OSSAccessKeyId=xxxx&Expires=xxxx&Signature=xxxx
日志文件地址。
startTime
String
1528959600
日志文件的起始时间。
CachedObjectsRefreshed和CachedObjectsPushed事件的event示例。
{ "events": [ { "eventName": "CachedObjectsRefreshed", "eventVersion": "1.0.0", "eventSource": "cdn", "region": "cn-hangzhou", "eventTime": "2018-03-16T14:19:55+08:00", "traceId": "cf89e5a8-7d59-4bb5-a33e-4c3d08e2****", "resource": { "domain": "example.com" }, "eventParameter": { "objectPath": [ "/2018/03/16/13/33b430c57e7.mp4", "/2018/03/16/14/4ff6b9bd54d.mp4" ], "createTime": 1521180769, "domain": "example.com", "completeTime": 1521180777, "objectType": "File", "taskId": 2089687230 }, "userIdentity": { "aliUid": "164901546557****" } } ] }event参数中不同属性字段的解释如下表所示。
参数
类型
示例值
描述
eventName
String
CachedObjectsRefreshed
事件类型。
eventSource
String
cdn
事件源名称。
region
String
cn-hangzhou
CDN所在地域,默认为cn-hangzhou。
eventVersion
String
1.0.0
事件触发版本。
eventTime
String
2018-06-14T15:31:49+08:00
事件发生时间。
traceId
String
c6459282-6a4d-4413-894c-e4ea3968****
事件源传递的ID,用于排查问题。
resource
Map
资源信息。
domain
String
example.com
域名。
eventParameter
Map
事件参数。
objectPath
String
/2018/03/16/13/33b430c57e7.mp4
资源标识。
createTime
String
1521180769
刷新开始时间。
domain
String
example.com
域名。
completeTime
String
1521180777
刷新结束时间。
objectType
String
File
刷新类型,取值说明如下:
File:文件。
Directory:文件夹。
taskId
String
2089687230
资源刷新任务ID。
userIdentity
Map
用户属性。
aliUid
String
164901546557****
阿里云账号ID。
CdnDomainStarted和CdnDomainStopped事件的event示例。
{ "events": [ { "eventName": "CdnDomainStarted", "eventVersion": "1.0.0", "eventSource": "cdn", "region": "cn-hangzhou", "eventTime": "2018-03-16T14:19:55+08:00", "traceId": "cf89e5a8-7d59-4bb5-a33e-4c3d08e2****", "resource": { "domain": "example.com" }, "eventParameter": { "domain": "example.com", "status": "online" }, "userIdentity": { "aliUid": "164901546557****" } } ] }event参数中不同属性字段的解释如下表所示。
参数
类型
示例值
描述
eventName
String
CdnDomainStarted
事件类型。
eventSource
String
cdn
事件源名称。
region
String
cn-hangzhou
CDN所在地域,默认为cn-hangzhou。
eventVersion
String
1.0.0
事件触发版本。
eventTime
String
2018-06-14T15:31:49+08:00
事件发生时间。
traceId
String
c6459282-6a4d-4413-894c-e4ea3968****
事件源传递的ID,用于排查问题。
resource
Map
资源信息。
domain
String
example.com
域名。
eventParameter
Map
事件参数。
domain
String
example.com
域名。
status
String
online
域名状态。
userIdentity
Map
用户属性。
aliUid
String
164901546557****
阿里云账号ID。
CdnDomainAdded和CdnDomainDeleted事件的event示例。
{ "events": [ { "eventName": "CdnDomainAdded", "eventVersion": "1.0.0", "eventSource": "cdn", "region": "cn-hangzhou", "eventTime": "2018-03-16T14:19:55+08:00", "traceId": "cf89e5a8-7d59-4bb5-a33e-4c3d08e2****", "resource": { "domain": "example.com" }, "eventParameter": { "domain": "example.com" }, "userIdentity": { "aliUid": "164901546557****" } } ] }event参数中不同属性字段的解释如下表所示。
参数
类型
示例值
描述
eventName
String
CdnDomainAdded
事件类型。
eventSource
String
cdn
事件源名称。
region
String
cn-hangzhou
CDN所在地域,默认为cn-hangzhou。
eventVersion
String
1.0.0
事件触发版本。
eventTime
String
2018-06-14T15:31:49+08:00
事件发生时间。
traceId
String
c6459282-6a4d-4413-894c-e4ea3968****
事件源传递的ID,用于排查问题。
resource
Map
资源信息。
domain
String
example.com
域名。
eventParameter
Map
事件参数。
domain
String
example.com
域名。
userIdentity
Map
用户属性。
aliUid
String
164901546557****
阿里云账号ID。
Tablestore触发器
{
    "Version": "Sync-v1",
    "Records": [
        {
            "Type": "PutRow",
            "Info": {
                "Timestamp": 1506416585740836
            },
            "PrimaryKey": [
                {
                    "ColumnName": "pk_0",
                    "Value": 1506416585881590900
                },
                {
                    "ColumnName": "pk_1",
                    "Value": "2017-09-26 17:03:05.8815909 +0800 CST"
                },
                {
                    "ColumnName": "pk_2",
                    "Value": 1506416585741000
                }
            ],
            "Columns": [
                {
                    "Type": "Put",
                    "ColumnName": "attr_0",
                    "Value": "hello_table_store",
                    "Timestamp": 1506416585741
                },
                {
                    "Type": "Put",
                    "ColumnName": "attr_1",
                    "Value": 1506416585881590900,
                    "Timestamp": 1506416585741
                }
            ]
        }
    ]
}event参数中不同属性字段的解释如下表所示。
参数  | 描述  | 
Version  | Payload版本号。示例如Sync-v1。类型为String。  | 
Records  | 数据表中的增量数据行数组。包含如下内部成员: 
  | 
PrimaryKey  | 主键列数组。包含如下内部成员: 
  | 
Columns  | 属性列数组。包括如下内部成员: 
  | 
MNS主题触发器
创建触发器时,若event格式设置为STREAM。
当消息中不含消息属性(MessageAttributes)时,event格式如下。
说明当消息中不含消息属性(MessageAttributes)时,event的内容格式为JSON字符串。
# 消息正文。 'hello topic'当消息中含有消息属性(MessageAttributes)时,event格式如下。
说明event的内容中包含MessageAttributes相关的键值对。更多信息,请参见PublishMessage。
{ "body": "hello topic", "attrs": { "Extend": "{\\"key\\":\\"value\\"}" } }
创建触发器时,若event格式设置为JSON。
当消息中不含消息属性(MessageAttributes)时,event格式如下。
{ "TopicOwner": "118620210433****", "Message": "hello topic", "Subscriber": "118620210433****", "PublishTime": 1550216480040, "SubscriptionName": "test-fc-subscribe", "MessageMD5": "BA4BA9B48AC81F0F9C66F6C909C3****", "TopicName": "Mytopic", "MessageId": "2F5B3C082B923D4EAC694B76D928****" }当消息中含有消息属性(MessageAttributes)时,event格式如下。
说明event的内容中包含MessageAttributes相关的键值对。更多信息,请参见PublishMessage。
{ "key": "value", "TopicOwner": "118620210433****", "Message": "hello topic", "Subscriber": "118620210433****", "PublishTime": 1550216302888, "SubscriptionName": "test-fc-subscribe", "MessageMD5": "BA4BA9B48AC81F0F9C66F6C909C3****", "TopicName": "Mytopic", "MessageId": "2F5B3C281B283D4EAC694B742528****" }
MNS队列触发器
事件模式的event格式如下所示。
{
    "id":"c2g71017-6f65-fhcf-a814-a396fc8d****",
    "source":"MNS-Function-mnstrigger",
    "specversion":"1.0",
    "type":"mns:Queue:SendMessage",
    "datacontenttype":"application/json; charset=utf-8",
    "subject":"acs:mns:cn-hangzhou:164901546557****:queues/zeus",
    "time":"2021-04-08T06:28:17.093Z",
    "aliyunaccountid":"164901546557****",
    "aliyunpublishtime":"2021-10-15T07:06:34.028Z",
    "aliyunoriginalaccountid":"164901546557****",
    "aliyuneventbusname":"MNS-Function-mnstrigger",
    "aliyunregionid":"cn-chengdu",
    "aliyunpublishaddr":"42.120.XX.XX",
    "data":{
        "requestId":"606EA3074344430D4C81****",
        "messageId":"C6DB60D1574661357FA227277445****",
        "messageBody":"TEST"
    }
}事件流模式的event格式如下所示。
[
    {
    "id":"c2g71017-6f65-fhcf-a814-a396fc8d****",
    "source":"MNS-Function-mnstrigger",
    "specversion":"1.0",
    "type":"mns:Queue:SendMessage",
    "datacontenttype":"application/json; charset=utf-8",
    "subject":"acs:mns:cn-hangzhou:164901546557****:queues/zeus",
    "time":"2021-04-08T06:28:17.093Z",
    "aliyunaccountid":"164901546557****",
    "aliyunpublishtime":"2021-10-15T07:06:34.028Z",
    "aliyunoriginalaccountid":"164901546557****",
    "aliyuneventbusname":"MNS-Function-mnstrigger",
    "aliyunregionid":"cn-chengdu",
    "aliyunpublishaddr":"42.120.XX.XX",
    "data":{
        "requestId":"606EA3074344430D4C81****",
        "messageId":"C6DB60D1574661357FA227277445****",
        "messageBody":"TEST"
    }
    },
    {
    "id":"d2g71017-6f65-fhcf-a814-a396fc8d****",
    "source":"MNS-Function-mnstrigger",
    "specversion":"1.0",
    "type":"mns:Queue:SendMessage",
    "datacontenttype":"application/json; charset=utf-8",
    "subject":"acs:mns:cn-hangzhou:164901546557****:queues/zeus",
    "time":"2021-04-08T06:28:17.093Z",
    "aliyunaccountid":"164901546557****",
    "aliyunpublishtime":"2021-10-15T07:06:34.028Z",
    "aliyunoriginalaccountid":"164901546557****",
    "aliyuneventbusname":"MNS-Function-mnstrigger",
    "aliyunregionid":"cn-chengdu",
    "aliyunpublishaddr":"42.120.XX.XX",
    "data":{
        "requestId":"606EA3074344430D4C81****",
        "messageId":"C6DB60D1574661357FA227277445****",
        "messageBody":"TEST"
    }
    }
]data字段包含的参数解释如下表所示。关于CloudEvents规范中定义的参数解释,请参见事件概述。
参数  | 类型  | 示例值  | 描述  | 
requestId  | String  | 606EA3074344430D4C81****  | 请求ID。每个请求的ID取值唯一。  | 
messageId  | String  | C6DB60D1574661357FA227277445****  | 消息ID。每条消息的ID取值唯一。  | 
messageBody  | String  | TEST  | 消息内容。  | 
RocketMQ触发器
event格式如下所示。{
    "id":"94ebc15f-f0db-4bbe-acce-56fb72fb****",
    "source":"RocketMQ-Function-rocketmq-trigger",
    "specversion":"1.0",
    "type":"mq:Topic:SendMessage",
    "datacontenttype":"application/json; charset=utf-8",
    "subject":"acs:mq:cn-hangzhou:164901546557****:MQ_INST_164901546557****_BXhFHryi%TopicName",
    "time":"2021-04-08T06:01:20.766Z",
    "aliyunaccountid":"164901546557****",
    "aliyunpublishtime":"2021-10-15T02:05:16.791Z",
    "aliyunoriginalaccountid":"164901546557****",
    "aliyuneventbusname":"RocketMQ-Function-rocketmq-trigger",
    "aliyunregionid":"cn-chengdu",
    "aliyunpublishaddr":"42.120.XX.XX",
    "data":{
        "topic":"TopicName",
        "systemProperties":{
            "MIN_OFFSET":"0",
            "TRACE_ON":"true",
            "MAX_OFFSET":"8",
            "MSG_REGION":"cn-hangzhou",
            "KEYS":"systemProperties.KEYS",
            "CONSUME_START_TIME":1628577790396,
            "TAGS":"systemProperties.TAGS",
            "INSTANCE_ID":"MQ_INST_164901546557****_BXhFHryi"
        },
        "userProperties":{
        },
        "body":"TEST"
    }
}event格式如下所示。[
    {
    "id":"94ebc15f-f0db-4bbe-acce-56fb72fb****",
    "source":"RocketMQ-Function-rocketmq-trigger",
    "specversion":"1.0",
    "type":"mq:Topic:SendMessage",
    "datacontenttype":"application/json; charset=utf-8",
    "subject":"acs:mq:cn-hangzhou:164901546557****:MQ_INST_164901546557****_BXhFHryi%TopicName",
    "time":"2021-04-08T06:01:20.766Z",
    "aliyunaccountid":"164901546557****",
    "aliyunpublishtime":"2021-10-15T02:05:16.791Z",
    "aliyunoriginalaccountid":"164901546557****",
    "aliyuneventbusname":"RocketMQ-Function-rocketmq-trigger",
    "aliyunregionid":"cn-chengdu",
    "aliyunpublishaddr":"42.120.XX.XX",
    "data":{
        "topic":"TopicName",
        "systemProperties":{
            "MIN_OFFSET":"0",
            "TRACE_ON":"true",
            "MAX_OFFSET":"8",
            "MSG_REGION":"cn-hangzhou",
            "KEYS":"systemProperties.KEYS",
            "CONSUME_START_TIME":1628577790396,
            "TAGS":"systemProperties.TAGS",
            "INSTANCE_ID":"MQ_INST_164901546557****_BXhFHryi"
        },
        "userProperties":{
        },
        "body":"TEST"
    }
    },
    {
    "id":"94ebc15f-f0db-4bbe-acce-56fb72fb****",
    "source":"RocketMQ-Function-rocketmq-trigger",
    "specversion":"1.0",
    "type":"mq:Topic:SendMessage",
    "datacontenttype":"application/json; charset=utf-8",
    "subject":"acs:mq:cn-hangzhou:164901546557****:MQ_INST_164901546557****_BXhFHryi%TopicName",
    "time":"2021-04-08T06:01:20.766Z",
    "aliyunaccountid":"164901546557****",
    "aliyunpublishtime":"2021-10-15T02:05:16.791Z",
    "aliyunoriginalaccountid":"164901546557****",
    "aliyuneventbusname":"RocketMQ-Function-rocketmq-trigger",
    "aliyunregionid":"cn-chengdu",
    "aliyunpublishaddr":"42.120.XX.XX",
    "data":{
        "topic":"TopicName",
        "systemProperties":{
            "MIN_OFFSET":"0",
            "TRACE_ON":"true",
            "MAX_OFFSET":"8",
            "MSG_REGION":"cn-hangzhou",
            "KEYS":"systemProperties.KEYS",
            "CONSUME_START_TIME":1628577790396,
            "TAGS":"systemProperties.TAGS",
            "INSTANCE_ID":"MQ_INST_164901546557****_BXhFHryi"
        },
        "userProperties":{
        },
        "body":"TEST"
    }
    }
]参数  | 类型  | 示例值  | 描述  | 
topic  | String  | TopicName  | Topic名称。  | 
systemProperties  | Map  | 系统属性。  | |
MIN_OFFSET  | Int  | 0  | 最低位点。  | 
TRACE_ON  | Boolean  | true  | 是否有消息轨迹。取值说明如下: 
  | 
MAX_OFFSET  | Int  | 8  | 最高位点。  | 
MSG_REGION  | String  | cn-hangzhou  | 发送消息的地域。  | 
KEYS  | String  | systemProperties.KEYS  | 过滤属性。  | 
CONSUME_START_TIME  | Long  | 1628577790396  | 开始消费时间。单位:毫秒。  | 
UNIQ_KEY  | String  | AC14C305069E1B28CDFA3181CDA2****  | 消息唯一键。  | 
TAGS  | String  | systemProperties.TAGS  | 过滤属性。  | 
INSTANCE_ID  | String  | MQ_INST_123456789098****_BXhFHryi  | 实例ID。  | 
userProperties  | Map  | 无  | 用户属性。  | 
body  | String  | TEST  | 消息内容。  | 
RabbitMQ触发器
event格式如下所示。  {
    "id":"bj694332-4cj1-389e-9d8c-b137h30b****",
    "source":"RabbitMQ-Function-rabbitmq-trigger",
    "specversion":"1.0",
    "type":"amqp:Queue:SendMessage",
    "datacontenttype":"application/json;charset=utf-8",
    "subject":"acs:amqp:cn-hangzhou:164901546557****:/instances/amqp-cn-tl32e756****/vhosts/eb-connect/queues/housekeeping",
    "time":"2021-08-12T06:56:40.709Z",
    "aliyunaccountid":"164901546557****",
    "aliyunpublishtime":"2021-10-15T08:58:55.140Z",
    "aliyunoriginalaccountid":"164901546557****",
    "aliyuneventbusname":"RabbitMQ-Function-rabbitmq-trigger",
    "aliyunregionid":"cn-chengdu",
    "aliyunpublishaddr":"42.120.XX.XX",
    "data":{
        "envelope":{
            "deliveryTag":98,
            "exchange":"",
            "redeliver":false,
            "routingKey":"housekeeping"
        },
        "body":{
            "Hello":"RabbitMQ"
        },
        "props":{
            "contentEncoding":"UTF-8",
            "messageId":"f7622d51-e198-41de-a072-77c1ead7****"
        }
    }
}event格式如下所示。[
      {
    "id":"bj694332-4cj1-389e-9d8c-b137h30b****",
    "source":"RabbitMQ-Function-rabbitmq-trigger",
    "specversion":"1.0",
    "type":"amqp:Queue:SendMessage",
    "datacontenttype":"application/json;charset=utf-8",
    "subject":"acs:amqp:cn-hangzhou:164901546557****:/instances/amqp-cn-tl32e756****/vhosts/eb-connect/queues/housekeeping",
    "time":"2021-08-12T06:56:40.709Z",
    "aliyunaccountid":"164901546557****",
    "aliyunpublishtime":"2021-10-15T08:58:55.140Z",
    "aliyunoriginalaccountid":"164901546557****",
    "aliyuneventbusname":"RabbitMQ-Function-rabbitmq-trigger",
    "aliyunregionid":"cn-chengdu",
    "aliyunpublishaddr":"42.120.XX.XX",
    "data":{
        "envelope":{
            "deliveryTag":98,
            "exchange":"",
            "redeliver":false,
            "routingKey":"housekeeping"
        },
        "body":{
            "Hello":"RabbitMQ"
        },
        "props":{
            "contentEncoding":"UTF-8",
            "messageId":"f7622d51-e198-41de-a072-77c1ead7****"
        }
    }
    },
    {
    "id":"bj694332-4cj1-389e-9d8c-b137h30b****",
    "source":"RabbitMQ-Function-rabbitmq-trigger",
    "specversion":"1.0",
    "type":"amqp:Queue:SendMessage",
    "datacontenttype":"application/json;charset=utf-8",
    "subject":"acs:amqp:cn-hangzhou:164901546557****:/instances/amqp-cn-tl32e756****/vhosts/eb-connect/queues/housekeeping",
    "time":"2021-08-12T06:56:40.709Z",
    "aliyunaccountid":"164901546557****",
    "aliyunpublishtime":"2021-10-15T08:58:55.140Z",
    "aliyunoriginalaccountid":"164901546557****",
    "aliyuneventbusname":"RabbitMQ-Function-rabbitmq-trigger",
    "aliyunregionid":"cn-chengdu",
    "aliyunpublishaddr":"42.120.XX.XX",
    "data":{
        "envelope":{
            "deliveryTag":98,
            "exchange":"",
            "redeliver":false,
            "routingKey":"housekeeping"
        },
        "body":{
            "Hello":"RabbitMQ"
        },
        "props":{
            "contentEncoding":"UTF-8",
            "messageId":"f7622d51-e198-41de-a072-77c1ead7****"
        }
    }
    }
]参数  | 类型  | 示例值  | 描述  | 
body  | Map  | 消息内容。  | |
Hello  | String  | EventBridge  | 用户数据。  | 
props  | Map  | 消息属性。  | |
contentEncoding  | String  | utf-8  | 消息内容编码。  | 
messageId  | String  | f7622d51-e198-41de-a072-77c1ead7****  | 消息ID。每条消息的ID取值唯一。  | 
envelope  | Map  | 消息的envelope信息。  | |
deliveryTag  | Int  | 98  | 消息的Tag。  | 
exchange  | String  | 无  | 消息的Exchange。  | 
redeliver  | Boolean  | false  | 是否支持重发消息。取值说明如下: 
  | 
routingKey  | String  | housekeeping  | 消息的路由规则。  | 
Kafka触发器
[
    {
        "specversion":"1.0",
        "id":"8e215af8-ca18-4249-8645-f96c1026****",
        "source":"acs:alikafka",
        "type":"alikafka:Topic:Message",
        "subject":"acs:alikafka_pre-cn-i7m2t7t1****:topic:mytopic",
        "datacontenttype":"application/json; charset=utf-8",
        "time":"2022-06-23T02:49:51.589Z",
        "aliyunaccountid":"164901546557****",
        "data":{
            "topic":"****",
            "partition":7,
            "offset":25,
            "timestamp":1655952591589,
            "headers":{
                "headers":[
                ],
                "isReadOnly":false
            },
            "key":"keytest",
            "value":"hello kafka msg"
        }
    },
    {
        "specversion":"1.0",
        "id":"8e215af8-ca18-4249-8645-f96c1026****",
        "source":"acs:alikafka",
        "type":"alikafka:Topic:Message",
        "subject":"acs:alikafka_pre-cn-i7m2t7t1****:topic:mytopic",
        "datacontenttype":"application/json; charset=utf-8",
        "time":"2022-06-23T02:49:51.589Z",
        "aliyunaccountid":"164901546557****",
        "data":{
            "topic":"****",
            "partition":7,
            "offset":25,
            "timestamp":1655952591589,
            "headers":{
                "headers":[
                ],
                "isReadOnly":false
            },
            "key":"keytest",
            "value":"hello kafka msg"
        }
    }
]data字段包含的参数解释如下表所示。
参数  | 类型  | 示例值  | 描述  | 
topic  | String  | TopicName  | Topic的名称。  | 
partition  | Int  | 1  | 云消息队列 Kafka 版的消费分区信息。  | 
offset  | Int  | 0  | 云消息队列 Kafka 版的消息位点。  | 
timestamp  | String  | 1655952591589  | 开始消费时间戳。  | 
DTS触发器
event格式如下所示:[
  {
    "data": {
      "id": 321****,
      "topicPartition": {
        "hash": 0,
        "partition": 0,
        "topic": "cn_hangzhou_rm_1234****_test_version2"
      },
      "offset": 3218099,
      "sourceTimestamp": 1654847757,
      "operationType": "UPDATE",
      "schema": {
        "recordFields": [
          {
            "fieldName": "id",
            "rawDataTypeNum": 8,
            "isPrimaryKey": true,
            "isUniqueKey": false,
            "fieldPosition": 0
          },
          {
            "fieldName": "topic",
            "rawDataTypeNum": 253,
            "isPrimaryKey": false,
            "isUniqueKey": false,
            "fieldPosition": 1
          }
        ],
        "nameIndex": {
          "id": {
            "fieldName": "id",
            "rawDataTypeNum": 8,
            "isPrimaryKey": true,
            "isUniqueKey": false,
            "fieldPosition": 0
          },
          "topic": {
            "fieldName": "topic",
            "rawDataTypeNum": 253,
            "isPrimaryKey": false,
            "isUniqueKey": false,
            "fieldPosition": 1
          }
        },
        "schemaId": "(hangzhou-test-db,hangzhou-test-db,message_info)",
        "databaseName": "hangzhou--test-db",
        "tableName": "message_info",
        "primaryIndexInfo": {
          "indexType": "PrimaryKey",
          "indexFields": [
            {
              "fieldName": "id",
              "rawDataTypeNum": 8,
              "isPrimaryKey": true,
              "isUniqueKey": false,
              "fieldPosition": 0
            }
          ],
          "cardinality": 0,
          "nullable": true,
          "isFirstUniqueIndex": false
        },
        "uniqueIndexInfo": [],
        "foreignIndexInfo": [],
        "normalIndexInfo": [],
        "databaseInfo": {
          "databaseType": "MySQL",
          "version": "5.7.35-log"
        },
        "totalRows": 0
      },
      "beforeImage": {
        "recordSchema": {
          "recordFields": [
            {
              "fieldName": "id",
              "rawDataTypeNum": 8,
              "isPrimaryKey": true,
              "isUniqueKey": false,
              "fieldPosition": 0
            },
            {
              "fieldName": "topic",
              "rawDataTypeNum": 253,
              "isPrimaryKey": false,
              "isUniqueKey": false,
              "fieldPosition": 1
            }
          ],
          "nameIndex": {
            "id": {
              "fieldName": "id",
              "rawDataTypeNum": 8,
              "isPrimaryKey": true,
              "isUniqueKey": false,
              "fieldPosition": 0
            },
            "topic": {
              "fieldName": "topic",
              "rawDataTypeNum": 253,
              "isPrimaryKey": false,
              "isUniqueKey": false,
              "fieldPosition": 1
            }
          },
          "schemaId": "(hangzhou-test-db,hangzhou-test-db,message_info)",
          "databaseName": "hangzhou-test-db",
          "tableName": "message_info",
          "primaryIndexInfo": {
            "indexType": "PrimaryKey",
            "indexFields": [
              {
                "fieldName": "id",
                "rawDataTypeNum": 8,
                "isPrimaryKey": true,
                "isUniqueKey": false,
                "fieldPosition": 0
              }
                ],
                "cardinality": 0,
                "nullable": true,
                "isFirstUniqueIndex": false
              },
                "uniqueIndexInfo": [],
                "foreignIndexInfo": [],
                "normalIndexInfo": [],
                "databaseInfo": {
                "databaseType": "MySQL",
                "version": "5.7.35-log"
              },
                "totalRows": 0
              },
                "values": [
                {
                "data": 115
              },
                {
                "data": {
                "hb": [
                104,
                101,
                108,
                108,
                111
                ],
                "offset": 0,
                "isReadOnly": false,
                "bigEndian": true,
                "nativeByteOrder": false,
                "mark": -1,
                "position": 0,
                "limit": 9,
                "capacity": 9,
                "address": 0
              },
                "charset": "utf8mb4"
              }
                ],
                "size": 45
              },
                "afterImage": {
                "recordSchema": {
                "recordFields": [
                {
                "fieldName": "id",
                "rawDataTypeNum": 8,
                "isPrimaryKey": true,
                "isUniqueKey": false,
                "fieldPosition": 0
              },
                {
                "fieldName": "topic",
                "rawDataTypeNum": 253,
                "isPrimaryKey": false,
                "isUniqueKey": false,
                "fieldPosition": 1
              }
                ],
                "nameIndex": {
                "id": {
                "fieldName": "id",
                "rawDataTypeNum": 8,
                "isPrimaryKey": true,
                "isUniqueKey": false,
                "fieldPosition": 0
              },
                "topic": {
                "fieldName": "topic",
                "rawDataTypeNum": 253,
                "isPrimaryKey": false,
                "isUniqueKey": false,
                "fieldPosition": 1
              }
              },
                "schemaId": "(hangzhou-test-db,hangzhou-test-db,message_info)",
                "databaseName": "hangzhou-test-db",
                "tableName": "message_info",
                "primaryIndexInfo": {
                "indexType": "PrimaryKey",
                "indexFields": [
                {
                "fieldName": "id",
                "rawDataTypeNum": 8,
                "isPrimaryKey": true,
                "isUniqueKey": false,
                "fieldPosition": 0
              }
                ],
                "cardinality": 0,
                "nullable": true,
                "isFirstUniqueIndex": false
              },
                "uniqueIndexInfo": [],
                "foreignIndexInfo": [],
                "normalIndexInfo": [],
                "databaseInfo": {
                "databaseType": "MySQL",
                "version": "5.7.35-log"
              },
                "totalRows": 0
              },
                "values": [
                {
                "data": 115
              },
                {
                "data": {
                "hb": [
                98,
                121,
                101
                ],
                "offset": 0,
                "isReadOnly": false,
                "bigEndian": true,
                "nativeByteOrder": false,
                "mark": -1,
                "position": 0,
                "limit": 11,
                "capacity": 11,
                "address": 0
              },
                "charset": "utf8mb4"
              }
                ],
                "size": 47
              }
              },
    "id": "12f701a43741d404fa9a7be89d9acae0-321****",
    "source": "DTSstreamDemo",
    "specversion": "1.0",
    "type": "dts:ConsumeMessage",
    "datacontenttype": "application/json; charset=utf-8",
    "time": "2022-06-10T07:55:57Z",
    "subject": "acs:dts:cn-hangzhou:12345****:kk123abc60g782/dtsabcdet1ro"
  }
]CloudEvents规范中定义的参数解释,请参见事件概述。
data字段包含的参数解释如下表所示。
参数  | 类型  | 说明  | 
id  | String  | DTS数据ID。  | 
topicPartition  | Array  | Topic的分区信息。  | 
hash  | String  | DTS底层存储参数。  | 
partition  | String  | Topic的分区。  | 
topic  | String  | Topic的名称。  | 
offset  | Int  | DTS数据对应的消息存储位点。  | 
sourceTimestamp  | Int  | DTS数据生成时间戳。  | 
operationType  | String  | DTS数据的操作类型。  | 
schema  | Array  | 数据库表结构信息。  | 
recordFields  | Array  | 字段详情记录。  | 
fieldName  | String  | 字段名称。  | 
rawDataTypeNum  | Int  | 字段类型映射值。 该值对应从数据订阅通道中获取的增量数据反序列化后的dataTypeNumber字段值,详情请参见使用Kafka客户端消费订阅数据。  | 
isPrimaryKey  | Boolean  | 字段是否是主键。  | 
isUniqueKey  | Boolean  | 字段是否是唯一值。  | 
fieldPosition  | String  | 字段位置。  | 
nameIndex  | Array  | 命名索引。  | 
schemaId  | String  | 数据库表结构信息的ID。  | 
databaseName  | String  | 数据库名称。  | 
tableName  | String  | 数据表名称。  | 
primaryIndexInfo  | String  | 主键索引。  | 
indexType  | String  | 主键索引类型。  | 
indexFields  | Array  | 主键索引字段内容。  | 
cardinality  | String  | 主键基数。  | 
nullable  | Boolean  | 主键是否可为null。  | 
isFirstUniqueIndex  | Boolean  | 是否是第一个唯一索引。  | 
uniqueIndexInfo  | String  | 唯一索引。  | 
foreignIndexInfo  | String  | 外键索引。  | 
normalIndexInfo  | String  | 普通索引。  | 
databaseInfo  | Array  | 数据库信息。  | 
databaseType  | String  | 数据库类型。  | 
version  | String  | 数据库版本。  | 
totalRows  | Int  | 数据表的总行数。  | 
beforeImage  | String  | 操作前记录字段内容镜像。  | 
values  | String  | 记录字段的值。  | 
size  | Int  | 记录字段大小。  | 
afterImage  | String  | 操作后记录字段内容镜像。  | 
MQTT触发器
event格式如下所示。
[
  {
    "props": {
      "firstTopic": "testTopic",
      "secondTopic": "/testMq4****",
      "clientId": "consumerGroupID@@@xxx"
    },
    "body": "hello mq4Iot pub sub msg"
  }
]event字段包含的参数解释如下表所示。
参数  | 类型  | 示例值  | 描述  | 
props  | Map  | 消息属性。  | |
firstTopic  | String  | testTopic  | 用于收发消息的父级Topic。  | 
secondTopic  | String  | /testMq4****  | 子级Topic。  | 
clientId  | String  | consumerGroupID@@@xx  | 客户端ID。  | 
body  | String  | hello mq4Iot pub sub msg  | 消息内容。  | 
自建Apache RocketMQ触发器
event格式如下所示。
[
  {
    "msgId": "7F0000010BDD2A84AEE70DA49B57****",
    "topic": "testTopic",
    "systemProperties": {
      "UNIQ_KEY": "7F0000010BDD2A84AEE70DA49B57****",
      "CLUSTER": "DefaultCluster",
      "MIN_OFFSET": "0",
      "TAGS": "TagA",
      "MAX_OFFSET": "128"
    },
    "userProperties": {},
    "body": "Hello RocketMQ"
  }
]event字段包含的参数解释如下表所示。
参数  | 类型  | 示例值  | 描述  | 
msgId  | String  | 7F0000010BDD2A84AEE70DA49B57****  | Apache RocketMQ消息 ID。  | 
topic  | String  | testTopic  | Topic名称。  | 
systemProperties  | Map  | 系统属性。  | |
UNIQ_KEY  | String  | 7F0000010BDD2A84AEE70DA49B57****  | 消息唯一键。  | 
CLUSTER  | String  | DefaultCluster  | Apache RocketMQ集群名称。  | 
MIN_OFFSET  | Int  | 0  | 最低位点。  | 
MAX_OFFSET  | Int  | 128  | 最高位点。  | 
TAGS  | String  | TagA  | 过滤属性。  | 
userProperties  | Map  | 无  | 用户属性。  | 
body  | String  | Hello RocketMQ  | 消息内容。  | 
API网关触发器
{
    "path":"api request path",
    "httpMethod":"request method name",
    "headers":{all headers,including system headers},
    "queryParameters":{query parameters},
    "pathParameters":{path parameters},
    "body":"string of request payload",
    "isBase64Encoded":"true|false, indicate if the body is Base64-encode"
}  - 如果
isBase64Encoded的值为true,表示API网关传给函数计算的body内容已进行Base64编码。函数计算需要先对body内容进行Base64解码后再处理。 - 如果
isBase64Encoded的值为false,表示API网关没有对body内容进行Base64编码,在函数中可以直接获取body内容。 
DataHub触发器
{
  "eventSource": "acs:datahub",
  "eventName": "acs:datahub:putRecord",
  "eventSourceARN": "/projects/test_project_name/topics/test_topic_name",
  "region": "cn-hangzhou",
  "records": [
    {
      "eventId": "0:12345",
      "systemTime": 1463000123000,
      "data": "[\"col1's value\",\"col2's value\"]"
    },
    {
      "eventId": "0:12346",
      "systemTime": 1463000156000,
      "data": "[\"col1's value\",\"col2's value\"]"
    }
  ]
}更多信息,请参见Event结构定义。