Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/326.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何从AIX kornshell脚本确定JVM是否仍然处于活动状态_Java_Jvm - Fatal编程技术网

Java 如何从AIX kornshell脚本确定JVM是否仍然处于活动状态

Java 如何从AIX kornshell脚本确定JVM是否仍然处于活动状态,java,jvm,Java,Jvm,我正在编写一些系统监控脚本,其中一个要求是测试JVM是否仍然处于活动状态。碰巧该进程仍然存在,不报告为睡眠,但处于非活动状态。有没有办法通过AIX kornshell脚本来确定这一点?或者我需要用JMX或类似的东西进行java编码吗?你需要在你的应用程序中有一些逻辑,外部应用程序(例如shell脚本)可以从中判断你的应用程序是否正常运行 例如,如果您知道您有输入,您可以检查日志文件,查看是否有对应输出的日志语句 你可以让你的应用程序更新某种心跳。JMX可以工作,但更简单的方法也可以。可能会在文件

我正在编写一些系统监控脚本,其中一个要求是测试JVM是否仍然处于活动状态。碰巧该进程仍然存在,不报告为睡眠,但处于非活动状态。有没有办法通过AIX kornshell脚本来确定这一点?或者我需要用JMX或类似的东西进行java编码吗?

你需要在你的应用程序中有一些逻辑,外部应用程序(例如shell脚本)可以从中判断你的应用程序是否正常运行

例如,如果您知道您有输入,您可以检查日志文件,查看是否有对应输出的日志语句

你可以让你的应用程序更新某种心跳。JMX可以工作,但更简单的方法也可以。可能会在文件中写入日期和时间,并让脚本检查该文件。但是,你如何确保你的应用程序没有崩溃,只有心跳还在运行

可能有心跳服务向你的应用程序发送虚拟测试数据?你的应用程序会正常处理这些虚拟数据,但只会忽略结果。您如何知道您的应用正在运行,但心跳服务已崩溃?:)


这不是一项琐碎的任务,但是即使您的实现不是“防核武器”的,您也可以获得良好的结果。

当您说JVM是“非活动的”时,这意味着什么?您必须首先定义“活动的”。这取决于JVM中运行的应用程序正在做什么。等待客户端连接的web服务器是否处于活动状态?在这种情况下,它是一个独立的高容量java进程。激活时,它每秒处理大约1500个事务。当它不处于活动状态时,它每秒处理0个事务。啊,好的,我将开始检查日志文件的更改,因为系统负载很高,应该每隔几秒钟对日志进行一次更改。除此之外,我刚刚发现aixps命令能够显示进程状态(active、cancelled、idle等)。这是否也可以用来确定JVM是否确实在做什么,或者它是否崩溃了?