Todos os produtos
Search
Central de documentação

Function Compute:Configure um gatilho de serviço da Alibaba Cloud

Última atualização: Jun 29, 2026

Um gatilho de serviço da Alibaba Cloud invoca uma função em resposta a eventos de serviços como Cloud Monitor, ActionTrail, ECS e IoT Platform. Este tópico usa um evento do ECS como exemplo para demonstrar como crie um gatilho, configure seu parâmetro de entrada e escrever o código da função no console do Function Compute.

Como funciona

Ao criar um gatilho no console do Function Compute, o sistema cria automaticamente uma regra de evento chamada FunctionName-TriggerName no barramento de eventos default do EventBridge. Após a criação, visualize as informações do gatilho no console do Function Compute e consulte a regra de evento gerada automaticamente no console do EventBridge. Quando o barramento de eventos recebe um evento do tipo especificado proveniente da origem, ele invoca a função associada ao gatilho.

Observações de uso

  • O barramento de eventos default do EventBridge aceita no máximo 10 regras de evento. Ao atingir esse limite, não é possível criar novos gatilhos para serviços da Alibaba Cloud.

  • O Serverless Devs não oferece suporte à criação de gatilhos para serviços da Alibaba Cloud.

Pré-requisitos

Etapa 1: Crie um gatilho

  1. Faça login no console do Function Compute. No painel de navegação à esquerda, escolha Function Management > Functions.

  2. Na barra de navegação superior, selecione uma região. Na página Functions, clique em na função desejada.

  3. Na página de detalhes da função, clique em na aba Triggers e, em seguida, clique em Create Trigger.

  4. No painel Create Trigger, configure os parâmetros e clique em OK.

    Parâmetro

    Ações

    Exemplo

    Trigger Type

    Selecione ECS.

    ECS

    Name

    Insira um nome personalizado para o gatilho.

    ecs-trigger

    Version or Alias

    O valor padrão é LATEST. Para criar um gatilho para uma versão ou alias diferente, alterne primeiro para ela no canto superior direito da página de detalhes da função. Para mais informações, consulte Gerenciar versões e Gerenciar aliases.

    LATEST

    Event Type

    Escolha Custom Event Types ou Select All Event Types. Caso opte por Custom Event Types, selecione um ou mais tipos de evento para o ECS.

    Disk Retained

    Event Pattern Content

    Este parâmetro é somente leitura. O conteúdo é preenchido automaticamente após a seleção de um tipo de evento. Para mais detalhes sobre padrões de eventos, consulte Padrões de eventos.

    {
        "source": [
            "acs.ecs"
        ],
        "type": [
            "ecs:Disk:ConvertToPostpaidCompleted"
        ]
    }

    Invocation Method

    Defina o método de invocação da função. Valores válidos:

    • Sync Invocation: Método padrão. Após um evento acionar a invocação, o Function Compute aguarda a conclusão e retorna o resultado. Para mais informações, consulte invocação síncrona.

    • Async Invocation: Recomendado para funções com alta latência. Assim que o evento dispara a função, o Function Compute retorna uma resposta imediata e garante pelo menos uma execução bem-sucedida, sem retornar o resultado da execução. Para mais informações, consulte invocação assíncrona.

    Synchronous Invocation

    Trigger State

    Define se o gatilho estará ativo logo após a criação. Por padrão, a opção Enable Trigger vem selecionada.

    Enable Trigger

    Após a criação, o gatilho aparecerá na lista Trigger Name. Para modifique ou exclua o gatilho, consulte Gerenciar gatilhos.

Etapa 2: Configure o parâmetro de entrada

