如果你想生成正常的javacore在启动期间诊断问题,这很有用。
尤其是如果server在启动不久就立刻挂起的情况下,推荐使用本方法。或者其他方法不起作用或在系统负载特别重的情况下,也建议使用此方法。
此方法使用另一种方法在接受 Ctrl + Break 键盘组合以触发 javacore 的模式下启动应用程序服务器。此方法需要一些准备步骤,并且需要重新启动受影响的服务器。此方法的优点是生成 javacore 不需要使用其他工具(例如管理控制台或 wsadmin 工具)的额外开销。
- 打开命令提示符。
- 导航到profile目录下的bin目录(<WAS_HOME>\profiles<PROFILE_NAME>\bin)。
- 根据不同的was类型,执行下面命令之一:
应用程序服务器:
startServer.bat SERVER_NAME -script
NodeAgents:
startNode.bat -script
DMGR:
startManager.bat -script
这将会在当前目录下生成一个新的名为start_<SERVER_NAME>.bat
的脚本。
- 停止需要生成javacore的服务器。
- 使用新生成的脚本,启动服务器(直接运行,不加参数)。
- 脚本运行后,会出现一个控制台窗口,如下图:
- 发出Crtl+Break,屏幕上输出应立即显示生成了javacore。
- 根据需要,重复步骤7。
- 记住生成的javacore的位置,并收集。
警告
不要关闭弹出的控制台窗口,这会直接结束server的运行!!!
请在可以停止应用的时间窗口再关闭控制台。
请在可以停止应用的时间窗口再关闭控制台。
如果需要停止服务器,可以使用stopServer.bat脚本,或者直接按Ctrl+C立即终止(慎用!)