Todos los productos
Search
Centro de documentos

EventBridge:Parámetros de destino de eventos

Última actualización: Sep 05, 2026

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:

  • ENABLE: La regla está habilitada.

  • DISABLE: La regla está deshabilitada.

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í

acs.mns.queue

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

acs:mns:cn-hangzhou:123456789098****:queues/myqueue

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:

  • BACKOFF_RETRY: Estrategia de reintento con retroceso. El sistema reintenta hasta 3 veces. El intervalo entre reintentos varía aleatoriamente entre 10 y 20 segundos.

  • EXPONENTIAL_DECAY_RETRY: Estrategia de reintento con decaimiento exponencial. El sistema reintenta hasta 176 veces durante un día. El intervalo de reintento aumenta exponencialmente hasta 512 segundos. Los intervalos específicos son: 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 512, ..., 512 segundos. Los últimos 167 reintentos utilizan un intervalo de 512 segundos.

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

acs:mns:cn-hangzhou:123456789098****:/queues/rule-deadletterqueue o acs:mq:cn-hangzhou:123456789098****:/instances/myinstance/topic/mytopic

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:

  • ORIGINAL: Evento completo. No es necesario definir value ni template. EventBridge no transforma el evento y enruta la estructura completa de CloudEvents nativos al destino de eventos. Para más información, consulte Complete event.

  • JSONPath: Evento parcial. No es necesario definir una template. Solo necesita definir un value. EventBridge usa JSONPath para extraer parámetros de eventos en CloudEvents y enruta el contenido especificado al destino de eventos. Para más información, consulte Partial event.

    A continuación se muestra un ejemplo de value.

    $.data.name
  • CONSTANT: Constante. No es necesario definir una template. Solo necesita definir un value. Independientemente del contenido del evento, EventBridge enruta únicamente la constante definida por value al destino de eventos. Para más información, consulte Constant.

    El valor de ejemplo para value es el siguiente.

    "test1"
  • TEMPLATE: Plantilla. Debe definir value y template. EventBridge usa JsonPath para extraer parámetros de un CloudEvent, almacena los valores de los parámetros en value y luego enruta el evento al destino según el formato definido en template. Para más información, consulte Template.

    El ejemplo de value es el siguiente.

    {
        "name":"$.data.name",
        "constant":"Please handle this promptly."
    }

    Un valor de ejemplo para template es el siguiente.

    The instance named ${name} is broken. ${constant}

value

String

Sí

{"key": "value"}

El valor o las expresiones para la transformación de eventos, dependiendo del form.

template

String

No

The value of ${key} is ${value}!

La plantilla para la transformación de eventos.

Parámetros de respuesta

Parámetro

Tipo

Ejemplo

Descripción

RuleARN

String

acs:eventbridge:cn-hangzhou:123456789098****:eventbus/default/rule/MNSRule

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í

  • CONSTANT

  • JSONPATH

La dirección del destinatario.

No aplica.

IsHtmlBody

Sí

CONSTANT

Especifica si el cuerpo del mensaje está en formato HTML. Valores válidos:

  • true: El cuerpo del mensaje está en formato HTML.

  • false: El cuerpo del mensaje no está en formato HTML.

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í

  • CONSTANT

  • JSONPATH

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í

  • ORIGINAL

  • CONSTANT

  • JSONPATH

  • TEMPLATE

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:

  • Sync: Invoca la función de forma síncrona.

  • Async: Invoca la función de forma asíncrona.

Ninguna

DataFormat

Sí

CONSTANT

El formato de los datos del evento. Valores válidos:

  • Object

  • ObjectList

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í

  • ORIGINAL

  • CONSTANT

  • JSONPath

  • TEMPLATE

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í

  • ORIGINAL

  • JSONPATH

  • CONSTANT

  • TEMPLATE

El cuerpo del mensaje.

Si el parámetro de formulario está establecido en TEMPLATE, debe especificar la plantilla en este campo.

properties

No

  • JSONPATH

  • TEMPLATE

Las propiedades.

No aplica.

keys

No

  • JSONPATH

  • CONSTANT

  • TEMPLATE

Las claves.

Si el parámetro de formulario está establecido en TEMPLATE, debe especificar la plantilla en este campo.

tags

No

  • JSONPATH

  • CONSTANT

  • TEMPLATE

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í

  • ORIGINAL

  • JSONPATH

  • CONSTANT

  • TEMPLATE

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.

  • JSONPATH

  • CONSTANT

  • TEMPLATE

El ID del mensaje.

Si el formulario está establecido en TEMPLATE, debe definir la plantilla aquí.

Properties

No

  • JSONPATH

  • TEMPLATE

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í

  • CONSTANT

  • ORIGINAL

  • JSONPATH

  • TEMPLATE

El cuerpo del mensaje.

