Function Compute の各トリガータイプは、それぞれ異なるイベント構造を関数ハンドラに渡します。イベントパラメーターを解析して、ビジネスロジックに必要なフィールドを抽出してください。
注意事項
使用前にイベントペイロードを解析してください。サンプル解析コードについては、「例 1: JSON 形式のパラメーターの解析」をご参照ください。
HTTP トリガー
Function Compute は、HTTP トリガーの URL またはカスタムドメインを介して関数にアクセスするリクエストをイベントに変換し、そのイベントをリクエストハンドラに渡します。関数の実行後、関数から返された応答は HTTP 応答にマッピングされます。詳細については、「HTTP リクエストマッピングロジック」および「応答解析ロジック」をご参照ください。
時間トリガー
{
"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",
"objectMeta": {
"mimeType": "application/zip",
"userMeta": {
"x-oss-meta-last-modified":"20250213"
}
},
"size": 122539
},
"ossSchemaVersion": "1.0",
"ruleId": "9adac8e253828f4f7c0466d941fa3db81161****"
},
"region": "cn-hangzhou",
"requestParameters": {
"sourceIPAddress": "140.205.XX.XX"
},
"responseElements": {
"requestId": "58F9FF2D3DF792092E12044C"
},
"userIdentity": {
"principalId": "164901546557****"
}
}
]
}
| パラメーター | タイプ | 例 | 説明 |
|---|---|---|---|
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",
"objectMeta": {
"mimeType": "application/zip",
"userMeta": {
"x-oss-meta-last-modified":"20250213"
}
},
"size": 122539
},
"ossSchemaVersion": "1.0",
"ruleId": "9adac8e253828f4f7c0466d941fa3db81161****"
},
"region": "cn-hangzhou",
"requestParameters": {
"sourceIPAddress": "140.205.XX.XX"
},
"responseElements": {
"requestId": "58F9FF2D3DF792092E12044C"
},
"userIdentity": {
"principalId": "164901546557****"
}
}
]
}
| パラメーター | タイプ | 例 | 説明 |
|---|---|---|---|
eventName |
String | ObjectCreated:PutObject |
イベントタイプ。 |
eventSource |
String | acs:oss |
イベントソース。固定値: acs:oss。 |
eventTime |
String | 2022-08-13T06:45:43.000Z |
イベントが発生した時刻 (ISO 8601 形式)。 |
eventVersion |
String | 1.0 |
イベントプロトコルのバージョン。 |
oss |
Map | — | イベントの内容。 |
bucket |
Map | — | バケットの詳細。 |
bucket.name |
String | testbucket |
バケット名。 |
bucket.arn |
String | acs:oss:cn-hangzhou:123456789:testbucket |
バケットの Alibaba Cloud リソース名 (ARN)。 |
bucket.ownerIdentity |
String | 164901546557**** |
バケットを作成したユーザーの ID。 |
object |
Map | — | オブジェクトの詳細。 |
object.size |
Int | 122539 |
オブジェクトのサイズ (バイト単位)。 |
object.deltaSize |
Int | 122539 |
オブジェクトサイズの変更量 (バイト単位)。新規オブジェクトの場合はオブジェクトサイズに等しくなります。上書きされたオブジェクトの場合は、新旧のオブジェクトサイズの差分になります。 |
object.eTag |
String | 688A7BF4F233DC9C88A80BF985AB**** |
オブジェクトの ETag。 |
object.key |
String | source/a.png |
オブジェクト名。 |
object.objectMeta |
Map | — | オブジェクトのメタデータ。 |
object.objectMeta.mimeType |
String | application/zip |
オブジェクトのコンテンツタイプ。詳細については、「Content-Type ヘッダーの設定方法 |
object.objectMeta.userMeta |
Map | — | ユーザー定義のメタデータ。オブジェクトの目的や属性を識別します。 |
x-oss-meta-last-modified |
String | 20250213 |
ユーザーメタデータのキーと値のペア。キーは x-oss-meta- で始まる必要があります。この例では、"x-oss-meta-last-modified":"20250213" は、ソースマシンでオブジェクトが最後に変更された日付を記録します。詳細については、「ユーザーメタデータ」をご参照ください。 |
ossSchemaVersion |
String | 1.0 |
OSS スキーマのバージョン。 |
ruleId |
String | 9adac8e253828f4f7c0466d941fa3db81161**** |
イベントに一致したルールの ID。 |
region |
String | cn-hangzhou |
バケットが存在するリージョン。 |
requestParameters |
Map | — | リクエストパラメーター。 |
requestParameters.sourceIPAddress |
String | 140.205.XX.XX |
リクエスト送信者の IP アドレス。 |
responseElements |
Map | — | 応答の詳細。 |
responseElements.requestId |
String | 58F9FF2D3DF792092E12044C |
リクエスト ID。 |
userIdentity |
Map | — | ユーザー ID。 |
userIdentity.principalId |
String | 164901546557**** |
リクエストを開始した Alibaba Cloud アカウントの ID。 |
Simple Log Service トリガー
{
"parameter": {},
"source": {
"endpoint": "http://cn-hangzhou-intranet.log.aliyuncs.com",
"projectName": "fc-test-project",
"logstoreName": "fc-test-logstore",
"shardId": 0,
"beginCursor": "MTUyOTQ4MDIwOTY1NTk3ODQ2Mw==",
"endCursor": "MTUyOTQ4MDIwOTY1NTk3ODQ2NA=="
},
"jobName": "1f7043ced683de1a4e3d8d70b5a412843d81****",
"taskId": "c2691505-38da-4d1b-998a-f1d4bb8c****",
"cursorTime": 1529486425
}
| パラメーター | 説明 |
|---|---|
parameter |
トリガー作成時に指定された呼び出しパラメーターの値。 |
source |
関数が読み取るログブロックに関する情報。
関数をデバッグする際、GetCursor 操作を呼び出して |
jobName |
Simple Log Service の ETL (抽出、変換、ロード) ジョブの名前。関数の Simple Log Service トリガーは 1 つの ETL ジョブに対応します。このパラメーターは Function Compute によって自動的に生成されるため、設定する必要はありません。 |
taskId |
ETL ジョブの場合、taskId は関数呼び出しの決定的な識別子です。このパラメーターは Function Compute によって自動的に生成されるため、設定する必要はありません。 |
cursorTime |
最後のログエントリが Simple Log Service サーバーに到着したときの UNIX タイムスタンプ。単位:秒。 |
Alibaba Cloud CDN トリガー
CDN トリガーは、LogFileCreated、CachedObjectsRefreshed / CachedObjectsPushed、CdnDomainStarted / CdnDomainStopped、および CdnDomainAdded / CdnDomainDeleted の 4 つのイベントタイプをサポートします。すべてのイベントは共通のトップレベル構造を共有し、eventParameter フィールドはイベントタイプによって異なります。
すべての CDN イベントは、次のトップレベルフィールドを共有します:
| パラメーター | タイプ | 例 | 説明 |
|---|---|---|---|
eventName |
String | LogFileCreated |
イベントタイプ。 |
eventSource |
String | cdn |
イベントソース。 |
region |
String | cn-hangzhou |
Alibaba Cloud CDN のリージョン。 |
eventVersion |
String | 1.0.0 |
イベントプロトコルのバージョン。 |
eventTime |
String | 2018-06-14T15:31:49+08:00 |
イベントが発生した時刻。 |
traceId |
String | c6459282-6a4d-4413-894c-e4ea3968**** |
トラブルシューティング用のトレース ID。イベントソースによって提供されます。 |
userIdentity.aliUid |
String | 164901546557**** |
名前空間を作成した Alibaba Cloud アカウントの ID。 |
resource.domain |
String | example.com |
エンドポイント。 |
eventParameter |
Map | — | イベント固有のパラメーター。以下の表をご参照ください。 |
LogFileCreated
filePath を Alibaba Cloud 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
}
}
]
}
LogFileCreated の eventParameter フィールド:
| パラメーター | タイプ | 例 | 説明 |
|---|---|---|---|
domain |
String | example.com |
エンドポイント。 |
startTime |
String | 1528959600 |
ログファイルの開始時刻。 |
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 |
ログファイルの場所。 |
CachedObjectsRefreshed と CachedObjectsPushed
{
"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****"
}
}
]
}
CachedObjectsRefreshed および CachedObjectsPushed の eventParameter フィールド:
| パラメーター | タイプ | 例 | 説明 |
|---|---|---|---|
domain |
String | example.com |
エンドポイント。 |
objectPath |
String | /2018/03/16/13/33b430c57e7.mp4 |
リソース識別子。 |
createTime |
String | 1521180769 |
リフレッシュの開始時刻。 |
completeTime |
String | 1521180777 |
リフレッシュの終了時刻。 |
objectType |
String | File |
リフレッシュされる項目。有効な値: File、Directory。 |
taskId |
String | 2089687230 |
リフレッシュタスクの ID。 |
CdnDomainStarted と CdnDomainStopped
{
"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****"
}
}
]
}
CdnDomainStarted および CdnDomainStopped の eventParameter フィールド:
| パラメーター | タイプ | 例 | 説明 |
|---|---|---|---|
domain |
String | example.com |
エンドポイント。 |
status |
String | online |
高速化ドメイン名のステータス。 |
CdnDomainAdded と CdnDomainDeleted
{
"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****"
}
}
]
}
CdnDomainAdded および CdnDomainDeleted の eventParameter フィールド:
| パラメーター | タイプ | 例 | 説明 |
|---|---|---|---|
domain |
String | example.com |
エンドポイント。 |
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
}
]
}
]
}
| パラメーター | 説明 |
|---|---|
Version |
ペイロードのバージョン。例: Sync-v1。タイプ:文字列。 |
Records |
増分データ行の配列。各要素には、Type (行の操作タイプ。有効な値: PutRow、UpdateRow、DeleteRow。タイプ:文字列) と Info (行のメタデータ。最終変更時刻 (協定世界時 (UTC)) を示す Timestamp を含む。タイプ:INT64) が含まれます。 |
PrimaryKey |
プライマリキー列の配列。各要素には、ColumnName (列名。タイプ:文字列) と Value (列の値。タイプ: formated_value、INTEGER、STRING、または BLOB が可能) が含まれます。 |
Columns |
属性列の配列。各要素には、Type (操作タイプ。有効な値: Put、DeleteOneVersion、DeleteAllVersions。タイプ:文字列)、ColumnName (列名。タイプ:文字列)、Value (列の値。タイプ: formatted_value、INTEGER、BOOLEAN、DOUBLE、STRING、または BLOB が可能)、および Timestamp (最終変更時刻 (協定世界時 (UTC))。タイプ:INT64) が含まれます。 |
Simple Message Queue (旧称: MNS) の Topic トリガー
イベント形式は、トリガーに設定された [イベント形式] の設定によって異なります。
STREAM 形式
メッセージ属性なし — イベントはプレーンな JSON 文字列です:
'hello topic'
メッセージに属性がない場合、イベントの内容は JSON 形式の文字列になります。
メッセージ属性あり — イベントには属性のキーと値のペアが含まれます:
イベントの内容には、メッセージ属性のキーと値のペアが含まれます。詳細については、「PublishMessage」をご参照ください。
{
"body": "hello topic",
"attrs": {
"Extend": "{\"key\":\"value\"}"
}
}
JSON 形式
メッセージ属性なし:
{
"TopicOwner": "118620210433****",
"Message": "hello topic",
"Subscriber": "118620210433****",
"PublishTime": 1550216480040,
"SubscriptionName": "test-fc-subscribe",
"MessageMD5": "BA4BA9B48AC81F0F9C66F6C909C3****",
"TopicName": "Mytopic",
"MessageId": "2F5B3C082B923D4EAC694B76D928****"
}
メッセージ属性あり — イベントには、標準フィールドに加えて属性のキーと値のペアが含まれます:
イベントの内容には、メッセージ属性のキーと値のペアが含まれます。詳細については、「PublishMessage」をご参照ください。
{
"key": "value",
"TopicOwner": "118620210433****",
"Message": "hello topic",
"Subscriber": "118620210433****",
"PublishTime": 1550216302888,
"SubscriptionName": "test-fc-subscribe",
"MessageMD5": "BA4BA9B48AC81F0F9C66F6C909C3****",
"TopicName": "Mytopic",
"MessageId": "2F5B3C281B283D4EAC694B742528****"
}
JSON 形式のイベントパラメーター:
| パラメーター | タイプ | 例 | 説明 |
|---|---|---|---|
key |
String | value |
メッセージ属性のキーと値のペア。 |
TopicOwner |
String | 118620210433**** |
Simple Message Queue (旧称: MNS) のトピック所有者のアカウント ID。 |
Message |
String | hello topic |
メッセージ本文。 |
Subscriber |
String | 118620210433**** |
トピックのサブスクライバーのアカウント ID。 |
PublishTime |
Int | 1550216302888 |
メッセージが公開された時刻。 |
SubscriptionName |
String | test-fc-subscribe |
サブスクリプション名。 |
MessageMD5 |
String | BA4BA9B48AC81F0F9C66F6C909C3**** |
メッセージ本文の MD5 ハッシュ。 |
TopicName |
String | Mytopic |
Simple Message Queue (旧称: MNS) のトピック名。 |
MessageId |
String | 2F5B3C281B283D4EAC694B742528**** |
メッセージ ID。 |
MNS Queue トリガー
イベントは CloudEvents 形式のメッセージの配列です。CloudEvents 仕様フィールド (specversion、 id、 source、 type、 datacontenttype、 subject、 time、および Alibaba Cloud 拡張フィールド) については、「概要」をご参照ください。
[
{
"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"
}
}
]
data フィールド:
| パラメーター | タイプ | 例 | 説明 |
|---|---|---|---|
requestId |
String | 606EA3074344430D4C81**** |
リクエスト ID。各リクエストには一意の ID があります。 |
messageId |
String | C6DB60D1574661357FA227277445**** |
メッセージ ID。各メッセージには一意の ID があります。 |
messageBody |
String | TEST |
メッセージ本文。 |
ApsaraMQ for RocketMQ トリガー
イベントは、CloudEvents フォーマットのメッセージの配列です。CloudEvents 仕様のフィールドについては、「概要」をご参照ください。
[
{
"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"
}
}
]
data フィールド:
| パラメーター | タイプ | 例 | 説明 |
|---|---|---|---|
topic |
String | TopicName |
トピック名。 |
systemProperties |
Map | — | システムプロパティ。 |
systemProperties.MIN_OFFSET |
Int | 0 |
最小オフセット。 |
systemProperties.TRACE_ON |
Boolean | true |
メッセージトレースが存在するかどうか。有効な値: true、false。 |
systemProperties.MAX_OFFSET |
Int | 8 |
最大オフセット。 |
systemProperties.MSG_REGION |
String | cn-hangzhou |
メッセージが送信されたリージョン。 |
systemProperties.KEYS |
String | systemProperties.KEYS |
メッセージをフィルターするためのキー。 |
systemProperties.CONSUME_START_TIME |
Long | 1628577790396 |
メッセージ消費の開始時刻 (ミリ秒単位)。 |
systemProperties.UNIQ_KEY |
String | AC14C305069E1B28CDFA3181CDA2**** |
メッセージの一意キー。 |
systemProperties.TAGS |
String | systemProperties.TAGS |
メッセージをフィルターするためのタグ。 |
systemProperties.INSTANCE_ID |
String | MQ_INST_123456789098****_BXhFHryi |
ApsaraMQ for RocketMQ インスタンス ID。 |
userProperties |
Map | — | ユーザー定義プロパティ。 |
body |
String | TEST |
メッセージ本文。 |
ApsaraMQ for RabbitMQ トリガー
イベントは、CloudEvents フォーマットのメッセージの配列です。CloudEvents 仕様のフィールドについては、「概要」をご参照ください。
[
{
"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****"
}
}
}
]
data フィールド:
| パラメーター | タイプ | 例 | 説明 |
|---|---|---|---|
body |
Map | — | メッセージ本文。 |
body.Hello |
String | EventBridge |
ユーザーデータ。 |
props |
Map | — | メッセージ属性。 |
props.contentEncoding |
String | utf-8 |
メッセージ本文のエンコード形式。 |
props.messageId |
String | f7622d51-e198-41de-a072-77c1ead7**** |
メッセージ ID。各メッセージには一意の ID があります。 |
envelope |
Map | — | メッセージエンベロープ。 |
envelope.deliveryTag |
Int | 98 |
配信タグ。 |
envelope.exchange |
String | — | メッセージをルーティングしたエクスチェンジ。 |
envelope.redeliver |
Boolean | false |
メッセージが再配信されたものかどうか。有効な値: true、false。 |
envelope.routingKey |
String | housekeeping |
メッセージのルーティングキー。 |
ApsaraMQ for Kafka トリガー
イベントは、CloudEvents フォーマットのメッセージの配列です。CloudEvents 仕様フィールドについては、「概要」をご参照ください。
[
{
"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 |
トピック名。 |
partition |
Int | 1 |
ApsaraMQ for Kafka インスタンス上のパーティション。 |
offset |
Int | 0 |
メッセージオフセット。 |
timestamp |
String | 1655952591589 |
メッセージ消費が開始されたときのタイムスタンプ。 |
headers.headers |
List | [header1, header2] |
メッセージヘッダー。 |
headers.isReadOnly |
Boolean | false |
このフィールドは予約済みであり、実用的な意味はありません。 |
key |
String | dataKey |
メッセージキー。 |
value |
String | dataValue |
メッセージ値。形式は、タスク設定で指定されたデータ形式によって異なります。
|
DTS トリガー
イベントは、CloudEvents フォーマットのメッセージの配列です。CloudEvents の仕様フィールドについては、「概要」をご参照ください。
[
{
"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
}
],
"schemaId": "(hangzhou-test-db,hangzhou-test-db,message_info)",
"databaseName": "hangzhou--test-db",
"tableName": "message_info",
"primaryIndexInfo": {
"indexType": "PrimaryKey",
"indexFields": [...],
"cardinality": 0,
"nullable": true,
"isFirstUniqueIndex": false
},
"databaseInfo": {
"databaseType": "MySQL",
"version": "5.7.35-log"
},
"totalRows": 0
},
"beforeImage": { ... },
"afterImage": { ... }
},
"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"
}
]
data フィールド:
| パラメーター | 型 | 説明 |
|---|---|---|
id |
String | DTS データ入力 ID。 |
topicPartition |
Array | イベントがプッシュされるトピックのパーティション詳細。 |
topicPartition.hash |
String | DTS の基盤となるストレージパラメーター。 |
topicPartition.partition |
String | パーティション。 |
topicPartition.topic |
String | トピック名。 |
offset |
Int | DTS データ入力のオフセット。 |
sourceTimestamp |
Int | DTS データ入力が生成されたときのタイムスタンプ。 |
operationType |
String | DTS データ入力の操作タイプ。 |
schema |
Array | データベースのスキーマ情報。 |
schema.recordFields |
Array | フィールド詳細。 |
schema.recordFields[].fieldName |
String | フィールド名。 |
schema.recordFields[].rawDataTypeNum |
Int | フィールドタイプのマップ値。変更追跡インスタンスから逆シリアル化された増分データの dataTypeNumberRuby クライアントを使用した追跡データの消費 フィールドに対応します。詳細については、「」をご参照ください。 |
schema.recordFields[].isPrimaryKey |
Boolean | フィールドがプライマリキーであるかどうかを示します。 |
schema.recordFields[].isUniqueKey |
Boolean | フィールドに一意キーがあるかどうかを示します。 |
schema.recordFields[].fieldPosition |
String | フィールドの位置。 |
schema.nameIndex |
Array | フィールド名に基づくフィールドのインデックス情報。 |
schema.schemaId |
String | データベーススキーマ ID。 |
schema.databaseName |
String | データベース名。 |
schema.tableName |
String | テーブル名。 |
schema.primaryIndexInfo |
String | 主キーインデックスの詳細。 |
schema.primaryIndexInfo.indexType |
String | インデックスタイプ。 |
schema.primaryIndexInfo.indexFields |
Array | インデックスフィールド。 |
schema.primaryIndexInfo.cardinality |
String | プライマリキーのカーディナリティ。 |
schema.primaryIndexInfo.nullable |
Boolean | プライマリキーが null 値を許容するかどうかを示します。 |
schema.primaryIndexInfo.isFirstUniqueIndex |
Boolean | インデックスが最初の一意なインデックスであるかどうかを示します。 |
schema.uniqueIndexInfo |
String | 一意なインデックス。 |
schema.foreignIndexInfo |
String | 外部キーインデックス。 |
schema.normalIndexInfo |
String | 通常のインデックス。 |
schema.databaseInfo |
Array | データベースの詳細。 |
schema.databaseInfo.databaseType |
String | データベースエンジン。 |
schema.databaseInfo.version |
String | データベースエンジンバージョン。 |
schema.totalRows |
Int | テーブルの総行数。 |
beforeImage |
String | 操作前のフィールド値。 |
values |
String | 記録されたフィールド値。 |
size |
Int | 記録されたフィールドのサイズ。 |
afterImage |
String | 操作後のフィールド値。 |
ApsaraMQ for MQTT トリガー
[
{
"props": {
"firstTopic": "testTopic",
"secondTopic": "/testMq4****",
"clientId": "consumerGroupID@@@xxx"
},
"body": "hello mq4Iot pub sub msg"
}
]
| パラメーター | タイプ | 例 | 説明 |
|---|---|---|---|
props |
Map | — | メッセージ属性。 |
props.firstTopic |
String | testTopic |
メッセージの送受信に使用される親トピック。 |
props.secondTopic |
String | /testMq4**** |
子トピック。 |
props.clientId |
String | consumerGroupID@@@xx |
クライアント ID。 |
body |
String | hello mq4Iot pub sub msg |
メッセージ本文。 |
自己管理型 Apache RocketMQ トリガー
[
{
"msgId": "7F0000010BDD2A84AEE70DA49B57****",
"topic": "testTopic",
"systemProperties": {
"UNIQ_KEY": "7F0000010BDD2A84AEE70DA49B57****",
"CLUSTER": "DefaultCluster",
"MIN_OFFSET": "0",
"TAGS": "TagA",
"MAX_OFFSET": "128"
},
"userProperties": {},
"body": "Hello RocketMQ"
}
]
| パラメーター | タイプ | 例 | 説明 |
|---|---|---|---|
msgId |
String | 7F0000010BDD2A84AEE70DA49B57**** |
Apache RocketMQ のメッセージ ID。 |
topic |
String | testTopic |
Apache RocketMQ クラスター内のトピック名。 |
systemProperties |
Map | — | システムプロパティ。 |
systemProperties.UNIQ_KEY |
String | 7F0000010BDD2A84AEE70DA49B57**** |
メッセージの一意キー。 |
systemProperties.CLUSTER |
String | DefaultCluster |
Apache RocketMQ クラスター名。 |
systemProperties.MIN_OFFSET |
Int | 0 |
最小オフセット。 |
systemProperties.MAX_OFFSET |
Int | 128 |
最大オフセット。 |
systemProperties.TAGS |
String | TagA |
メッセージをフィルターするためのタグ。 |
userProperties |
Map | — | ユーザー定義プロパティ。 |
body |
String | Hello RocketMQ |
メッセージ本文。 |
API Gateway トリガー (イベント関数のみ)
{
"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-encoded"
}
次の表は、event フィールドのパラメーターについて説明しています。
| パラメーター | タイプ | 説明 |
|---|---|---|
path |
String | API リクエストのパス。 |
httpMethod |
String | GET、POST、PUT、DELETE などのリクエストメソッド名。 |
headers |
Object | システムヘッダーとカスタムヘッダーを含むすべてのリクエストヘッダー。 |
queryParameters |
Object | クエリパラメーター。通常、URL の疑問符 (?) の後にキーと値のペアとして表示されます。 |
pathParameters |
Object | パスパラメーター。通常、URL の一部であり、特定のリソースを識別します。 |
body |
String | リクエストボディ。 |
isBase64Encoded |
Boolean |
リクエストボディが Base64 でエンコードされているかどうかを指定します。
|