我编写了一个 bash 脚本,以便在触发时将 Web 应用程序自动部署到 tomcat 容器。这很简单:
- 转储当前数据库以进行备份
- 关闭当前tomcat进程
- 删除 web-application 文件夹
- 用新的替换war文件
- 再次启动tomcat
但是,现在我想有一个后备。如果启动过程中出现问题,将恢复数据库并重新部署旧的war文件。
我的问题是我不知道网络应用程序何时无法启动。我的一个实现是我将检查我的 Web 应用程序的日志文件的大小,如果一段时间后它没有增加(这意味着没有写入任何内容),那么系统应该知道部署失败,我们应该恢复旧的网络应用程序。但是,这有点脏,我不确定如果我的日志文件在那个时候正确滚动会发生什么。
tomcat 是否有任何机制来支持 web 应用程序的启动失败检测?