Especifica el formato para la transformación de eventos. Valores válidos:

  • ORIGINAL: un evento completo. No es necesario definir los parámetros value y template. EventBridge enruta la estructura CloudEvents original y completa al destino del evento sin transformación. Para obtener más información, consulte Complete event.

  • JSONPATH: evento parcial. No es necesario definir una template. Solo necesita definir un value. EventBridge utiliza JSONPath para extraer parámetros de eventos en CloudEvents y enruta el contenido de evento especificado al destino del evento. Para obtener más información, consulte Partial event.

    Ejemplo para el parámetro value:

    $.data.name
  • CONSTANT: una constante. No es necesario definir una template. Solo necesita definir un value. Independientemente del contenido del evento, EventBridge solo enruta la constante definida por value al destino del evento. Para obtener más información, consulte Constants.

    Ejemplo para el parámetro value:

    "test1"
  • TEMPLATE: una plantilla. Defina tanto los parámetros value como template. EventBridge usa las expresiones JsonPath en el parámetro value para extraer valores de un evento CloudEvents. Luego sustituye estos valores en el parámetro template antes de enrutar el resultado al destino del evento. Para obtener más información, consulte Template.

    Ejemplo para el parámetro value:

    {
        "name":"$.data.name",
        "constant":"Please deal with it promptly."
    }

    Ejemplo para el parámetro template:

    Instance ${name} is broken. ${constant}

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

  • Constant

  • Template

  • JSONPath

El tema del registro.

El formato de transformación de eventos. Están disponibles los siguientes formatos:

  • Original: evento completo. No es necesario definir los parámetros value y template. EventBridge enruta la estructura CloudEvents original y completa al destino del evento sin ninguna transformación. Para obtener más información, consulte Complete Event.

  • JSONPath: evento parcial. No es necesario definir el parámetro template y solo necesita definir el parámetro value. EventBridge utiliza una expresión JSONPath para extraer parámetros de un evento CloudEvents y enruta el contenido de evento especificado al destino del evento. Para obtener más información, consulte Partial Event.

    Ejemplo para el parámetro value:

    $.data.name
  • Constant: constante. No es necesario definir el parámetro template y solo necesita definir el parámetro value. Independientemente del contenido del evento, EventBridge enruta solo la constante definida en el parámetro value al destino del evento. Para obtener más información, consulte Constant.

    Ejemplo para el parámetro value:

    "test1"
  • Template: plantilla. Debe definir tanto los parámetros value como template. EventBridge extrae parámetros de un evento CloudEvents mediante las expresiones JsonPath definidas en value, utiliza estos parámetros como variables para rellenar la template y enruta el contenido resultante al destino del evento. Para obtener más información, consulte Template.

    Ejemplo para el parámetro value:

    {
        "name":"$.data.name",
        "constant":"Please handle this promptly."
    }

    Ejemplo para el parámetro template:

    Instance ${name} is broken. ${constant}

Body

No

  • Constant

  • Original

  • JSONPath

  • Template

El contenido del registro.

Igual que para el parámetro Topic.

ContentType

Sí

constant

El tipo de contenido.

Valores válidos: JSON y KeyValue. Valor predeterminado: JSON.

  • Si selecciona JSON, Log Service (SLS) escribe el contenido del evento que especifique en el parámetro Body en la clave content.

  • Si selecciona KeyValue, la estructura que especifique en ContentSchema determina las claves y valores escritos en Log Service (SLS).

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).

{
    "Key_1":{
        "form":"CONSTANT",
        "value":"myKey01"
    },
    "Value_1":{
        "form":"JSONPATH",
        "value":"$.data.myValue01"
    }
}

En este ejemplo, Key_1 y Value_1 definen un par clave-valor.

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í

  • ORIGINAL

  • CONSTANT

  • JSONPATH

  • TEMPLATE

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 form en TEMPLATE, debe definir la plantilla correspondiente en este campo. Las variables de la plantilla se derivan del parámetro value.

Network

Sí

CONSTANT

El tipo de red. Valores válidos:

  • PublicNetwork: la red pública.

  • PrivateNetwork: una VPC. Si selecciona este valor, debe configurar la VPC, el vSwitch y el security group.

No aplica

VPCNameAndId

Opcional. Este parámetro es obligatorio si Network se establece en PrivateNetwork.

CONSTANT

La VPC donde reside el destino. Formato: VPCName+"/" + VPCId.

No aplica

VSwitchesNameAndId

Opcional. Este parámetro es obligatorio si Network se establece en PrivateNetwork.

CONSTANT

Los vSwitches de la VPC donde reside el destino. Puede especificar varios vSwitches. El valor debe ser una cadena JSON. Ejemplo: [VSwitchName+"/"+VSwitchId , VSwitchName+"/"+VSwitchId ] .

No aplica

SecurityGroupNameAndId

Opcional. Este parámetro es obligatorio si Network se establece en PrivateNetwork.

CONSTANT

El security group de la VPC donde reside el destino. Formato: SecurityGroupName+"/" + SecurityGroupId.

No aplica

Token

Opcional.

CONSTANT

El token que se usa para verificar la firma. La clave del encabezado es fija: "x-eventbridge-signature-token". El valor del encabezado corresponde al valor que usted especifique.

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 es acs: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 es database 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:

  • AnotherAccount: otra cuenta de Alibaba Cloud.

  • SameAccount: la cuenta actual de Alibaba Cloud.

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í

