このトピックでは、イベントターゲットのメタデータのパラメータについて説明します。
リクエストパラメータ
パラメータ | タイプ | 必須 | 例 | 説明 |
EventBusName | String | はい | default | イベントバスの名前。詳細については、「制限」をご参照ください。 |
RuleName | String | はい | MNSRule | イベントルールの名前。詳細については、「制限」をご参照ください。 |
Description | String | いいえ | Simple Message Queue(SMQ、旧 MNS)のフィルタリングルール。 | イベントルールの説明。 |
Status | String | いいえ | ENABLE | イベントルールのステータス。有効な値:
デフォルト値:ENABLE。 |
FilterPattern | String | いいえ | {\"source\": [{\"prefix\": \"acs.\"}],\"type\": [{\"prefix\":\"oss:ObjectReplication\"}],\"subject\":[{\"prefix\":\"acs:oss:cn-hangzhou:123456789098****:my-movie-bucket/\", \"suffix\":\".txt\"}]} | イベントパターン。このパラメータの値は JSON 形式です。詳細については、「イベントパターン」をご参照ください。 |
Targets | List<Target> | はい | イベントルールに一致するイベントが配信されるイベントターゲット。 | |
Id | String | はい | 1 | カスタムイベントターゲットの ID。ID はイベントルール内で一意である必要があります。 |
Type | String | はい |
| イベントターゲットのタイプ。詳細については、以下のセクションで各イベントターゲットの説明を参照してください。 |
Endpoint | String | いいえ |
| イベントターゲットのエンドポイント。詳細については、以下のセクションで各イベントターゲットのエンドポイント形式の説明を参照してください。 |
PushRetryStrategy | String | はい | BACKOFF_RETRY | イベントのプッシュに失敗した場合に使用される再試行ポリシー。有効な値:
|
DeadLetterQueue | String | いいえ | デッドレターキュー。処理されなかったイベント、または最大再試行回数を超えたイベントは、デッドレターキューに送信されます。SMQ および RocketMQ for ApsaraMQ のキューをデッドレターキューとして使用できます。 | |
Arn | String | いいえ |
| デッドレターキューの Alibaba Cloud Resource Name(ARN)。処理されなかったイベント、または最大再試行回数を超えたイベントは、デッドレターキューに送信されます。SMQ および RocketMQ for ApsaraMQ のキューをデッドレターキューとして使用できます。 |
ParamList | List<Param> | はい | イベントによって渡されるパラメータ。 | |
resourceKey | String | はい | body | 宛先サービスのパラメータ。 |
form | String | はい | TEMPLATE | イベントの変換に使用するメソッド。有効な値:
|
value | String | はい |
| 変換されたイベントの値。 |
template | String | いいえ | | イベント変換に使用するテンプレート。 |
レスポンスパラメータ
パラメータ | 必須 | 例 | 説明 |
RuleARN | String |
| イベントルールの ARN。ARN は認証に使用されます。 |
DingTalk
イベントルールを作成するときに サービスの種類 パラメータを DingTalk に設定すると、メタデータの Type パラメータの値は acs.dingtalk になり、メタデータの Endpoint パラメータの値は構成する DingTalk URL になります。次の表に、ParamList パラメータの resourceKey フィールドの詳細を示します。
resourceKey | 必須 | form | value | template |
URL | はい | CONSTANT | DingTalk URL。 | なし。 |
SecretKey | はい | CONSTANT | 秘密鍵。 | なし。 |
Body | はい | TEMPLATE | キーと値を定義します。 | メッセージ本文のテンプレートを定義します。 |
次のサンプルコードは、[jsonpath] の例を示しています。
{
"Id":"KD20k9rpqDRXPq0SXXlqeT****",
"Type":"acs.dingtalk",
"Endpoint":"https://oapi.dingtalk.com/robot/send?access_token=1560abe367f48877c69bb6a9916244979927abbbbf82f4fe8801692cd6ea****",
"ParamList":[
{
"Value":"https://oapi.dingtalk.com/robot/send?access_token=1560abe367f48877c69bb6a9916244979927abbbbf82f4fe8801692cd6ea****",
"ResourceKey":"URL",
"Form":"CONSTANT"
},
{
"Value":"SEC1eca5209e0c6c23165b9504967522d47b0d0004e1caf3a75f6ddfda7359d****",
"ResourceKey":"SecretKey",
"Form":"CONSTANT"
},
{
"Value":{
"content":"$.data.content"
},
"ResourceKey":"Body",
"Form":"TEMPLATE",
"Template":{
"Msgtype":"text",
"Text":{
"content":"@1851111***** ${content}"
},
"At":{
}
}
}
]
}Direct Mail
イベントルールを作成するときに サービスの種類 パラメータを Email に設定すると、メタデータの Type パラメータの値は acs.mail になり、メタデータの Endpoint パラメータの値は構成するメール URL になります。Endpoint パラメータの形式は acs:mail:${region}:${uid} です。次の表に、ParamList パラメータの resourceKey フィールドの詳細を示します。
resourceKey | 必須 | form | value | template |
Subject | はい | CONSTANT | メールの件名。 | なし。 |
AccountName | はい | CONSTANT | 送信者のメールアドレス。 | なし。 |
AddressType | はい | CONSTANT | メールアドレスタイプ。 | なし。 |
ReplyToAddress | はい | CONSTANT | 返信先アドレス。 | なし。 |
ToAddress | はい |
| 受信者のメールアドレス。 | なし。 |
IsHtmlBody | はい | CONSTANT | メール本文が HTML タイプかどうかを指定します。有効な値:
| なし。 |
Body | はい | TEMPLATE | キーと値を定義します。 | メッセージ本文のテンプレートを定義します。 |
次のサンプルコードは、[jsonpath] の例を示しています。
{
"Id":"KD20k9rpqDRXPq0SXXlqeT****",
"Type":"acs.mail",
"Endpoint":"acs:mail:cn-hangzhou:164901546557****",
"ParamList":[
{
"Value":"test",
"ResourceKey":"Subject",
"Form":"CONSTANT"
},
{
"Value":"example.com",
"ResourceKey":"AccountName",
"Form":"CONSTANT"
},
{
"Value":"1",
"ResourceKey":"AddressType",
"Form":"CONSTANT"
},
{
"Value":"true",
"ResourceKey":"ReplyToAddress",
"Form":"CONSTANT"
},
{
"Value":"$.data.name",
"EsourceKey":"ToAddress",
"Form":"JSONPATH"
},
{
"Value":"true",
"ResourceKey":"IsHtmlBody",
"Form":"CONSTANT"
},
{
"Value":{
"Mobile":"$.data.mobile",
"Subject":"$.subject"
},
"ResourceKey":"Body",
"Form":"TEMPLATE",
"Template":{
"Code":"${subject}"
}
}
]
}SMS
イベントルールを作成するときに サービスの種類 パラメータを ショートメッセージサービス (SMS) に設定すると、メタデータの Type パラメータの値は acs.sms になり、メタデータの Endpoint パラメータの値は構成する SMS URL になります。Endpoint パラメータの形式は acs:sms:${region}:${uid} です。次の表に、ParamList パラメータの resourceKey フィールドの詳細を示します。
resourceKey | 必須 | form | value | template |
PhoneNumbers | はい |
| 携帯電話番号。 | なし。 |
SignName | はい | CONSTANT | 署名名。 | なし。 |
TemplateCode | はい | CONSTANT | SMS のテンプレートコード。 | なし。 |
TemplateParam | はい | TEMPLATE | キーと値を定義します。 | メッセージ本文のテンプレートを定義します。 |
次のサンプルコードは、[jsonpath] の例を示しています。
{
"Id":"KD20k9rpqDRXPq0SXXlqeT****",
"Type":"acs.sms",
"Endpoint":"acs:sms:cn-hangzhou:164901546557****",
"ParamList":[
{
"Value":"$.data",
"ResourceKey":"PhoneNumbers",
"Form":"JSONPATH"
},
{
"value":"[Test] Alibaba Cloud Communications",
"ResourceKey":"SignName",
"Form":"CONSTANT"
},
{
"value":"[Test] Alibaba Cloud Communication Test Template",
"ResourceKey":"TemplateCode",
"Form":"CONSTANT"
},
{
"Value":{
"Mobile":"$.data.mobile",
"Subject":"$.subject"
},
"ResourceKey":"TemplateParam",
"Form":"TEMPLATE",
"Template":{
"Code":"${subject}"
}
}
]
}Function Compute
イベントルールを作成するときに サービスの種類 パラメータを Function Compute に設定すると、メタデータの Type パラメータの値は acs.fc.function になり、メタデータの Endpoint パラメータの値は構成する URL になります。Endpoint パラメータの形式は acs:fc:${region}:${uid}:services/${serviceName}.${Qualifier}/functions/${functionName} です。次の表に、ParamList パラメータの resourceKey フィールドを示します。
resourceKey | 必須 | form | value | template |
serviceName | はい | CONSTANT | サービス名。 | なし。 |
functionName | はい | CONSTANT | 関数名。 | なし。 |
Body | はい |
| 関数のメッセージ本文。テンプレートのキーと値を定義する必要があります。 | メッセージ本文のテンプレートを定義します。 |
Qualifier | はい | CONSTANT | サービスのバージョンまたはエイリアス。 | なし。 |
InvocationType | はい | CONSTANT | 関数呼び出しのタイプ。有効な値:
| なし。 |
DataFormat | はい | CONSTANT | イベントターゲットに配信されるデータの形式。有効な値:
| なし。 |
次のサンプルコードは、[jsonpath] の例を示しています。
{
"Id":"KD20k9rpqDRXPq0SXXlqeT****",
"Type":"acs.fc.function",
"Endpoint":"acs:fc:cn-hangzhou:164901546557****:services/guide-hello_world.LATEST/functions/hello_world",
"ParamList":[
{
"Value":"guide-hello_world",
"ResourceKey":"serviceName",
"Form":"CONSTANT"
},
{
"Value":"hello_world",
"ResourceKey":"functionName",
"Form":"CONSTANT"
},
{
"ResourceKey": "Qualifier",
"Form": "CONSTANT",
"Value": "LATEST"
},
{
"ResourceKey": "InvocationType",
"Form": "CONSTANT",
"Value": "Sync"
},
{
"Value":"$.data.name",
"ResourceKey":"Body",
"Form":"JSONPATH"
},
{
"ResourceKey": "DataFormat",
"Form": "CONSTANT",
"Value": "Object"
}
]
}SMQ
イベントルールを作成するときに サービスの種類 パラメータを SMQ に設定すると、メタデータの Type パラメータの値は acs.mns.queue になり、メタデータの Endpoint パラメータの値は構成する URL になります。Endpoint パラメータの形式は acs:mns:${region}:${uid}:queues/${queue} です。次の表に、ParamList パラメータの resourceKey フィールドの詳細を示します。Simple Message Queue (formerly MNS)
resourceKey | 必須 | form | value | template |
queue | はい | CONSTANT | キュー ID。 | なし。 |
Body | はい |
| form パラメータに基づいてメッセージコンテンツを指定します。 | form パラメータを TEMPLATE に設定した場合は、テンプレートを構成します。 |
次のサンプルコードは、[jsonpath] の例を示しています。
{
"Id":"KD20k9rpqDRXPq0SXXlqeT****",
"Type":"acs.mns.queue",
"Endpoint":"acs:mns:cn-hangzhou:164901546557****:queues/MyQueue",
"ParamList":[
{
"Value":"MyQueue",
"ResourceKey":"queue",
"Form":"CONSTANT"
},
{
"Value":{
"Source":"$.source"
},
"ResourceKey":"Body",
"Form":"TEMPLATE",
"Template":"The event comes from ${source} is abnormal." // イベントの発生元 ${source} に異常が発生しています。
}
]
}RocketMQ for ApsaraMQ
イベントルールを作成するときに サービスの種類 パラメータを RocketMQ for ApsaraMQ に設定すると、メタデータの Type パラメータの値は acs.rocketmq になり、メタデータの Endpoint パラメータの値は構成する URL になります。Endpoint パラメータの形式は acs:mq:${region}:${uid}:/instances/${instanceId}/topic/${topic} です。次の表に、ParamList パラメータの resourceKey フィールドの詳細を示します。
resourceKey | 必須 | form | value | template |
InstanceId | はい | CONSTANT | インスタンス ID。 | なし。 |
Topic | はい | CONSTANT | トピック名。 | なし。 |
Body | はい |
| メッセージ本文。 | form パラメータを TEMPLATE に設定した場合は、テンプレートを構成します。 |
Properties | いいえ |
| 属性。 | なし。 |
Keys | いいえ |
| キー。 | form パラメータを TEMPLATE に設定した場合は、テンプレートを構成します。 |
Tags | いいえ |
| タグ。 | form パラメータを TEMPLATE に設定した場合は、テンプレートを構成します。 |
次のサンプルコードは、[jsonpath] の例を示しています。
{
"Id":"KD20k9rpqDRXPq0SXXlqeT****",
"Type":"acs.rocketmq",
"Endpoint":"acs:mq:cn-hangzhou:164901546557****:/instances/${instanceId}/topic/${topic}",
"ParamList":[
{
"Value":"MQ_INST_164901546557****_BAAQ4gWo",
"ResourceKey":"InstanceId",
"Form":"CONSTANT"
},
{
"Value":"test-topic1",
"ResourceKey":"Topic",
"Form":"CONSTANT"
},
{
"Value":"$.data.name",
"ResourceKey":"Body",
"Form":"JSONPATH"
},
{
"Value":"$.data.userProperties",
"ResourceKey":"Properties",
"Form":"JSONPATH"
},
{
"Value":"$.data.systemProperties.KEYS",
"ResourceKey":"Keys",
"Form":"JSONPATH"
},
{
"Value":"$.data.systemProperties.TAGS",
"ResourceKey":"Tags",
"Form":"JSONPATH"
}
]
}RabbitMQ for ApsaraMQ
イベントルールを作成するときに サービスの種類 パラメータを RabbitMQ for ApsaraMQ に設定すると、メタデータの Type パラメータの値は acs.rabbitmq になり、メタデータの Endpoint パラメータの値は構成する URL になります。Endpoint パラメータの形式は acs:amqp:${region}:${uid}:/instances/${instanceId}/vhosts/${vhostName}/exchanges/${exchangeName} です。次の表に、ParamList パラメータの resourceKey フィールドの詳細を示します。
resourceKey | 必須 | form | value | template |
InstanceId | はい | CONSTANT | インスタンス ID。 | なし。 |
Vhost | はい | CONSTANT | 仮想ホスト。 | なし。 |
TargetType | はい | CONSTANT | イベントを配信するリソースのタイプ。 説明 Exchange パラメータと Queue パラメータのいずれか 1 つのみを構成できます。 | なし。 |
Exchange | いいえ。このパラメータは、TargetType パラメータを Exchange に設定した場合にのみ必須です。 | CONSTANT | 交換モード。 | なし。 |
Queue | いいえ。このパラメータは、TargetType パラメータを Queue に設定した場合にのみ必須です。 | CONSTANT 説明 Exchange パラメータと Queue パラメータのいずれか 1 つのみを設定できます。 | キューモード。 | なし。 |
Body | はい |
| メッセージ本文。 | form パラメータを TEMPLATE に設定した場合は、テンプレートを構成します。 |
MessageId | いいえ。デフォルトでは、このパラメータの値は自動的に生成されます。 |
| メッセージ ID。 | form パラメータを TEMPLATE に設定した場合は、テンプレートを構成します。 |
Properties | いいえ |
| 属性。 | form パラメータを TEMPLATE に設定した場合は、テンプレートを構成します。 |
次のサンプルコードは、[jsonpath] の例を示しています。
例 1:[targettype] パラメータが [exchange] に設定されています。
{
"Id":"KD20k9rpqDRXPq0SXXlqeT****",
"Type":"acs.rabbitmq",
"Endpoint":"acs:amqp:cn-hangzhou:164901546557****:/instances/${instanceId}/vhosts/${vhostName}/exchanges/${exchangeName}",
"ParamList":[
{
"Value":"amqp-cn-i7m29o3s****",
"ResourceKey":"InstanceId",
"Form":"CONSTANT"
},
{
"Value":"test.host",
"ResourceKey":"Vhost",
"Form":"CONSTANT"
},
{
"Value":"Exchange",
"ResourceKey":"TargetType",
"Form":"CONSTANT"
},
{
"Value":"amq.direct",
"ResourceKey":"Exchange",
"Form":"CONSTANT"
},
{
"Value":"$.data.name",
"ResourceKey":"RoutingKey",
"Form":"JSONPATH"
},
{
"Value":"$.data.name",
"ResourceKey":"Body",
"Form":"JSONPATH"
},
{
"Value":"$.data.message",
"ResourceKey":"MessageId",
"Form":"JSONPATH"
},
{
"Value":"$.data.userProperties",
"ResourceKey":"Properties",
"Form":"JSONPATH"
}
]
}例 2:[targettype] パラメータが [queue] に設定されています。
{
"Id":"EldwXoVAws5Ix8VpVmrDmr****",
"Type":"acs.rabbitmq",
"Endpoint":"acs:amqp:cn-hangzhou:164901546557****:/instances/${instanceId}/vhosts/${vhostName}/exchanges/${exchangeName}",
"ParamList":[
{
"Value":"amqp-cn-i7m29o3s****",
"ResourceKey":"InstanceId",
"Form":"CONSTANT"
},
{
"Value":"test.host",
"ResourceKey":"Vhost",
"Form":"CONSTANT"
},
{
"Value":"Queue",
"ResourceKey":"TargetType",
"Form":"CONSTANT"
},
{
"Value":"test.event",
"ResourceKey":"Queue",
"Form":"CONSTANT"
},
{
"Value":"$.data.body",
"ResourceKey":"Body",
"Form":"JSONPATH"
},
{
"Value":"$.data.message",
"ResourceKey":"MessageId",
"Form":"JSONPATH"
},
{
"Value":"$.data.userproperties",
"ResourceKey":"Properties",
"Form":"JSONPATH"
}
]
}Kafka for ApsaraMQ
イベントルールを作成するときに サービスの種類 パラメータを ApsaraMQ for Kafka に設定すると、メタデータの Type パラメータの値は acs.alikafka になり、メタデータの Endpoint パラメータの値は構成する URL になります。Endpoint パラメータの値の形式は acs:alikafka:${regionId}:${accountId}:topics/${topic} です。次の表に、ParamList パラメータの resourceKey フィールドの詳細を示します。
resourceKey | 必須 | form | value | template |
InstanceId | はい | CONSTANT | インスタンス ID。 | なし。 |
Topic | はい | CONSTANT | トピック名。 | なし。 |
Value | はい |
| メッセージ本文。 | イベントの変換に使用するメソッド。有効な値:
|
Key | はい | JSONPATH | メッセージキー。 | 詳細については、Value パラメータの template 列を参照してください。 |
Acks | はい | CONSTANT | 受信確認モード。 | なし。 |
次のサンプルコードは、[jsonpath] の例を示しています。
{
"id":"1rypRt1I9ET6Aks9Y6NNg6U****",
"type":"acs.alikafka",
"endpoint":"acs:alikafka:cn-huhehaote:118609547428****:topics/test-topic",
"pushSelector":"PARAM_TRANSFORMER",
"errorsTolerance":"ALL",
"pushRetryStrategy":"BACKOFF_RETRY",
"paramList":[
{
"value":"alikafka_pre-cn-zpr3fwhe****",
"resourceKey":"InstanceId",
"form":"CONSTANT"
},
{
"value":"test-topic",
"resourceKey":"Topic",
"form":"CONSTANT"
},
{
"value":"$.data",
"resourceKey":"Value",
"form":"JSONPATH"
},
{
"value":"$.data.key",
"resourceKey":"Key",
"form":"JSONPATH"
},
{
"value":"0",
"resourceKey":"Acks",
"form":"CONSTANT"
}
]
}Simple Log Service
イベントルールを作成するときに イベントターゲット パラメータを Simple Log Service に設定すると、メタデータの Type パラメータの値は acs.sls になり、メタデータの Endpoint パラメータの値は構成する URL になります。Endpoint パラメータの値の形式は acs:sls:${regionId}:${accountId}:project/${project}/logstore/${logstore} です。次の表に、ParamList パラメータの resourceKey フィールドの詳細を示します。
resourceKey | 必須 | form | value | template |
Project | はい | CONSTANT | プロジェクト名。 | なし。 |
LogStore | はい | CONSTANT | ログストア名。 | なし。 |
Topic | いいえ |
| ログトピック。 | イベントの変換に使用するメソッド。有効な値:
|
Body | いいえ |
| ログコンテンツ。 | 詳細については、Topic パラメータの template 列を参照してください。 |
ContentType | はい | CONSTANT | コンテンツのデータ型。 | 有効な値:JSON および KeyValue。デフォルト値:JSON。
|
RoleName | はい | CONSTANT | ロール名。 | なし。 |
ContentSchema | いいえ | CONSTANT | Simple Log Service に書き込まれるログのインデックスと値のカスタムコンテンツテンプレートを指定します。 | サンプルコードの Key_1 フィールドと Value_1 フィールドは、キーと値のペアを指定します。 |
次のサンプルコードは、[jsonpath] の例を示しています。
{
"id":"MwOpn5yyemTlQjE5JwYjme****",
"type":"acs.sls",
"endpoint":"acs:sls:cn-hangzhou:182572506381****:project/${project}/logstore/${logstore}",
"pushSelector":"PARAM_TRANSFORMER",
"errorsTolerance":"ALL",
"pushRetryStrategy":"BACKOFF_RETRY",
"paramList":[
{
"value":"testproject37****",
"resourceKey":"Project",
"form":"CONSTANT"
},
{
"value":"testlogstore37****",
"resourceKey":"LogStore",
"form":"CONSTANT"
},
{
"value":"$.data.topic",
"resourceKey":"Topic",
"form":"JSONPATH"
},
{
"value":"KeyValue",
"resourceKey":"ContentType",
"form":"CONSTANT"
},
{
"value":"AliyunEventBridgeSLS-248QJd****",
"resourceKey":"RoleName",
"form":"CONSTANT"
},
{
"value":"{\"Key_1\":{\"form\":\"CONSTANT\",\"value\":\"name\"},\"Value_1\":{\"form\":\"CONSTANT\",\"value\":\"age\"}}", /* {"キー_1":{"form":"CONSTANT","value":"名前"},"値_1":{"form":"CONSTANT","value":"年齢"}} */
"resourceKey":"ContentSchema",
"form":"CONSTANT"
}
]
}HTTP/HTTPS
イベントルールを作成するときに サービスの種類 パラメータを HTTP または HTTPS に設定すると、メタデータの Type パラメータの値は http または https になり、メタデータの Endpoint パラメータの値は構成する URL になります。次の表に、ParamList パラメータの resourceKey フィールドの詳細を示します。
resourceKey | 必須 | form | value | template |
url | はい | CONSTANT | URL。 | なし。 |
Body | はい |
| HTTP 本文のみがサポートされています。ヘッダーとクエリの使用方法については、「API 宛先の管理」をご参照ください。 | form パラメータが TEMPALTE に設定されている場合は、テンプレートを構成します。テンプレートの変数は Value パラメータからのものです。 |
Network | はい | CONSTANT | ネットワークタイプ。有効な値:
| なし。 |
VPCNameAndId | いいえ。このパラメータは、Network パラメータを PrivateNetwork に設定した場合にのみ必須です。 | CONSTANT | イベントターゲットが存在する VPC に関する情報。形式: | なし。 |
VSwitchesNameAndId | いいえ。このパラメータは、Network パラメータを PrivateNetwork に設定した場合にのみ必須です。 | CONSTANT | イベントターゲットがデプロイされている VPC の vSwitch に関する情報。複数の vSwitch を指定できます。このパラメータの値は JSON 文字列です。例: | なし。 |
SecurityGroupNameAndId | いいえ。このパラメータは、Network パラメータを PrivateNetwork に設定した場合にのみ必須です。 | CONSTANT | イベントターゲットが存在する VPC のセキュリティグループに関する情報。形式: | なし。 |
Token | いいえ。デフォルトでは、このパラメータは空のままです。 | CONSTANT | 署名検証に使用されるトークン。Header Key パラメータを固定値 | なし。 |
次のサンプルコードは、[jsonpath] の例を示しています。
例 1:[network] パラメータが [publicnetwork] に設定されています。
{
"Id":"KD20k9rpqDRXPq0SXXlqeT****",
"Type":"https",
"Endpoint":"http(s)://www.****.com/product/aliware/eventbridge",
"ParamList":[
{
"Value":"http(s)://www.****.com/product/aliware/eventbridge",
"ResourceKey":"url",
"Form":"CONSTANT"
},
{
"Value":"",
"ResourceKey":"Body",
"Form":"ORIGINAL"
},
{
"Value":"PublicNetwork",
"ResourceKey":"Network",
"Form":"CONSTANT"
}
]
}例 2:[network] パラメータが [privatenetwork] に設定されています。
{
"Id":"ZOiNcqqzTGSrDJanZQ72vj****",
"Type":"http",
"Endpoint":"http(s)://192.168.XX.XX:8080",
"ParamList":[
{
"Value":"http(s)://192.168.XX.XX:8080",
"ResourceKey":"url",
"Form":"CONSTANT"
},
{
"Value":"",
"ResourceKey":"Body",
"Form":"ORIGINAL"
},
{
"Value":"PrivateNetwork",
"ResourceKey":"Network",
"Form":"CONSTANT"
},
{
"Value":"catalog-system/vpc-bp1ohdo84u2lt9wzq****",
"ResourceKey":"VPCNameAndId",
"Form":"CONSTANT"
},
{
"Value":"[\"eb/vsw-bp10rbrt6rb6vrd89****\"]",
"ResourceKey":"VSwitchesNameAndId",
"Form":"CONSTANT"
},
{
"Value":"sg-catalog-eventlistener/sg-bp14zrnfyik5av27****",
"ResourceKey":"SecurityGroupNameAndId",
"Form":"CONSTANT"
},
{
"Value":"",
"ResourceKey":"Token",
"Form":"CONSTANT"
}
]
}データベース
イベントルールを作成するときに サービスの種類 パラメータを Database に、データベースの構成 パラメータを RDS For MySql に設定すると、メタデータの Type パラメータの値は
acs.rds.mysqlになり、メタデータの Endpoint パラメータの値は構成する URL になります。Endpoint パラメータの値の形式はacs:rds:${region}:${uid}:dbinstance/${dbinstanceid}です。次の表に、ParamList パラメータの resourceKey フィールドの詳細を示します。resourceKey
必須
form
value
template
InstanceId
はい
CONSTANT
インスタンス ID。
なし。
DBName
はい
CONSTANT
データベース名。
なし。
AccountName
はい
CONSTANT
データベースにログインするために使用されるアカウントのユーザー名。
なし。
AccountPassword
はい
CONSTANT
データベースにログインするために使用されるアカウントのパスワード。
なし。
ExecuteSQL
はい
ORIGINAL
CONSTANT
JSONPATH
TEMPLATE
カスタム SQL 文。
form パラメータを TEMPLATE に設定した場合は、テンプレートを構成します。
VpcId
はい
CONSTANT
VPC ID。
なし。
VSwitchIds
はい
CONSTANT
vSwitch ID。
なし。
SecurityGroupId
はい
CONSTANT
セキュリティグループの ID。
なし。
次のサンプルコードは、[jsonpath] の例を示しています。
{ "Id":"BRTt1sNe3IvdvejN07k5Sb****", "Type":"acs.rds.mysql", "Endpoint":"acs:rds:cn-zhangjiakou:164901546557****:dbinstance/${dbinstanceid}", "ConcurrentConfig":{ "Concurrency":10 }, "ParamList":[ { "Value":"rm-8vban2a66q93o****", "ResourceKey":"InstanceId", "Form":"CONSTANT" }, { "Value":"db-test", "ResourceKey":"DBName", "Form":"CONSTANT" }, { "Value":"db_name", "ResourceKey":"AccountName", "Form":"CONSTANT" }, { "Value":"Aliyun****", // Aliyun**** "ResourceKey":"AccountPassword", "Form":"CONSTANT" }, { "Value":"{\n \"tableName\": \"customer\",\n \"column1\": \"$.data.tableName\",\n \"column1_value\": \"$.data.id\"\n}", /* {\n "tableName": "顧客",\n "column1": "$.data.tableName",\n "column1_value": "$.data.id"\n} */ "Template":"INSERT INTO ${tableName} \n (${column1}) VALUES('${column1_value}')", /* INSERT INTO ${tableName} \n (${column1}) VALUES('${column1_value}') */ "ResourceKey":"ExecuteSQL", "Form":"TEMPLATE" }, { "Value":"vpc-8vbeokru8z8erie8e****", "ResourceKey":"VpcId", "Form":"CONSTANT" }, { "Value":"vsw-8vb9alm00nf29ijxt****", "ResourceKey":"VSwitchIds", "Form":"CONSTANT" }, { "Value":"sg-8vbb59f5vq1ydiwr****", "ResourceKey":"SecurityGroupId", "Form":"CONSTANT" } ] }イベントルールを作成するときに サービスの種類 パラメータを Database に、データベースの構成 パラメータを Self-managed MySQL Database に設定すると、メタデータの Type パラメータの値は
mysqlになり、Endpoint パラメータの値の形式はデータベースアドレス${ConnectionStringAndPort}になります。次の表に、ParamList パラメータの resourceKey フィールドの詳細を示します。resourceKey
必須
form
value
template
ConnectionStringAndPort
はい
CONSTANT
データベースエンドポイント。
なし。
DBName
はい
CONSTANT
データベース名。
なし。
AccountName
はい
CONSTANT
データベースにログインするために使用されるアカウントのユーザー名。
なし。
AccountPassword
はい
CONSTANT
データベースにログインするために使用されるアカウントのパスワード。
なし。
ExecuteSQL
はい
ORIGINAL
CONSTANT
JSONPATH
TEMPLATE
カスタム SQL 文。
なし。
Network
はい
CONSTANT
ネットワークタイプ。有効な値:
PublicNetwork: インターネット。
PrivateNetwork: VPC。Network パラメータを PrivateNetwork に設定する場合は、VPC、vSwitch、およびセキュリティグループを指定する必要があります。
なし。
VpcId
いいえ。このパラメータは、Network パラメータを PrivateNetwork に設定した場合にのみ必須です。
CONSTANT
VPC ID。
なし。
VSwitchIds
いいえ。このパラメータは、Network パラメータを PrivateNetwork に設定した場合にのみ必須です。
CONSTANT
vSwitch ID。
なし。
SecurityGroupId
いいえ。このパラメータは、Network パラメータを PrivateNetwork に設定した場合にのみ必須です。
CONSTANT
セキュリティグループの ID。
なし。
[network] パラメータが [publicnetwork] に設定されている例を次のサンプルコードに示します。
{ "Id":"HmfVOvdG4k1NK9qJiqrxtv****", "Type":"mysql", "Endpoint":"192.168.XX.XX:3306", "ConcurrentConfig":{ "Concurrency":10 }, "ParamList":[ { "Value":"192.168.XX.XX:3306", "ResourceKey":"ConnectionStringAndPort", "Form":"CONSTANT" }, { "Value":"db-test", "ResourceKey":"DBName", "Form":"CONSTANT" }, { "Value":"dbTest", "ResourceKey":"AccountName", "Form":"CONSTANT" }, { "Value":"Mydb****", // Mydb**** "ResourceKey":"AccountPassword", "Form":"CONSTANT" }, { "Value":"{\n \"tableName\": \"user\",\n \"column1\": \"$.data.tableName\",\n \"column1_value\": \"$.data.id\"\n}", /* {\n "tableName": "ユーザー",\n "column1": "$.data.tableName",\n "column1_value": "$.data.id"\n} */ "Template":"INSERT INTO ${tableName} \n (${column1}) VALUES('${column1_value}')", /* INSERT INTO ${tableName} \n (${column1}) VALUES('${column1_value}') */ "ResourceKey":"ExecuteSQL", "Form":"TEMPLATE" }, ] }[network] パラメータが [privatenetwork] に設定されている例を次のサンプルコードに示します。
{ "Id":"HmfVOvdG4k1NK9qJiqrxtv****", "Type":"mysql", "Endpoint":"192.168.XX.XX:3306", "ConcurrentConfig":{ "Concurrency":10 }, "ParamList":[ { "Value":"vpc-8vbeokru8z8erie8e****", "ResourceKey":"VpcId", "Form":"CONSTANT" }, { "Value":"vsw-8vbo9jk84z0obm24f****", "ResourceKey":"VSwitchIds", "Form":"CONSTANT" }, { "Value":"192.168.XX.XX:3306", "ResourceKey":"ConnectionStringAndPorte", // type-o: ConnectionStringAndPort "Form":"CONSTANT" }, { "Value":"my-db", "ResourceKey":"DBName", "Form":"CONSTANT" }, { "Value":"dmsTest", "ResourceKey":"AccountName", "Form":"TEMPLATE" }, { "Value":"Mydb****", // Mydb**** "ResourceKey":"AccountPassword", "Form":"CONSTANT" }, { "Value":"{\n \"tableName\": \"user\",\n \"column1\": \"$.data.tableName\",\n \"column1_value\": \"$.data.id\"\n}", /* {\n "tableName": "ユーザー",\n "column1": "$.data.tableName",\n "column1_value": "$.data.id"\n} */ "Template": "INSERT INTO ${tableName} \n (${column1}) VALUES('${column1_value}')", /* INSERT INTO ${tableName} \n (${column1}) VALUES('${column1_value}') */ "ResourceKey":"ExecuteSQL", "Form":"TEMPLATE" } ] }
EventBridge
イベントルールを作成するときに サービスの種類 パラメータを EventBridge に設定すると、メタデータの Type パラメータの値は acs.eventbridge になり、メタデータの Endpoint パラメータの値の形式は acs:eventbridge:${region}:${AccountId}:eventbus/${EventBusName} になります。次の表に、ParamList パラメータの resourceKey フィールドの詳細を示します。
resourceKey | 必須 | form | value | template |
RegionId | はい | CONSTANT | イベントターゲットが存在するリージョンの ID。 | なし。 |
AccountType | はい | CONSTANT | アカウントタイプ。有効な値:
| なし。 |
AccountId | いいえ。デフォルトでは、現在の Alibaba Cloud アカウントが使用されます。 | CONSTANT | イベントの配信先となる Alibaba Cloud アカウントの ID。 AccountType を SameAccount に設定した場合、このパラメータは省略可能です。 | なし。 |
EventBusName | はい | CONSTANT | 宛先イベントバスの名前。 | なし。 |
RAMRoleName | いいえ。Alibaba Cloud アカウント間でイベントが配信される場合は、このパラメータが必要です。 | CONSTANT | Resource Access Management(RAM)ロールの名前。詳細については、「EventBridge へのイベントのルーティング」をご参照ください。AccountType パラメータを SameAccount に設定した場合、このパラメータは省略可能です。 | なし。 |
Body | はい | ORIGINAL。完全なイベントが配信されることを示します。 | なし。 | なし。 |
次のサンプルコードは、[jsonpath] の例を示しています。
例 1:イベントが同じ Alibaba Cloud アカウントに配信されます。
{
"Id":"KD20k9rpqDRXPq0SXXlqeT****",
"Type":"acs.eventbridge",
"Endpoint":"acs:eventbridge:cn-hangzhou:xxxxx:eventbus/xxxxx",
"ParamList":[
{
"Value":"cn-hangzhou",
"ResourceKey":"RegionId",
"Form":"CONSTANT"
},
{
"Value":"SameAccount",
"ResourceKey":"AccountType",
"Form":"CONSTANT"
},
{
"Value":"xxxxx",
"ResourceKey":"EventBusName",
"Form":"CONSTANT"
},
{
"ResourceKey":"Body",
"Form":"ORIGINAL"
}
]
}例 2:イベントが別の Alibaba Cloud アカウントに配信されます。
{
"Id":"KD20k9rpqDRXPq0SXXlqeT****",
"Type":"acs.eventbridge",
"Endpoint":"acs:eventbridge:cn-hangzhou:xxxxx:eventbus/xxxxx",
"ParamList":[
{
"Value":"cn-hangzhou",
"ResourceKey":"RegionId",
"Form":"CONSTANT"
},
{
"Value":"AnotherAccount",
"ResourceKey":"AccountType",
"Form":"CONSTANT"
},
{
"Value":"xxxxx",
"ResourceKey":"AccountId",
"Form":"CONSTANT"
},
{
"Value":"xxxxx",
"ResourceKey":"EventBusName",
"Form":"CONSTANT"
},
{
"Value":"xxxxx",
"ResourceKey":"RAMRoleName",
"Form":"CONSTANT"
},
{
"ResourceKey":"Body",
"Form":"ORIGINAL"
}
]
}API 宛先によってトリガーされる
イベントルールを作成するときに サービスの種類 パラメータを API 宛先によってトリガーされる に設定すると、メタデータの Type パラメータの値は acs.api.destination になり、Endpoint パラメータの値の形式は acs:api-destination:${region}:${AccountId}:eventbus/${APIName} になります。次の表に、ParamList パラメータの resourceKey フィールドの詳細を示します。
resourceKey | 必須 | form | value | template |
Name | はい | CONSTANT | API 宛先の名前。 | なし。 |
HeaderParameters | いいえ | TEMPLATE | リクエストヘッダー。 | テンプレートを構成します。 |
BodyParameters | いいえ | TEMPLATE | リクエストボディパラメータ。 | テンプレートを構成します。 |
QueryStringParameters | いいえ | TEMPLATE | リクエストパス パラメータ。 | テンプレートを構成します。 |
次のサンプルコードは、[jsonpath] の例を示しています。
{
"id":"gwrxsJKAnLxSEo4GHhV69q****",
"type":"acs.api.destination",
"endpoint":"acs:api-destination:cn-hangzhou:11860954742****:name/api-key-test",
"pushSelector":"PARAM_TRANSFORMER",
"errorsTolerance":"ALL",
"pushRetryStrategy":"BACKOFF_RETRY",
"paramList":[
{
"resourceKey":"Name",
"form":"CONSTANT",
"value":"api-key-test"
},
{
"resourceKey":"HeaderParameters",
"form":"TEMPLATE",
"value":"{\"headerKey1\":\"Content-Type\",\"headerValue1\":\"multipart/form-data\",\"headerKey2\":\"name\",\"headerValue2\":\"$.data.name\",\"headerKey3\":\"$.data.number\",\"headerValue3\":\"name\"}", /* {"headerKey1":"Content-Type","headerValue1":"multipart/form-data","headerKey2":"名前","headerValue2":"$.data.name","headerKey3":"$.data.number","headerValue3":"名前"} */
"template":"{\"${headerKey1}\":\"${headerValue1}\",\"${headerKey2}\":\"${headerValue2}\",\"${headerKey3}\":\"${headerValue3}\"}" /* {"${headerKey1}":"${headerValue1}","${headerKey2}":"${headerValue2}","${headerKey3}":"${headerValue3}"}" */
},
{
"resourceKey":"BodyParameters",
"form":"TEMPLATE",
"value":"{\"bodyKey1\":\"name\",\"bodyValue1\":\"$.data.name\"}", /* {"bodyKey1":"名前","bodyValue1":"$.data.name"} */
"template":"{\"${bodyKey1}\":\"${bodyValue1}\"}" /* {"${bodyKey1}":"${bodyValue1}"}" */
},
{
"resourceKey":"QueryStringParameters",
"form":"TEMPLATE",
"value":"{\"queryKey1\":\"name\",\"queryValue1\":\"$.data.name\",\"queryKey2\":\"$.data.name\",\"queryValue2\":\"name\"}", /* {"queryKey1":"名前","queryValue1":"$.data.name","queryKey2":"$.data.name","queryValue2":"名前"} */
"template":"{\"${queryKey1}\":\"${queryValue1}\",\"${queryKey2}\":\"${queryValue2}\"}" /* {"${queryKey1}":"${queryValue1}","${queryKey2}":"${queryValue2}"}" */
}
]
}CloudFlow
イベントルールを作成するときに サービスの種類 パラメータを CloudFlow に設定すると、メタデータの Type パラメータの値は acs.fnf になり、Endpoint パラメータの値の形式は acs:fnf:${region}:${AccountId}:flow/${flow} になります。次の表に、ParamList パラメータの resourceKey フィールドの詳細を示します。
resourceKey | 必須 | form | value | template |
FlowName | はい | CONSTANT | フロー名。 | なし。 |
ExecutionName | いいえ |
| 実行名。 | イベントの変換に使用するメソッド。有効な値:
|
Input | いいえ | JSONPATH | 実行の入力情報。 | 詳細については、ExecutionName パラメータの template 列を参照してください。 |
RoleName | はい | CONSTANT | ロール名。 | なし。 |
次のサンプルコードは、[jsonpath] の例を示しています。
{
"id":"KLUGLVJeuWDw1bIJ6lgURl****",
"type":"acs.fnf",
"endpoint":"acs:fnf:cn-hangzhou:118609547428****:flow/${flow}",
"pushSelector":"PARAM_TRANSFORMER",
"errorsTolerance":"ALL",
"pushRetryStrategy":"BACKOFF_RETRY",
"paramList":[
{
"value":"serverless",
"resourceKey":"FlowName",
"form":"CONSTANT"
},
{
"value":"$.data",
"resourceKey":"ExecutionName",
"form":"JSONPATH"
},
{
"value":"$.data",
"resourceKey":"Input",
"form":"JSONPATH"
},
{
"value":"AliyunEventBridgeFNF-FZwEeE****",
"resourceKey":"RoleName",
"form":"CONSTANT"
}
]
}ACK
イベントルールを作成するときに サービスの種類 パラメータを Container Service for Kubernetes (ACK) に設定すると、メタデータの Type パラメータの値は acs.k8s になり、Endpoint パラメータの値は kubernetes になります。次の表に、ParamList パラメータの resourceKey フィールドの詳細を示します。
resourceKey | 必須 | form | value | template |
KubeConfig | はい | CONSTANT | クラスタ構成ファイル。 | なし。 |
YamlContent | はい | 定数 | YAML 構成。 | イベントの変換に使用するメソッド。有効な値:
|
Network | はい | CONSTANT | ネットワークタイプ。 | なし。 |
QPSLimit | はい | CONSTANT | 調整構成。 | なし。 |
次のサンプルコードは、[jsonpath] の例を示しています。
{
"id":"Grdzk1cR4DNjmHa0oPJp8j****",
"type":"acs.k8s",
"endpoint":"kubernetes",
"pushSelector":"PARAM_TRANSFORMER",
"errorsTolerance":"ALL",
"pushRetryStrategy":"BACKOFF_RETRY",
"paramList":[
{
"form":"CONSTANT",
"value":"PublicNetwork",
"resourceKey":"Network"
},
{
"form":"CONSTANT",
"value":5,
"resourceKey":"QPSLimit"
},
{
"form":"CONSTANT",
"value":"test1", // test1
"resourceKey":"KubeConfig"
},
{
"form":"CONSTANT",
"resourceKey":"YamlContent",
"value":"test2" // test2
}
]
}SAE
イベントルールを作成するときに サービスの種類 パラメータを Serverless App Engine (SAE) に設定すると、メタデータの Type パラメータの値は acs.sae になり、Endpoint パラメータの値の形式は http://sae.cn-huhehaote.aliyuncs.com/pop/v1/sam/job/execJob になります。次の表に、ParamList パラメータの resourceKey フィールドの詳細を示します。
resourceKey | 必須 | form | value | template |
RegionId | はい | CONSTANT | リージョン ID。 | イベントの変換に使用するメソッド。有効な値:
|
AppId | はい | 定数 | ジョブテンプレートの ID。 | 詳細については、RegionId パラメータの template 列を参照してください。 |
EventId | はい | JSONPATH | イベント ID。 | 詳細については、RegionId パラメータの template 列を参照してください。 |
Parameters | はい | CONSTANT | execjob の CommandArgs Envs パラメータ。 | 詳細については、RegionId パラメータの template 列を参照してください。 |
次のサンプルコードは、[jsonpath] の例を示しています。
{
"id":"xp0dEW4mVbS5tDQzIBiZrY****",
"type":"acs.sae",
"endpoint":"http://sae.cn-huhehaote.aliyuncs.com/pop/v1/sam/job/execJob",
"pushSelector":"PARAM_TRANSFORMER",
"errorsTolerance":"ALL",
"pushRetryStrategy":"BACKOFF_RETRY",
"paramList":[
{
"value":"cn-huhehaote",
"resourceKey":"RegionId",
"form":"CONSTANT"
},
{
"value":"3F2504E0-4F89-11D3-9A0C-0305E82C****",
"resourceKey":"AppId",
"form":"CONSTANT"
},
{
"value":"$.id",
"resourceKey":"EventId",
"form":"JSONPATH"
},
{
"value":"[\"a\",\"b\"]",
"resourceKey":"Parameters",
"form":"CONSTANT"
}
]
}イベント分析
イベントルールを作成するときに サービスの種類 パラメータを イベント分析 に設定すると、メタデータの Type パラメータの値は acs.eventbridge.olap になり、Endpoint パラメータの値の形式は ${SchemaURI} になります。次の表に、ParamList パラメータの resourceKey フィールドの詳細を示します。
resourceKey | 必須 | form | value | template |
UseSchema | はい | CONSTANT | マッピング方法。有効な値:
| なし。 |
SchemaGroup | はい | 定数 | スキーマグループの名前。 | なし。 |
SchemaID | はい | CONSTANT | スキーマ ID。 | なし。 |
SchemaVersion | はい | CONSTANT | スキーマバージョン。 | なし。 |
次のサンプルコードは、[jsonpath] の例を示しています。
{
"id":"DLuVyP3JcAAb3q2CibqZI6****",
"type":"acs.eventbridge.olap",
"endpoint":"${SchemaURI}",
"pushSelector":"PARAM_TRANSFORMER",
"errorsTolerance":"ALL",
"pushRetryStrategy":"BACKOFF_RETRY",
"paramList":[
{
"value":"FromRule",
"resourceKey":"UseSchema",
"form":"CONSTANT"
},
{
"value":"DEFAULT_SCHEMA_GROUP",
"resourceKey":"SchemaGroup",
"form":"CONSTANT"
},
{
"value":"test", // test
"resourceKey":"SchemaID",
"form":"CONSTANT"
},
{
"value":"1",
"resourceKey":"SchemaVersion",
"form":"CONSTANT"
}
]
}DataHub
イベントルールを作成するときに サービスの種類 パラメータを DataHub に設定すると、メタデータの Type パラメータの値は acs.datahub になり、Endpoint パラメータの値の形式は acs:datahub:${region}:${AccountId}:project/${project}/topic/${topic} になります。次の表に、ParamList パラメータの resourceKey フィールドの詳細を示します。
resourceKey | 必須 | form | value | template |
Project | はい | CONSTANT | プロジェクト名。 | なし。 |
Topic | はい | CONSTANT | トピック名。 | なし。 |
TopicType | はい | CONSTANT | トピックのデータ型。有効な値:
| なし。 |
TopicSchema | このパラメーターは、TopicType パラメーターを TUPLE に設定した場合にのみ必要です。 | TEMPLATE | トピックスキーマ。 | TEMPLATE。サンプル値: テンプレートでは、ki はトピックの i 番目のフィールドを示します。i の値は、1、2、3 などの正の整数です。対応する値は value パラメータで定義されます。部分イベントまたは定数を入力できます。 |
RoleName | はい | CONSTANT | ロール名。 | なし。 |
次のサンプルコードは、[jsonpath] の例を示しています。
{
"id":"ZXoGuhjAT5UfqngBPapXro****",
"type":"acs.datahub",
"endpoint":"acs:datahub:cn-hangzhou:175299981560****:project/demo_project/topic/demo_topic",
"errorsTolerance":"ALL",
"pushRetryStrategy":"BACKOFF_RETRY",
"paramList":[
{
"Form":"CONSTANT",
"Value":"demo_project",
"ResourceKey":"Project"
},
{
"Form":"CONSTANT",
"Value":"demo_topic",
"ResourceKey":"Topic"
},
{
"Form":"CONSTANT",
"Value":"TUPLE",
"ResourceKey":"TopicType"
},
{
"Form":"TEMPLATE",
"Value":"{\"k1-0\":\"1\",\"k2-1\":\"2\",\"k3-2\":\"3\"}", /* {"k1-0":"1","k2-1":"2","k3-2":"3"} */
"Template":"{\"k1\":\"${k1-0}\",\"k2\":\"${k2-1}\",\"k3\":\"${k3-2}\"}", /* {"k1":"${k1-0}","k2":"${k2-1}","k3":"${k3-2}"} */
"ResourceKey":"TopicSchema"
},
{
"Form":"CONSTANT",
"Value":"AliyunEventBridgeDataHubRole-2HwuVf****",
"ResourceKey":"RoleName"
}
]
}