我正在编写一个C#应用程序来控制windows tomcat服务。在运行服务后tomcat完成启动时,我需要一种方法来获取某种事件。 (即部署所有应用程序。)
我可以读取日志文件并等待“服务器启动”消息,但似乎必须有一个不那么混乱的方式。我知道您可以使用Java注册生命周期监听器,但我想不出用C#做类似事情的方法。
有谁知道用C#监控tomcat的好方法?提前谢谢。
编辑:如果我不清楚,只是检查状态是不够的,因为它会在部署应用程序时启动时报告“正在运行”并且它不是
答案 0 :(得分:0)
除非有理由你不能这样做(权限等),否则我只会向服务发出一个Web请求并等到它返回。
即使您不想授予托管服务权限的帐户使用相关应用程序,您仍然可以创建一个只有它有权使用的应用程序,并让它调用它。
答案 1 :(得分:0)
我最终在Java中编写了一个tomcat包装器,它充当生命周期监听器。 C#应用程序启动java程序并通过命名管道接收生命周期消息。