COMO detectar quando o JBOSS está totalmente operacional e pronto para aceitar implementações?

2

Eu tenho uma simples aplicação web de "verificação de integridade" que desejo implementar em um servidor do JBoss EAP assim que ele for iniciado. Mas o que "começou" significa? Se o meu script que chama o jboss cli for lançado logo depois que o JBoss relatar que está pronto, recebo uma mensagem dizendo

  {"WFLYDC0074: Operation failed or was rolled back on all servers. Server failures:" => {"server-group" => {"main-server-group" => {"host" => {"master" => {"master-1-server-1" => "WFLYCTL0379: System boot is in process; execution of remote management operations is not currently available"}}}}}}

Como posso detectar que o JBoss está realmente pronto para lidar com implantações?

Como alternativa, existe um mecanismo pelo qual eu possa executar automaticamente algo na inicialização?

    
por Steve Cohen 22.03.2017 / 15:46

1 resposta

0

#!/bin/bash

while true
  do
    wildflyStarted=$(grep -ic "Wildfly.*started in.*ms.*Started.*of.*services" /opt/wildfly/standalone/log/server.log)
    if [[ "$wildflyStarted" -eq "1" ]]; then
      break;
    else
      sleep 1;
    fi
  done

while true
  do
    ejbcaStatus=$(/opt/wildfly/bin/jboss-cli.sh -c --commands="cd deployment,cd ejbca.ear,read-attribute status")
    if [[ "$ejbcaStatus" -eq "OK" ]]; then
      break;
    else
      sleep 5;
    fi
  done

Este script funcionou para mim.

    
por 19.10.2018 / 03:29

Tags