杀死已被捕获OutOfMemoryError的应用程序

时间:2011-06-01 11:54:29

标签: java weblogic ear sunos

我在Solaris 10环境中有weblogic。我的应用程序已被捕获OutOfMemoryError。

我的问题是从shell脚本中删除糟糕的应用程序构建,而不是调整java或我的代码。

使用Linux / BSD和Windows我可以为我的特定应用程序执行pgrep并执行kill -SIGTERM然后kill -SIGKILL。 但是在SunOS上我无法对它们进行pgrep(ps(1)只返回前80个符号)。

在重新部署之间,是否有人知道如何在不喝杯咖啡或喝咖啡的情况下做到这一点?

2 个答案:

答案 0 :(得分:1)

在JRockit VM的情况下使用JVM参数-XXexitOnOutOfMemory或在Sun JVM的情况下使用-XX:OnOutOfMemoryError="kill -9 %p"。这需要添加到weblogic容器的启动JVM args中。

另请参阅Metalink说明1074735.1以获取JRockit JVM的所有非标准JVM选项的列表

答案 1 :(得分:1)

如果你想要ps输出超过80个字符,你可以使用/usr/ucb/ps -alxww