A função recebe eventos do ECS como parâmetro de entrada event. Passe manualmente um exemplo de event para a função a fim de simular um gatilho.

  1. Na aba Code da página de detalhes da função, clique em no ícone image.png ao lado de Test Function e selecione Configure Test Parameters na lista suspensa.

  2. No painel Configure Test Parameters, selecione Create New Test Event ou Modify Existing Test Event, insira o nome e o conteúdo do evento e clique em OK.

    O código abaixo ilustra o formato do parâmetro event. Para consultar o conteúdo de eventos de todas as origens oficiais, veja Origens de eventos oficiais da Alibaba Cloud.

    {
        "datacontenttype": "application/json;charset=utf-8",
        "aliyunaccountid": "123456789098****",
        "data": {
            "result": "accomplished",
            "diskId": "d-bp11ba7acc69nkta****"
        },
        "subject": "acs:ecs:cn-hangzhou:123456789098****:disk/d-bp11ba7acc69nkta****",
        "source": "acs.ecs",
        "type": "ecs:Disk:ConvertToPostpaidCompleted",
        "aliyunpublishtime": "2021-01-18T03:58:31.762Z",
        "specversion": "1.0",
        "aliyuneventbusname": "default",
        "id": "70c0414c-b260-4923-b584-1d6e5646****",
        "time": "2021-01-18T11:58:31.125+08:00",
        "aliyunregionid": "cn-hangzhou",
        "aliyunpublishaddr": "172.25.XX.XX"
    }

    A tabela a seguir descreve os parâmetros presentes no payload do evento.

    Parâmetro

    Tipo

    Exemplo

    Descrição

    datacontenttype

    String

    application/json;charset=utf-8

    Indica o formato de conteúdo do parâmetro data. O parâmetro datacontenttype aceita apenas o formato application/json.

    aliyunaccountid

    String

    123456789098****

    ID da conta Alibaba Cloud.

    data

    Struct

    {
            "result": "accomplished",
            "diskId": "d-bp11ba7acc69nkta****"
    }

    Conteúdo do evento. Trata-se de um objeto JSON cujo conteúdo depende do serviço que originou o evento. Os CloudEvents podem incluir contexto do produtor do evento, encapsulado no campo data.

    subject

    String

    acs:ecs:cn-hangzhou:123456789098**:disk/d-bp11ba7acc69nkta**

    Assunto do evento.

    source

    String

    acs.ecs

    Origem do evento.

    type

    String

    ecs:Disk:ConvertToPostpaidCompleted

    Tipo do evento.

    aliyunpublishtime

    Timestamp

    2021-01-18T03:58:31.762Z

    Momento em que o evento foi recebido.

    specversion

    String

    1.0

    Versão da especificação CloudEvents.

    aliyuneventbusname

    String

    default

    Nome do barramento de eventos que recebeu o evento.

    id

    String

    70c0414c-b260-4923-b584-1d6e5646****

    ID do evento.

    time

    Timestamp

    2021-01-18T11:58:31.125+08:00

    Horário em que o evento ocorreu.

    aliyunregionid

    String

    cn-hangzhou

    Região onde o evento foi recebido.

    aliyunpublishaddr

    String

    172.25.XX.XX

    Endereço IP do servidor que recebeu o evento.

Etapa 3: Escrever e testar o código

Depois de criar o gatilho do ECS, escreva e teste o código da função para confirmar seu funcionamento correto. Em um cenário real, quando um evento do ECS chega ao Function Compute via EventBridge, o gatilho invoca a função automaticamente.

  1. Na página de detalhes da função, acesse a aba Code, escreva seu código no editor e clique em Deploy.

    Este tópico usa código Node.js como exemplo.

    'use strict';
    /*
    To enable the initializer feature,
    implement the initializer function as follows:
    exports.initializer = (context, callback) => {
      console.log('initializing');
      callback(null, '');
    };
    */
    exports.handler = (event, context, callback) => {
      console.log("event: %s", event);
      // Parse the event parameter and process the event.
      callback(null, 'return result');
    }
  2. Clique em Test Function.

Mais informações

Para modifique ou exclua um gatilho, consulte Gerenciar gatilhos.