Uso de um gatilho de DMS (para RabbitMQ)
Esta seção descreve como criar um gatilho de DMS (para RabbitMQ) para uma função. Atualmente, apenas o modo de troca fanout é suportado. Depois que um gatilho de DMS é usado, o FunctionGraph pesquisa periodicamente novas mensagens em um tópico específico vinculado à troca de uma instância de RabbitMQ e passa as mensagens como parâmetros de entrada para invocar funções. Para obter detalhes sobre a origem do evento de DMS (para RabbitMQ), consulte Fontes de eventos suportadas.
Pré-requisitos
- Você criou uma função. Para mais detalhes, veja Criação de uma função a partir do zero.
- Você ativou o acesso à VPC. Para mais detalhes, veja Configuração da rede.
- Uma instância de RabbitMQ foi criada. Para obter detalhes, consulte Como comprar uma instância.
- As regras do grupo de segurança da instância foram configuradas corretamente.
- Na seção Network na página de guia Basic Information, clique no nome do grupo de segurança.
- Clique na guia Inbound Rules para exibir as regras de entrada do grupo de segurança.
- SSL desativado
Para o acesso intra-VPC, o acesso de entrada através da porta 5672 deve ser permitido.
Para acesso público, o acesso de entrada através da porta 15672 deve ser permitido.
- SSL ativado
Para o acesso intra-VPC, o acesso de entrada através da porta 5671 deve ser permitido.
Para acesso público, o acesso de entrada através da porta 15671 deve ser permitido.
- SSL desativado
Criação de um gatilho de RabbitMQ
- Efetue log-in no Console do FunctionGraph. No painel de navegação, escolha Functions > Function List.
- Clique na função a ser configurada para ir para a página de detalhes da função.
- Escolha Configuration > gatilho e clique em Create gatilho.
Figura 1 Criação de um gatilho
- Defina os seguintes parâmetros:
- Trigger Type: Selecione DMS (para RabbitMQ).
- *Instance: Selecione uma instância de RabbitMQ.
- *Password: Digite a senha da instância de RabbitMQ.
- *Exchange: Digite o nome da troca a ser usada.
- VM: Insira um nome de VM personalizado.
- *Batch Size: Defina o número de mensagens a serem recuperadas de um tópico a cada vez.
- Clique em OK.
![](https://support.huaweicloud.com/intl/pt-br/ugobs-obs-functiongraph/public_sys-resources/note_3.0-pt-br.png)
Depois que o acesso à VPC for ativado, você precisará configurar as permissões de sub-rede correspondentes para o grupo de segurança de RabbitMQ. Para obter detalhes sobre como configurar o acesso à VPC, consulte Configuração da rede.
Configurando um evento de DMS (para RabbitMQ) para acionar a função
- Efetue log-in no Console do FunctionGraph. No painel de navegação, escolha Functions > Function List.
- Clique na função a ser configurada para ir para a página de detalhes da função.
- Na página de detalhes da função, selecione uma versão.
- Na página de guia Code, clique em Test. A caixa de diálogo Configure Test Event é exibida.
- Defina os parâmetros descritos em Tabela 1 e clique em Save.
Tabela 1 Informações sobre o evento de teste Parâmetro
Descrição
Configurar evento de teste
Você pode optar por criar um evento de teste ou editar um existente.
Use a opção padrão Create new test event.
Modelo de evento
Selecione rabbitmq-event-template.
Nome do evento
O nome do evento pode conter de 1 a 25 caracteres e deve começar com uma letra e terminar com uma letra ou dígito. Apenas letras, dígitos, sublinhados (_), e hífens (-) são permitidos. Por exemplo, kafka-123test.
Dados do evento
O sistema carrega automaticamente o modelo de evento de RabbitMQ integrado, que é usado neste exemplo sem modificações.
O modelo de evento é o seguinte:
{ "event_version": "v1.0", "event_time": 1576737962, "trigger_type": "RABBITMQ", "region": "xx-xxxx-1", "records": [{ "messages": [ "rabbitmq message1", "rabbitmq message2", "rabbitmq message3", "rabbitmq message4", "rabbitmq message5" ], "instance_id": "81335d56-b9fe-4679-ba95-7030949cc76b", "exchange": "exchange-test" }] }
- Clique em Test. O resultado do teste de função é exibido.