Como escrever um script para verificar se o Jboss acabou de começar

1

Eu tenho que escrever um script para rodar o JBoss e também verificar e informar que o JBoss acabou de iniciar a inicialização do sistema. O código abaixo está relacionado à verificação da peça. Por favor, corrija os erros lógicos e de sintaxe que fiz.

Registro de log Estou grep ing:

2017-10-27 12:04:13,933 INFO [org.jboss.bootstrap.microcontainer.ServerImpl] (main) JBoss (Microcontainer) [5.1.0.GA (build: SVNTag=JBoss_5_1_0_GA date=200905221053)] Started in 1m:1s:804ms

!/bin/bash

maxLoops=30 numLines=200 timeToSleep=3 success=0 Server_Log=$(/path_for_log/server.log)

        for (( try=0; try < maxLoops; ++try ));
        do
           atail='tail -n $numLines $Server_Log | grep "Started" | awk {'print $12'}'

        if [[ $atail == "Started" ]]
                then
                        success=1
                        break
              fi
                sleep $timeToSleep
        done
        if (( success ));
        then
                echo "Jboss started successfully"
        else
                echo "successful starting of Jboss is not ensured"

fi

Por favor, encontre o erro abaixo que eu estou recebendo durante a execução do script como root:

$ ./verify_jboss.sh:
 line 3: /log_path/server.log: Permission denied
    
por Prabash 27.10.2017 / 12:00

2 respostas

1

Se possível, verifique se o Jboss está escutando na porta:

if curl -Is http://localhost:80/ > /dev/null
then
   echo OK
else
   echo FAIL
fi

Você só precisa de um programa externo: curl

Editar :

Outra abordagem é testar um conteúdo específico, digamos Contact na página da web. Somente se o servidor estiver em execução e houver uma conexão com o banco de dados, ele responderá corretamente.

if grep -qc "Contact" <(curl -s http://localhost/)
then
    echo OK
else
    echo FAIL
fi

A construção <(curl ...) (Substituição do Processo) será vista por grep como um arquivo. curl tem a opção -s para o modo silencioso para evitar o progresso da transferência. grep tem a opção -qc para suprimir a saída e contar a ocorrência do texto correspondente. Se uma ou mais contagens de Contact o resultado for OK (código de saída 0).

    
por 27.10.2017 / 12:12
0

Você pode tentar fazer uma solicitação e verificar algum conteúdo específico:

curl_result=$(curl -Is https://www.yoururl.com)

if  echo "$curl_result" | grep  "some_text_generated_by_JBOSS"; then
  echo "Server ok" 
fi
    
por 27.10.2017 / 13:38

Tags