Pare automaticamente o Tomcat se a inicialização do contexto raiz falhar

Pare automaticamente o Tomcat se a inicialização do contexto raiz falhar

Não consigo descobrir se é possível configurar o Tomcat para parar quando a inicialização do contexto ROOT falhar. Como minha instância do Tomcat hospeda apenas um aplicativo como contexto ROOT, não faz sentido manter o Tomcat em execução no estado inativo se a inicialização deste webapp falhar.

Eu sei que isso não é a coisa ideal a fazer, por exemplo, uma arquitetura de microsserviço baseada em Spring Boot fornece isso imediatamente, mas não podemos migrar para Spring Boot agora. No entanto, preciso de algum tipo de tratamento automático de falhas porque estamos agrupando imagens do Docker e gostaria de ver isso no nível do contêiner se algo fatal acontecesse dentro desse contêiner (o contêiner foi encerrado).

Responder1

Você pode ter algo para analisar os logs no crontab (e procurar a inicialização raiz específica) e interromper o serviço ou enviar um e-mail. Seguro e fácil de implementar.

Responder2

Eu encontrei uma solução elegante. Já que estamos usandomaestro-ngpara orquestrar contêineres Docker, podemos usá-loverificação do ciclo de vidaesperar que o ponto final conhecido do serviço da web retorne HTTP 200 OK antes de passar para o próximo contêiner. Podemos presumir com segurança que algo deu errado se essa condição nunca for atendida.

informação relacionada