运行程序来监控文件infiteley

时间:2013-07-07 06:31:27

标签: java tomcat servlets

我试图无限地运行一个监视日志文件的程序,并向数据库更新已发生的错误并跟踪某些错误的最大出现次数,以便在发生一次错误时发送电子邮件。我设法做了适当的监听和更新的程序并发送了电子邮件,但我不知道我将如何能够启动程序无限运行,因为它将监视一个实时系统。另一方面,我有一个Web UI,显示监控程序更新的信息,换句话说,即使我的Web UI在浏览器中关闭,我也不希望更新程序停止运行我想要更新程序继续运行。我想将它们分开,以便彼此独立运行。我正在为我的前端使用Servlets和JSP。我正在考虑在我的servlet中启动更新程序,但我在想它何时关闭,更新程序将停止运行,这是我想要避免的。任何类型的建议都非常受欢迎,任何可用的工具都允许运行程序,只有在服务器停机时才会停止并提前感谢。

NB: I wanted to use log4j to append errors to database to allow me easier 
updating but the system wasn't designed to accommodate my requirements so
I have no choice but to use this approach.

1 个答案:

答案 0 :(得分:0)

假设Web UI显示从数据库中检索到的信息,并且如果要将Web UI与监视程序分开,我建议保持运行单独的本机Java进程,以持续监视日志文件并更新数据库。该数据库将用作两个Web UI和Java进程之间的通信媒介。

这样,Java进程将保持独立于Web UI,并且可以无限期地运行。

这样想 -

1. Java process updates the database as it monitors the log file
2. The Web UI reading from database whenever it is up.

Java进程可能还可以与Web UI服务进行通信,以提供一些心跳来承认它已经启动。

希望这有帮助。