ORIGINAL: entrega el evento completo.

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

  • JSONPath

  • CONSTANT

  • TEMPLATE

El nombre de la ejecución.

El formato de transformación de eventos. Valores válidos:

  • ORIGINAL: Transmite el evento completo. No es necesario definir los parámetros value o template. EventBridge enruta toda la estructura nativa de CloudEvents al destino sin transformación. Para obtener más información, consulte complete event.

  • JSONPath: Evento parcial. No es necesario definir un template. Solo necesita definir un value. EventBridge usa JSONPath para extraer parámetros de los eventos en CloudEvents y enruta el contenido especificado al destino del evento. Para obtener más información, consulte Partial event.

    Ejemplo para el parámetro value:

    $.data.name
  • CONSTANT: Una constante. No es necesario definir un template. Solo necesita definir un value. Sin importar el contenido del evento, EventBridge enruta únicamente la constante definida por value al destino del evento. Para obtener más información, consulte Constant.

    Ejemplo para el parámetro value:

    "test1"
  • TEMPLATE: Crea contenido personalizado a partir de una plantilla. Debe definir tanto los parámetros value como template. EventBridge utiliza las expresiones JsonPath en el parámetro value para extraer datos de un evento y luego usa esos datos para rellenar el template antes de enrutarlo al destino. Para obtener más información, consulte template.

    Ejemplo para el parámetro value:

    {
        "name":"$.data.name",
        "constant":"Please handle this promptly."
    }

    Ejemplo para el parámetro template:

    The instance ${name} has failed. ${constant}

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:

  • ORIGINAL: Evento completo. No es necesario especificar value o template. EventBridge enruta la estructura completa y nativa de CloudEvents al destino del evento sin transformación. Para obtener más información, consulte complete event.

  • JSONPATH: Evento parcial. No es necesario definir un template. Solo necesita definir un value. EventBridge usa JSONPath para extraer parámetros de los eventos en CloudEvents y enruta el contenido especificado al destino del evento. Para obtener más información, consulte Partial event.

    Ejemplo de value:

    $.data.name
  • CONSTANT: Constante. No es necesario definir un template. Solo necesita definir un value. Sin importar el contenido del evento, EventBridge enruta únicamente la constante definida en value al destino del evento. Para obtener más información, consulte Constants.

    Ejemplo de value:

    "test1"
  • TEMPLATE: Plantilla. Debe especificar tanto value como template. EventBridge utiliza las expresiones JsonPath en value para extraer datos de un evento. Luego sustituye estos datos en las variables del template y enruta el resultado al destino del evento. Para obtener más información, consulte template.

    Ejemplo de value:

    {
        "name":"$.data.name",
        "constant":"Please deal with it timely."
    }

    Ejemplo de template:

    The instance is broken, whose name is ${name}, ${constant}

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:

  • ORIGINAL: Evento completo. No es necesario definir value o template. EventBridge no transforma el evento y enruta la estructura completa de CloudEvents nativo al destino del evento. Para obtener más información, consulte Complete event.

  • JSONPath: Evento parcial. No es necesario definir un template. Solo necesita definir un value. EventBridge usa JSONPath para extraer parámetros de los eventos en CloudEvents y enruta el contenido especificado al destino del evento. Para obtener más información, consulte Partial event.

    El ejemplo para value es el siguiente.

    $.data.name
  • CONSTANT: Una constante. No es necesario definir un template. Solo necesita definir un value. Sin importar el contenido del evento, EventBridge enruta únicamente la constante definida por value al destino del evento. Para obtener más información, consulte Constant.

    Un valor de ejemplo para value es el siguiente.

    "test1"
  • TEMPLATE: La plantilla. Debe definir los parámetros value y template. EventBridge usa JsonPath para extraer parámetros de un evento CloudEvents, almacena los valores de los parámetros en value y luego enruta los datos al destino del evento según el formato definido en template. Para obtener más información, consulte Template.

    El ejemplo para value es el siguiente.

    {
        "name":"$.data.name",
        "constant":"Please address it promptly."
    }

    Un valor de ejemplo para template es el siguiente.

    The instance named ${name} is broken. ${constant}

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:

  • FromEvent: Utiliza el esquema del campo dataschema del evento.

  • FromRule: Utiliza el esquema de la regla.

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:

  • TUPLE: Admite registros estructurados con varias columnas.

  • BLOB: Admite bloques únicos de datos binarios.

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:

{
    "resourceKey":"TopicSchema",
    "value":"{\"k1-0\":\"a\",\"k2-1\":\"$.data.name\",\"k3-2\":\"v\"}",
    "form":"TEMPLATE",
    "template":"{\"k1\":\"${k1-0}\",\"k2\":\"${k2-1}\",\"k3\":\"${k3-2}\"}"
}

En la plantilla, k representa el i-ésimo campo del tema. Su valor es una variable (por ejemplo, ${k1-0}) definida en el parámetro value. Esta variable puede ser una constante o una expresión JSONPath que extrae datos del evento.

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"
        }
    ]
}