[AIX Solaris HP-UX Linux Windows][z/OS]

以手动方式生成堆转储

使用此任务来手动生成堆转储。如果使用的 Sun Java™ 虚拟机 (JVM) 包括在 HP-UX 和 Solaris 操作系统上运行的 WebSphere® Application Server,那么不支持此功能。

开始之前

[Windows][AIX][Linux][z/OS]虽然只有在检测到内存泄漏时才会生成堆转储,但是,您必须知道,生成堆转储时会严重影响 WebSphere Application Server 的性能,并且时间长达数分钟。因此,在以手动方式生成多个堆转储以便进行内存泄漏分析时,请确保泄漏的对象达到相当数目后才创建另一个堆转储。这样,问题确定工具就能够确定内存泄漏的根源。

关于此任务

您可能想以手动方式生成堆转储,以便对内存泄漏进行分析。由于生成堆转储的开销较大,因此,您可能还要指定生成堆转储的特定时间。在 WebSphere 中的 JVM 上,可以通过对 WebSphere Application Server 受管 Bean(MBean,这些是特殊的 Java Bean)执行 generateHeapDump 操作来以手动方式生成堆转储。

[Solaris][HP-UX]在 WebSphere Application Server 中的 Java 虚拟机 (JVM) 上,无法自动生成堆转储。

WebSphere Application Server wsadmin 工具提供运行脚本的能力。您可以使用 wsadmin 工具来管理 WebSphere Application Server 安装、配置、应用程序部署和服务器运行时操作。WebSphere Application Server 仅支持 Jacl 和 Jython 脚本编制语言。要了解关于 wsadmin 工具的更多信息,请参阅启动 wsadmin 脚本编制客户机信息。

过程

  1. 确定是要使用 wsadmin 还是管理控制台来生成堆转储。
  2. 要使用 wsadmin 来生成堆转储,请完成以下步骤:
    1. 启动 wsadmin 脚本编制客户机。 要运行脚本命令,您有多个选项,这些选项包括以交互方式运行脚本命令以及在概要文件中运行脚本命令。
    2. 对 JVM MBean 调用 generateHeapDump 操作。
      • 使用 Jacl:
        <wsadmin> set objectName [$AdminControl queryNames 
        WebSphere:type=JVM,process=<servername>,node=<nodename>,*] 
        
        <wsadmin> $AdminControl invoke $objectName generateHeapDump
      • 使用 Jython:
        objectName = AdminControl.queryNames('WebSphere:type=JVM,process=<servername>,node=<nodename>,*')
        print AdminControl.invoke(objectName, 'generateHeapDump')
        表 1. 变量的描述. 下表说明了先前提及的命令中的变量。
        变量 描述
        $ 是使用其值替换变量名的 Jacl 运算符
        AdminControl 是一个对象,它启用 WebSphere 服务器进程中运行的 MBean 的操作
        <servername> 是服务器的名称,将在该服务器上生成堆转储
        <nodename> <servername> 所属的节点
        invoke 是命令
        generateHeapDump 是要调用的操作
  3. 要使用管理控制台来生成堆转储,请完成以下步骤:
    1. 启动管理控制台。
    2. 在导航窗格中,单击故障诊断 > Java 转储和核心
    3. 选择要为其生成堆转储的 server_name
    4. 单击堆转储,以便为指定的服务器生成堆转储。

下一步做什么

运行 wsadmin 命令后,将返回堆转储的文件名。有关查找堆转储的更多信息,请参阅查找和分析堆转储主题。在创建了一两个堆转储之后,可使用许多内存泄漏问题确定工具来分析问题。“用于 Java™ 的内存转储诊断”是一个脱机工具,用于诊断造成 Java 堆内存泄漏的根本原因。请参阅诊断内存不足错误和 Java 堆内存泄漏信息。


指示主题类型的图标 任务主题



时间戳记图标 最近一次更新时间: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=tprf_generatingheapdumps
文件名:tprf_generatingheapdumps.html