O Pipeline Executor realiza chamadas síncronas ou assíncronas a outros pipelines já implantados. Utilizando abordagem síncrona, é possível obter o resultado do pipeline invocado.
Dê uma olhada nos parâmetros de configuração do componente:
- Operation: SYNC para chamadas síncronas ao pipeline; e ASYNC para chamadas assíncronas ao pipeline.
- Pipeline Name: nome do pipeline a ser invocado.
- Version Major: Major Version do pipeline a ser invocado.
- Payload: payload a ser enviado na invocação do pipeline.
- Timeout: tempo máximo de execução do pipeline.
- Expiration: tempo de permanência da mensagem em fila ao tentar executar o pipeline (em milissegundos).
- Fail On Error: se a opção estiver ativada, a execução do pipeline com erro será interrompida; do contrário, a execução do pipeline continua, mas o resultado vai mostrar um valor falso para a propriedade success.
Fluxo de mensagens
Entrada
Não se espera nenhum payload específico na entrada desse componente. A entrada será configurada dinamicamente no campo “Payload” conforme a necessidade do pipeline a ser invocado.
Saída
{
"operation": "SYNC",
"pipelineName": "pipeline-example",
"versionMajor": 1,
"success": true,
"payload": {},
"pipelineResponse": {}
}
- operation: operação selecionada, SYNC ou ASYNC
- pipelineName: nome do pipeline invocado
- versionMajor: versão major do pipeline invocado
- success: se a chamada foi feita com sucesso
- payload: payload utilizado para invocar o pipeline configurado
- pipelineResponse: resposta do pipeline executado. Essa propriedade é retornada apenas na operação SYNC.
Pipeline Executor em Ação
Veja abaixo como o componente se comporta em determinada situação e a sua respectiva configuração.
- Realizando uma chamada assíncrona
Operation: ASYNC
Pipeline Name: nome do pipeline a ser invocado
Version Major: 1
Payload: {}
Timeout: 20000
Expiration: 30000
Fail On Error: false
No cenário acima, será feita uma chamada assíncrona ao pipeline configurado e o fluxo atual seguirá normalmente sem esperar a resposta do pipeline invocado. Você poderá ver a execução e os logs da chamada desse pipeline na tela de logs da Plataforma.
Saída
{
"operation": "SYNC",
"pipelineName": "nome do pipeline a ser invocado",
"versionMajor": 1,
"success": true,
"payload": {}
}
- Realizando uma chamada síncrona
Operation: ASYNC
Pipeline Name: nome do pipeline a ser invocado
Version Major: 1
Payload: {}
Timeout: 20000
Expiration: 30000
Fail On Error: false
Saída
{
"operation": "SYNC",
"pipelineName": "nome do pipeline a ser invocado",
"versionMajor": 1,
"success": true,
"payload": {},
"pipelineResponse": {}