ExecuteProcess

 

Olá, seja bem-vindo a mais uma aula do curso Desenvolvimento com Apache Nifi.

Nesta aula vamos falar sobre o processor ExecuteProcess.

Este Processor executa um comando do sistema operacional especificado pelo usuário e grava a saída desse comando em um FlowFile. Se o comando for de longa execução, o Processor pode gerar os dados parciais em um intervalo especificado. Quando esta opção é usada, espera-se que a saída esteja em formato textual, pois normalmente não faz sentido dividir dados binários em intervalos arbitrários baseados em tempo.

Abaixo temos uma lista com as suas propriedades:

  • Command : "Especifica o comando a ser executado; se for fornecido apenas o nome de um executável, ele deve estar no ambiente PATH do usuário.
  • Command Arguments : "Os argumentos para fornecer ao executável são delimitados por espaço em branco. O espaço em branco pode ser escapado colocando-o entre aspas duplas."
  • Batch Duration : Se espera-se que o processo seja de longa duração e produza saída textual, uma duração de lote pode ser especificada para que a saída seja capturada por esse período de tempo e um FlowFile seja enviado com os resultados e um novo FlowFile seja iniciado, em vez de esperar que o processo termine antes de enviar os resultados
  • Redirect Error Stream : Se true, redirecionará qualquer saída de fluxo de erro do processo para o fluxo de saída. Isso é particularmente útil para processos que gravam extensivamente no fluxo de erros ou para solução de problemas.
  • Working Directory : "O diretório a ser usado como o diretório de trabalho atual ao executar o comando

  • Argument Delimiter : Delimitador a ser usado para separar argumentos para um comando [padrão: espaço]. Deve ser um único caractere.

Os relacionamentos permitidos para direcionar ou terminar um flowfile são:

  • success= Qualquer FlowFile obtido com sucesso do sistema de arquivos será transferido para este relacionamento.