Pular para o conteúdo principal

Executar Processo Unix

Configuração atual da tarefa Unix Kill Process no Workflow Designer
  • Tipo de Tarefa: ssh_killprocess

A Tarefa Executar Processo Unix permite terminar um processo através do PID (Process ID), executando a operação na máquina local (modo Padrão) ou num servidor remoto via SSH.

Permite parar processos em execução em sistemas Unix/Linux.

Configuração

A configuração define o modo de execução (local ou remoto) e os parâmetros necessários para identificar o processo a ser terminado. Os campos podem ser preenchidos manualmente ou através de parâmetros e variáveis do fluxo de trabalho.

Conexão ao Servidor

  • Modo de conexão: Define a origem das credenciais utilizadas para a conexão. Pode assumir três modos operacionais:
  • Padrão: O comando é executado na máquina local.
  • Manual: Permite o preenchimento manual dos parâmetros de conexão.
  • Ambiente: Utiliza um ambiente de conexão pré-configurado. Neste modo, é exibido um menu que lista as conexões disponíveis com base no papel associado ao Workflow.
  • Endereço IP: Endereço IP do servidor remoto.
  • Hostname: Nome de host do servidor remoto.
  • Usuário: Nome de utilizador usado para estabelecer a conexão SSH.
  • Palavra-passe: Palavra-passe associada ao utilizador de conexão.
  • Porta: Porta utilizada para a conexão SSH (o valor padrão é 22).

Executar comando como outro utilizador

Ao ativar esta caixa de seleção, é possível executar a pesquisa com um utilizador diferente daquele utilizado para a conexão SSH.

  • Utilizador: Nome do utilizador com quem o comando será executado.
  • Palavra-passe: Palavra-passe do utilizador usado para a execução do comando.

Detalhes do Processo

  • Sinal: O sinal de terminação a ser enviado ao processo. A escolha do sinal determina o "modo" como se pede ao processo para parar:
  • SIGTERM: (Padrão) Sinal de terminação padrão. Pede gentilmente ao processo para fechar, permitindo-lhe completar as operações de limpeza. É o método preferido.
  • SIGKILL: Sinal de terminação forçada. Interrompe imediatamente o processo sem lhe dar a possibilidade de fazer limpeza. Deve ser usado quando SIGTERM não funciona.
  • SIGINT: Sinal de interrupção (equivalente a pressionar Ctrl+C).
  • SIGQUIT: Sinal de "quit" pelo teclado.
  • SIGHUP: Sinal de "hang up", frequentemente usado para recarregar a configuração de um demónio.
  • PID Processo: Identificador numérico (Process ID) do processo a ser terminado. É possível especificar vários PIDs separando-os com um espaço.

Parâmetros de Saída

Ao final da execução, a Tarefa expõe os seguintes parâmetros de saída :

  • result: Contém uma mensagem de texto que descreve o resultado da operação ou uma mensagem de erro (ex: “Missing server address”).
  • resultJson: Representa o resultado da execução da tarefa em formato JSON, incluindo informações gerais, configurações e detalhes da execução.
  • exitStatus: Retorna o código de saída do comando kill executado no servidor remoto. Tipicamente, um valor de 0 indica que o comando foi executado com sucesso.

Exemplo de parâmetro resultJson

{
"run_info": {
"status": "Completed",
"run_result": "Success"
},
"output_parameters": {
"exitStatus": "0"
}
}

Notas Importantes

  • O utilizador usado para a ligação SSH (ou o utilizador especificado em "Executar como") deve ter as permissões necessárias para enviar sinais ao processo alvo.
  • O PID de um processo pode ser recuperado dinamicamente através de outros Tasks, como "Unix Search Process" ou executando um comando ps através de um Task SSH genérico, tornando todo o processo de paragem completamente automatizado.
  • Se for utilizada a autenticação por chaves SSH, é necessário que a chave pública esteja registada no servidor remoto. Se a opção “Executar comando como outro utilizador” estiver ativada, o comando é executado com um utilizador diferente do principal da ligação SSH.