确保 tomcat 和 WebApp 均已成功启动

发布于 2024-12-08 06:03:23 字数 203 浏览 0 评论 0原文

是否可以确定 Tomcat 是否已成功启动并且部署到它的所有 Web 应用程序也已成功启动?

当然我可以抓取Tomcat的日志文件,但是有更简单的方法吗?

我需要能够以编程方式监视 tomcat,因为我需要启动大约 15 个 Tomcat(它们可以串行启动)。我不怕编写 bash 脚本并监视每个日志的输出以查找成功消息或任何错误消息,但肯定有更优雅的方法吗?

Is it possible to determine if a Tomcat has started successfully AND all of the webapps deployed to it have also started successfully?

Of course I can trawl the Tomcat's log file, but is there an easier way?

I need to be able to monitor the tomcat programmatically, since I need to start about 15 Tomcats (they can be started in serial). I'm not afraid to write a bash script and monitor the output of each log looking for the success message or any error messages, but surely there's a more elegant way?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

素罗衫 2024-12-15 06:03:23

确保服务启动并运行的最准确方法是通过客户端访问该服务。

对于 Tomkat 上的 WebApps,最好的方法是使用 cron 作业来访问每个应用程序的某些页面,以指示应用程序的状态(运行、关闭等)。

我说这是最好的方法有很多原因:

  1. 它可以使用应用程序本身使用的相同端口和协议
  2. 它允许您“按需”检查,因此如果您的心跳应用程序需要“更快地跳动”以更快地捕获故障,你可以打开它
  3. 它允许你在另一台服务器上拥有心跳进程,以防止你正在测试的服务器崩溃并减少心跳通知进程
  4. 它允许你轻松地扩展心跳进程和您必须访问的服务器数量。
  5. 它允许每个应用程序定义一个“状态”页面,心跳进程可以访问该页面并扫描该页面以检查应用程序内部的许多内容(如果需要),而不需要执行相同的操作,而是通过查看日志文件来完成。

The most accurate way to ensure a service is up and running is to hit that service with a client.

In the case of WebApps on Tomkat, a cron job that hits some page of each app that indicates the application's status (up, down, etc.) is the best way to do this.

I say it's the best way for a number of reasons:

  1. It can use the same ports and protocols the application itself uses
  2. It allows you to check "on demand", so if your heartbeat application needs to "beat faster" to catch failures faster, you can turn it up
  3. It allows you to have the heartbeat process on another server, to protect against the server you are testing crashing and taking the heartbeat notification process down with it
  4. It allows you to scale out easily, both the heartbeat process, and the number of servers you have to hit.
  5. It allows each application to define a "status" page that the heartbeat process can hit and scan to check a number of things internal to the application, if needed, without needing to do the same thing, but by looking at log files.
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文