我需要检查 linux 服务器中的 GlassFish 日志文件,并检查它是否有特定错误,我为我发送了一封电子邮件。有一种方法可以让我创建一个每 2 分钟执行一次的网络服务吗?我怎么能做到?我正在使用 Java 和 GlassFish。
问问题
79 次
2 回答
1
如果您使用的是 Java EE 6 或 Java EE 7,则可以尝试以下操作:
@Singleton
@Startup
public class MonitorBean {
@Schedule(hour = "*", minute = "*/2", second = "0", persistent = false)
public void searchErrorInLog() {
// Read the log file
// Looking for some error string
// If found, send mail
}
}
也许您应该节省最后一个事件的时间以避免重复。作为单个实例,在应用程序服务器运行时维护状态。另一种解决方案是使用Quartz。
也可以看看:
于 2013-09-05T17:59:34.747 回答
1
对我来说,每隔一段时间通过 GlassFish 对其自己的日志文件进行无状态扫描似乎有点矫枉过正。除非您有限制访问服务器的约束,否则我会设置一个单独的进程,例如http://www.crypt.gen.nz/logsurfer/来实时监控日志文件,而开销要低得多(而且工作量更少在你身边 :)。
于 2013-09-05T23:49:52.870 回答