我在Solaris 10环境中有weblogic。我的应用程序已被捕获OutOfMemoryError。
我的问题是从shell脚本中删除糟糕的应用程序构建,而不是调整java或我的代码。
使用Linux / BSD和Windows我可以为我的特定应用程序执行pgrep并执行kill -SIGTERM
然后kill -SIGKILL
。
但是在SunOS上我无法对它们进行pgrep(ps(1)只返回前80个符号)。
在重新部署之间,是否有人知道如何在不喝杯咖啡或喝咖啡的情况下做到这一点?
答案 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