Los parámetros de metadatos definen cómo EventBridge enruta los eventos a destinos como Function Compute, Message Service y endpoints HTTP.
Parámetros de solicitud
|
Parámetro |
Tipo |
Obligatorio |
Ejemplo |
Descripción |
|
EventBusName |
String |
Sí |
default |
El nombre del bus de eventos. Para más información, consulte Limits. |
|
RuleName |
String |
Sí |
MNSRule |
El nombre de la regla de eventos. Para más información, consulte Limits. |
|
Description |
String |
No |
La regla de filtrado para Message Service (MNS). |
La descripción de la regla de eventos. |
|
Status |
String |
No |
ENABLE |
El estado de la regla de eventos. Valores válidos:
Valor predeterminado: ENABLE. |
|
FilterPattern |
String |
No |
{\"source\": [{\"prefix\": \"acs.\"}],\"type\": [{\"prefix\":\"oss:ObjectReplication\"}],\"subject\":[{\"prefix\":\"acs:oss:cn-hangzhou:123456789098****:my-movie-bucket/\", \"suffix\":\".txt\"}]} |
El patrón de eventos, en formato JSON. Para más información, consulte Event patterns. |
|
Targets |
List<Target> |
Sí |
Una lista de destinos de eventos. |
|
|
Id |
String |
Sí |
1 |
El ID personalizado del destino de eventos. El ID debe ser único dentro de la regla actual. |
|
Type |
String |
Sí |
|
El tipo de destino de eventos. Para obtener detalles, consulte las descripciones de destinos de eventos más adelante en este tema. |
|
Endpoint |
String |
No |
|
El endpoint del destino de eventos. Para obtener detalles, consulte el formato de endpoint para cada destino de eventos más adelante en este tema. |
|
PushRetryStrategy |
String |
Sí |
BACKOFF_RETRY |
La directiva para reintentar entregas de eventos con errores. Valores válidos:
|
|
DeadLetterQueue |
String |
No |
La cola de mensajes no entregados. Los eventos no entregados o que superan el número máximo de reintentos se envían a esta cola. Los tipos de cola compatibles son Message Service (MNS) y ApsaraMQ for RocketMQ. |
|
|
ARN |
String |
No |
|
El ARN de la cola de Message Service (MNS) o ApsaraMQ for RocketMQ que se usará como cola de mensajes no entregados. |
|
ParamList |
List<Param> |
Sí |
Una lista de parámetros para la transformación de eventos. |
|
|
resourceKey |
String |
Sí |
body |
El parámetro de destino que recibe los datos del evento transformado. |
|
form |
String |
Sí |
TEMPLATE |
El formato de transformación de eventos. Valores válidos:
|
|
value |
String |
Sí |
|
El valor o las expresiones para la transformación de eventos, dependiendo del |
|
template |
String |
No |
|
La plantilla para la transformación de eventos. |
Parámetros de respuesta
|
Parámetro |
Tipo |
Ejemplo |
Descripción |
|
RuleARN |
String |
|
El ARN de la regla de eventos. Este ARN se utiliza para la autorización. |
DingTalk
Para un destino de eventos de DingTalk, establezca Type en acs.dingtalk y Endpoint en la URL del webhook de DingTalk. La siguiente tabla describe los campos resourceKey en ParamList.
|
Clave de recurso |
Obligatorio |
Formulario |
Valor |
Plantilla |
|
URL |
Sí |
CONSTANT |
La URL de DingTalk. |
No aplica. |
|
SecretKey |
Sí |
CONSTANT |
La clave secreta. |
No aplica. |
|
Body |
Sí |
TEMPLATE |
Especifica las variables para rellenar la plantilla. |
La plantilla para el cuerpo del mensaje enviado a DingTalk. |
A continuación se muestra un ejemplo de 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
Para un destino de eventos de Direct Mail, establezca Type en acs.mail y Endpoint en acs:mail:${region}:${uid}. La siguiente tabla describe los campos resourceKey en ParamList.
|
ResourceKey |
Obligatorio |
Formulario |
Valor |
Plantilla |
|
Subject |
Sí |
CONSTANT |
El asunto del correo electrónico. |
No aplica. |
|
AccountName |
Sí |
CONSTANT |
La dirección del remitente. |
No aplica. |
|
AddressType |
Sí |
CONSTANT |
El tipo de dirección. |
No aplica. |
|
ReplyToAddress |
Sí |
CONSTANT |
La dirección de respuesta. |
No aplica. |
|
ToAddress |
Sí |
|
La dirección del destinatario. |
No aplica. |
|
IsHtmlBody |
Sí |
CONSTANT |
Especifica si el cuerpo del mensaje está en formato HTML. Valores válidos:
|
No aplica. |
|
Body |
Sí |
TEMPLATE |
Los pares clave-valor utilizados en la plantilla. |
La plantilla para el cuerpo del mensaje. |
El siguiente código muestra una configuración de 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",
"ResourceKey":"ToAddress",
"Form":"JSONPATH"
},
{
"Value":"true",
"ResourceKey":"IsHtmlBody",
"Form":"CONSTANT"
},
{
"Value":{
"Mobile":"$.data.mobile",
"Subject":"$.subject"
},
"ResourceKey":"Body",
"Form":"TEMPLATE",
"Template":{
"Code":"${subject}"
}
}
]
}
Short Message Service
Para un destino de eventos de Short Message Service, establezca Type en acs.sms y Endpoint en acs:sms:${region}:${uid}. La siguiente tabla describe los campos resourceKey en ParamList.
|
resourceKey |
Obligatorio |
Formulario |
Valor |
Plantilla |
|
PhoneNumbers |
Sí |
|
El número de celular. |
Ninguna |
|
SignName |
Sí |
CONSTANT |
El nombre de la firma. |
Ninguna |
|
TemplateCode |
Sí |
CONSTANT |
El código de la plantilla. |
Ninguna |
|
TemplateParam |
Sí |
TEMPLATE |
Los pares clave-valor para la plantilla. |
La plantilla para el cuerpo del mensaje. |
A continuación se muestra un ejemplo de JsonPath:
{
"Id":"KD20k9rpqDRXPq0SXXlqeT****",
"Type":"acs.sms",
"Endpoint":"acs:sms:cn-hangzhou:164901546557****",
"ParamList":[
{
"Value":"$.data",
"ResourceKey":"PhoneNumbers",
"Form":"JSONPATH"
},
{
"Value":"[For testing only] Alibaba Cloud Communications",
"ResourceKey":"SignName",
"Form":"CONSTANT"
},
{
"Value":" [For testing only] Alibaba Cloud Communications test template",
"ResourceKey":"TemplateCode",
"Form":"CONSTANT"
},
{
"Value":{
"Mobile":"$.data.mobile",
"Subject":"$.subject"
},
"ResourceKey":"TemplateParam",
"Form":"TEMPLATE",
"Template":{
"Code":"${subject}"
}
}
]
}
Function Compute
Para un destino de eventos de Function Compute, establezca Type en acs.fc.function y Endpoint en acs:fc:${region}:${uid}:services/${serviceName}.${Qualifier}/functions/${functionName}. La siguiente tabla describe los campos resourceKey en ParamList.
|
resourceKey |
Obligatorio |
Formulario |
Valor |
Plantilla |
|
serviceName |
Sí |
CONSTANT |
El nombre del servicio. |
Ninguna |
|
functionName |
Sí |
CONSTANT |
El nombre de la función. |
Ninguna |
|
Body |
Sí |
|
El contenido para el cuerpo del mensaje. |
La plantilla para el cuerpo del mensaje, especificada como pares clave-valor. Se usa cuando el formulario es TEMPLATE. |
|
Qualifier |
Sí |
CONSTANT |
La versión o alias del servicio. |
Ninguna |
|
InvocationType |
Sí |
CONSTANT |
El tipo de invocación. Valores válidos:
|
Ninguna |
|
DataFormat |
Sí |
CONSTANT |
El formato de los datos del evento. Valores válidos:
|
Ninguna |
El siguiente ejemplo muestra una configuración de 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"
}
]
}
Simple Message Queue
Para un destino de eventos de Simple Message Queue (formerly MNS), establezca Type en acs.mns.queue y Endpoint en acs:mns:${region}:${uid}:queues/${queue}. La siguiente tabla describe los campos resourceKey en ParamList.
|
ResourceKey |
Obligatorio |
Formulario |
Valor |
Plantilla |
|
queue |
Sí |
CONSTANT |
El nombre de la cola. |
No aplica. |
|
Body |
Sí |
|
El cuerpo del mensaje. Su contenido depende del parámetro Form. |
Si Form se establece en TEMPLATE, defina la plantilla aquí. |
Ejemplo de plantilla con 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."
}
]
}
Message Queue for Apache RocketMQ
Para un destino de evento de Message Queue for Apache RocketMQ, establezca Type en acs.rocketmq y Endpoint en acs:mq:${region}:${uid}:/instances/${instanceId}/topic/${topic}. A continuación se describen los campos resourceKey en ParamList.
|
Clave de recurso |
Obligatorio |
Formulario |
Valor |
Plantilla |
|
instance ID |
Sí |
CONSTANT |
El ID de la instancia. |
No aplica. |
|
topic |
Sí |
CONSTANT |
El nombre del topic. |
No aplica. |
|
message body |
Sí |
|
El cuerpo del mensaje. |
Si el parámetro de formulario está establecido en TEMPLATE, debe especificar la plantilla en este campo. |
|
properties |
No |
|
Las propiedades. |
No aplica. |
|
keys |
No |
|
Las claves. |
Si el parámetro de formulario está establecido en TEMPLATE, debe especificar la plantilla en este campo. |
|
tags |
No |
|
Las etiquetas. |
Si el parámetro de formulario está establecido en TEMPLATE, debe especificar la plantilla en este campo. |
A continuación se muestra un ejemplo de configuración de 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"
}
]
}
ApsaraMQ for RabbitMQ
Para un destino de evento de ApsaraMQ for RabbitMQ, establezca Type en acs.rabbitmq y Endpoint en acs:amqp:${region}:${uid}:/instances/${instanceId}/vhosts/${vhostName}/exchanges/${exchangeName}. A continuación se describen los campos resourceKey en ParamList.
|
Parámetro |
Obligatorio |
Formato |
Descripción |
Plantilla |
|
InstanceId |
Sí |
CONSTANT |
El ID de la instancia. |
No aplica. |
|
Vhost |
Sí |
CONSTANT |
El vhost. |
No aplica. |
|
TargetType |
Sí |
CONSTANT |
El tipo de destino. Nota
Puede especificar el parámetro Exchange o Queue, pero no ambos. |
No aplica. |
|
Exchange |
No. Obligatorio solo si TargetType está establecido en Exchange. |
CONSTANT |
El nombre del exchange. |
No aplica. |
|
Queue |
No. Obligatorio solo si TargetType está establecido en Queue. |
CONSTANT Nota
Puede especificar el parámetro Exchange o Queue, pero no ambos. |
El nombre de la cola. |
No aplica. |
|
Body |
Sí |
|
El cuerpo del mensaje. |
Si el formulario está establecido en TEMPLATE, debe definir la plantilla aquí. |
|
MessageId |
No. Se genera un ID de mensaje de forma predeterminada. |
|
El ID del mensaje. |
Si el formulario está establecido en TEMPLATE, debe definir la plantilla aquí. |
|
Properties |
No |
|
Las propiedades. |
Si el formulario está establecido en TEMPLATE, debe definir la plantilla aquí. |
Ejemplos de JsonPath:
Ejemplo 1: El Destination Type es 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"
}
]
}
Ejemplo 2: El Destination Type es 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"
}
]
}
Message Queue for Apache Kafka
Cuando selecciona ApsaraMQ for Kafka como destino de evento, el valor del parámetro de metadatos Type es acs.alikafka, el parámetro Endpoint especifica la URL configurada con el formato acs:alikafka:${regionId}:${accountId}:topics/${topic}, y el campo resourceKey en ParamList se describe en la siguiente tabla.
|
Clave de recurso |
Obligatorio |
Formulario |
Valor |
Plantilla |
|
instance ID |
Sí |
CONSTANT |
El ID de la instancia de Kafka. |
No aplica. |
|
topic |
Sí |
CONSTANT |
El nombre del topic. |
No aplica. |
|
value |
Sí |
|
El cuerpo del mensaje. |
Especifica el formato para la transformación de eventos. Valores válidos:
|
|
key |
Sí |
JSONPATH |
La clave del mensaje. |
Consulte la plantilla para Value. |
|
acks |
Sí |
CONSTANT |
El modo de confirmación. |
No aplica. |
El siguiente ejemplo muestra una configuración que utiliza 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"
}
]
}
Log Service (SLS)
Cuando selecciona Log Service (SLS) como destino de evento, el parámetro Type en los metadatos se establece en acs.sls. El parámetro Endpoint especifica la URL configurada con el formato acs:sls:${regionId}:${accountId}:project/${project}/logstore/${logstore}. A continuación se describen los campos resourceKey en ParamList.
|
Clave de recurso |
Obligatorio |
Formulario |
Valor |
Plantilla |
|
Project |
Sí |
constant |
El nombre del proyecto. |
No aplica. |
|
LogStore |
Sí |
constant |
El nombre del logstore. |
No aplica. |
|
Topic |
No |
|
El tema del registro. |
El formato de transformación de eventos. Están disponibles los siguientes formatos:
|
|
Body |
No |
|
El contenido del registro. |
Igual que para el parámetro Topic. |
|
ContentType |
Sí |
constant |
El tipo de contenido. |
Valores válidos:
|
|
RoleName |
Sí |
constant |
El nombre del rol. |
No aplica. |
|
ContentSchema |
No |
constant |
La estructura que define las claves y valores para los registros escritos en Log Service (SLS). |
En este ejemplo, |
Ejemplo de 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\"}}",
"resourceKey":"ContentSchema",
"form":"CONSTANT"
}
]
}
HTTP/HTTPS
Para un destino de eventos HTTP/HTTPS, establezca Type en http o https, y Endpoint en la URL de destino. A continuación se describen los campos resourceKey dentro de ParamList.
|
Parámetro |
Obligatorio |
Formulario |
Valor |
Plantilla |
|
url |
Sí |
CONSTANT |
La URL del endpoint. |
No aplica |
|
Body |
Sí |
|
Actualmente, los datos solo se pueden enviar en el cuerpo de una solicitud POST. Para usar encabezados o parámetros de consulta, consulte Manage API destinations. |
Si establece el parámetro |
|
Network |
Sí |
CONSTANT |
El tipo de red. Valores válidos:
|
No aplica |
|
VPCNameAndId |
Opcional. Este parámetro es obligatorio si Network se establece en |
CONSTANT |
La VPC donde reside el destino. Formato: |
No aplica |
|
VSwitchesNameAndId |
Opcional. Este parámetro es obligatorio si Network se establece en |
CONSTANT |
Los vSwitches de la VPC donde reside el destino. Puede especificar varios vSwitches. El valor debe ser una cadena JSON. Ejemplo: |
No aplica |
|
SecurityGroupNameAndId |
Opcional. Este parámetro es obligatorio si Network se establece en |
CONSTANT |
El security group de la VPC donde reside el destino. Formato: |
No aplica |
|
Token |
Opcional. |
CONSTANT |
El token que se usa para verificar la firma. La clave del encabezado es fija: |
No aplica |
Ejemplos de JsonPath
Ejemplo 1: establecer el network type en public network
{
"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"
}
]
}
Ejemplo 2: establecer el network type en VPC
{
"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"
}
]
}
Bases de datos
-
Cuando una base de datos RDS for MySQL actúa como destino de eventos, el valor del parámetro Type en los metadatos es
acs.rds.mysql. El formato de Endpoint esacs:rds:${region}:${uid}:dbinstance/${dbinstanceid}. A continuación se describen los campos resourceKey dentro de ParamList.Clave de recurso
Obligatorio
Formulario
Valor
Plantilla
InstanceId
Sí
CONSTANT
El ID de la instancia.
No aplica
DBName
Sí
CONSTANT
El nombre de la base de datos.
No aplica
AccountName
Sí
CONSTANT
El nombre de la cuenta.
No aplica
AccountPassword
Sí
CONSTANT
La contraseña de la cuenta.
No aplica
ExecuteSQL
Sí
-
ORIGINAL
-
CONSTANT
-
JSONPATH
-
TEMPLATE
Una instrucción SQL personalizada.
Si establece Form en TEMPLATE, configure la plantilla aquí.
VpcId
Sí
CONSTANT
El ID de la VPC.
No aplica
VSwitchIds
Sí
CONSTANT
Los ID de los vSwitches.
No aplica
SecurityGroupId
Sí
CONSTANT
El ID del security group.
No aplica
Ejemplo de 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****", "ResourceKey":"AccountPassword", "Form":"CONSTANT" }, { "Value":"{\n \"tableName\": \"customer\",\n \"column1\": \"$.data.tableName\",\n \"column1_value\": \"$.data.id\"\n}", "Template":"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" } ] } -
-
Cuando una base de datos MySQL autogestionada actúa como destino de eventos, el valor del parámetro Type en los metadatos es
mysql. El formato de Endpoint esdatabase endpoint${ConnectionStringAndPort}. A continuación se describen los campos resourceKey dentro de ParamList.Clave de recurso
Obligatorio
Formulario
Valor
Plantilla
ConnectionStringAndPort
Sí
CONSTANT
El endpoint de la base de datos.
No aplica
DBName
Sí
CONSTANT
El nombre de la base de datos.
No aplica
AccountName
Sí
CONSTANT
El nombre de la cuenta.
No aplica
AccountPassword
Sí
CONSTANT
La contraseña de la cuenta.
No aplica
ExecuteSQL
Sí
-
ORIGINAL
-
CONSTANT
-
JSONPATH
-
TEMPLATE
Una instrucción SQL personalizada.
No aplica
Network
Sí
CONSTANT
El tipo de red. Valores válidos:
-
PublicNetwork: la red pública.
-
PrivateNetwork: Virtual Private Cloud (VPC). Si selecciona esta opción, debe especificar la información de la VPC, el vSwitch y el security group.
No aplica
VpcId
Sí, si Network se establece en PrivateNetwork.
CONSTANT
El ID de la VPC.
No aplica
VSwitchIds
Sí, si Network se establece en PrivateNetwork.
CONSTANT
Los ID de los vSwitches.
No aplica
SecurityGroupId
Sí, si Network se establece en PrivateNetwork.
CONSTANT
El ID del security group.
No aplica
Ejemplo 1: Network configuration: public network
{ "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****", "ResourceKey":"AccountPassword", "Form":"CONSTANT" }, { "Value":"{\n \"tableName\": \"user\",\n \"column1\": \"$.data.tableName\",\n \"column1_value\": \"$.data.id\"\n}", "Template":"INSERT INTO ${tableName} \n (${column1}) VALUES('${column1_value}')", "ResourceKey":"ExecuteSQL", "Form":"TEMPLATE" } ] }Ejemplo 2: Network configuration: VPC
{ "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":"ConnectionStringAndPort", "Form":"CONSTANT" }, { "Value":"my-db", "ResourceKey":"DBName", "Form":"CONSTANT" }, { "Value":"dmsTest", "ResourceKey":"AccountName", "Form":"CONSTANT" }, { "Value":"Mydb****", "ResourceKey":"AccountPassword", "Form":"CONSTANT" }, { "Value":"{\n \"tableName\": \"user\",\n \"column1\": \"$.data.tableName\",\n \"column1_value\": \"$.data.id\"\n}", "Template": "INSERT INTO ${tableName} \n (${column1}) VALUES('${column1_value}')", "ResourceKey":"ExecuteSQL", "Form":"TEMPLATE" } ] } -
EventBridge
Para un destino de eventos EventBridge, establezca Type en acs.eventbridge y Endpoint en acs:eventbridge:${region}:${AccountId}:eventbus/${EventBusName}. A continuación se describen los campos resourceKey dentro de ParamList.
|
ResourceKey |
Obligatorio |
Formulario |
Valor |
Plantilla |
|
RegionId |
Sí |
CONSTANT |
El ID de la región del destino de eventos. |
No aplica. |
|
AccountType |
Sí |
CONSTANT |
El tipo de cuenta. Valores válidos:
|
No aplica. |
|
AccountId |
No. De forma predeterminada, se usa la cuenta actual. |
CONSTANT |
El ID de la cuenta de Alibaba Cloud de destino. Este parámetro es opcional si el parámetro AccountType se establece en SameAccount. |
No aplica. |
|
EventBusName |
Sí |
CONSTANT |
El nombre del bus de eventos de destino. |
No aplica. |
|
RAMRoleName |
No, pero es obligatorio para la entrega entre cuentas. |
CONSTANT |
El nombre del rol de RAM. Para obtener más información, consulte Route events to EventBridge. Este parámetro es opcional si el parámetro AccountType se establece en SameAccount. |
No aplica. |
|
Body |
Sí |
|
No aplica. |
No aplica. |
A continuación se muestran ejemplos de JsonPath:
Ejemplo 1: entregar un evento a un bus de eventos en la cuenta actual.
{
"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"
}
]
}
Ejemplo 2: entregar un evento a un bus de eventos en otra cuenta.
{
"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"
}
]
}
Activador de API
Cuando selecciona un destino de API como destino de eventos, el parámetro de metadatos Type es acs.api.destination y el formato de Endpoint es acs:api-destination:${region}:${AccountId}:name/${APIName}. A continuación se describen los campos resourceKey del parámetro ParamList.
|
resourceKey |
Obligatorio |
form |
value |
template |
|
Name |
Sí |
CONSTANT |
El nombre del destino de API. |
No aplica. |
|
HeaderParameters |
No |
TEMPLATE |
Los parámetros del encabezado de la solicitud. |
Plantilla definida por el usuario. |
|
BodyParameters |
No |
TEMPLATE |
Los parámetros del cuerpo de la solicitud. |
Plantilla definida por el usuario. |
|
QueryStringParameters |
No |
TEMPLATE |
Los parámetros de la cadena de consulta. |
Plantilla definida por el usuario. |
En el siguiente ejemplo se utiliza 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\"}",
"template":"{\"${headerKey1}\":\"${headerValue1}\",\"${headerKey2}\":\"${headerValue2}\",\"${headerKey3}\":\"${headerValue3}\"}"
},
{
"resourceKey":"BodyParameters",
"form":"TEMPLATE",
"value":"{\"bodyKey1\":\"name\",\"bodyValue1\":\"$.data.name\"}",
"template":"{\"${bodyKey1}\":\"${bodyValue1}\"}"
},
{
"resourceKey":"QueryStringParameters",
"form":"TEMPLATE",
"value":"{\"queryKey1\":\"name\",\"queryValue1\":\"$.data.name\",\"queryKey2\":\"$.data.name\",\"queryValue2\":\"name\"}",
"template":"{\"${queryKey1}\":\"${queryValue1}\",\"${queryKey2}\":\"${queryValue2}\"}"
}
]
}
CloudFlow
Cuando establece el destino del evento en CloudFlow, el parámetro Type en los metadatos se configura como acs.fnf y el parámetro Endpoint utiliza el formato acs:fnf:${region}:${AccountId}:flow/${flow}. A continuación se describe el campo resourceKey dentro del parámetro ParamList.
|
resourceKey |
Obligatorio |
form |
value |
template |
|
FlowName |
Sí |
CONSTANT |
El nombre del flujo. |
No aplica |
|
ExecutionName |
No |
|
El nombre de la ejecución. |
El formato de transformación de eventos. Valores válidos:
|
|
Input |
No |
JSONPath |
La entrada de la ejecución. |
Consulte la descripción de la opción TEMPLATE del parámetro ExecutionName. |
|
RoleName |
Sí |
CONSTANT |
El nombre del rol. |
No aplica |
A continuación se muestra un ejemplo de configuración de 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"
}
]
}
Container Service for Kubernetes (ACK)
Cuando el destino del evento es Container Service for Kubernetes, el parámetro Type en los metadatos es acs.k8s, el valor de Endpoint es kubernetes y el significado del campo resourceKey en ParamList se muestra en la siguiente tabla.
|
Clave de recurso |
Obligatorio |
Form |
Value |
template |
|
KubeConfig |
Sí |
CONSTANT |
El archivo de configuración del clúster. |
Ninguna |
|
YamlContent |
Sí |
CONSTANT |
La configuración YAML. |
El formato de transformación de eventos. Valores válidos:
|
|
Network |
Sí |
CONSTANT |
El tipo de acceso de red. |
Ninguna |
|
QPSLimit |
Sí |
CONSTANT |
El límite de QPS. |
Ninguna |
A continuación se muestra un ejemplo de configuración de 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",
"resourceKey":"KubeConfig"
},
{
"form":"CONSTANT",
"resourceKey":"YamlContent",
"value":"test2"
}
]
}
Serverless App Engine
Cuando selecciona Serverless App Engine como destino del evento, el parámetro Type en los metadatos es acs.sae y el formato de Endpoint es http://sae.cn-huhehaote.aliyuncs.com/pop/v1/sam/job/execJob. La siguiente tabla describe el campo resourceKey en ParamList.
|
Parámetro |
Obligatorio |
Formato |
Valor |
Plantilla |
|
RegionId |
Sí |
CONSTANT |
El ID de la región. |
El formato para la transformación de eventos. Valores válidos:
|
|
AppId |
Sí |
CONSTANT |
El ID de la plantilla de trabajo. |
Consulte la descripción en la columna de plantilla para el parámetro RegionId. |
|
EventId |
Sí |
JSONPATH |
El ID del evento. |
Consulte la descripción en la columna de plantilla para el parámetro RegionId. |
|
Parameters |
Sí |
CONSTANT |
Los parámetros CommandArgs y Envs para la operación execJob. |
Consulte la descripción en la columna de plantilla para el parámetro RegionId. |
El siguiente ejemplo muestra una configuración de 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"
}
]
}
Análisis de eventos
Para un destino de evento de Análisis de eventos, el parámetro Type es acs.eventbridge.olap y Endpoint utiliza el formato ${SchemaURI}. La siguiente tabla describe los parámetros resourceKey en ParamList.
|
resourceKey |
Obligatorio |
form |
value |
template |
|
UseSchema |
Sí |
CONSTANT |
Especifica el método para vincular y asignar esquemas. Valores válidos:
|
No aplica. |
|
SchemaGroup |
Sí |
CONSTANT |
El nombre del grupo de esquemas. |
No aplica. |
|
SchemaID |
Sí |
CONSTANT |
El ID del esquema. |
No aplica. |
|
SchemaVersion |
Sí |
CONSTANT |
La versión del esquema. |
No aplica. |
A continuación se muestra un ejemplo de 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",
"resourceKey":"SchemaID",
"form":"CONSTANT"
},
{
"value":"1",
"resourceKey":"SchemaVersion",
"form":"CONSTANT"
}
]
}
DataHub
Cuando el destino del evento es DataHub, el parámetro de metadatos Type es acs.datahub, el formato de Endpoint es acs:datahub:${region}:${AccountId}:project/${project}/topic/${topic} y el significado del campo resourceKey en ParamList se describe en la siguiente tabla.
|
Parámetro |
Obligatorio |
Formato |
Descripción |
Plantilla |
|
Project |
Sí |
CONSTANT |
El nombre del proyecto. |
No aplica. |
|
Topic |
Sí |
CONSTANT |
El nombre del tema. |
No aplica. |
|
TopicType |
Sí |
CONSTANT |
El tipo de datos del tema. Valores válidos:
|
No aplica. |
|
TopicSchema |
Este parámetro es obligatorio si TopicType está configurado como TUPLE. No es necesario especificar este parámetro si TopicType está configurado como BLOB. |
TEMPLATE |
El esquema del tema. |
TEMPLATE. Ejemplo:
En la plantilla, |
|
RoleName |
Sí |
CONSTANT |
El nombre del rol. |
No aplica. |
El siguiente ejemplo muestra una configuración de 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\"}",
"Template":"{\"k1\":\"${k1-0}\",\"k2\":\"${k2-1}\",\"k3\":\"${k3-2}\"}",
"ResourceKey":"TopicSchema"
},
{
"Form":"CONSTANT",
"Value":"AliyunEventBridgeDataHubRole-2HwuVf****",
"ResourceKey":"RoleName"
}
]
}