允许自动生成堆转储

使用此任务来启用自动化堆转储生成。 使用 Sun Java™ 虚拟机 (JVM) (包括在 HP-UX 和 Solaris 操作系统上运行的 WebSphere® Application Server ) 时,不支持此功能。 您需要研究在 Sun JVM 上执行堆转储,或者致电 IBM® 支持人员。

准备工作

虽然仅为响应检测到的内存泄漏而生成堆转储,但您必须了解生成堆转储可能会在几分钟内对 WebSphere Application Server 产生严重的性能影响。

有关此任务

[IBM i]要帮助您在发生内存泄漏检测时分析内存泄漏问题,请使用 Heap Analysis Tools for Java™。使用 Heap Analysis Tools 组件 (也称为 Heap Analyzer) 可执行一段时间内的 Java 应用程序堆分析和对象创建概要分析 (大小和标识)。 Heap Analyzer 提供了下列信息:
  • Java 虚拟机 (JVM) 堆增长或大小
  • 所创建的对象的信息,其中包括对象类型、对象数目和大小以及对象堆大小
  • 用于内存大小调整和性能注意事项的应用程序 "堆足迹"
  • 当以概要分析方式运行时,提供了每个快照的调用堆栈信息,从而使您能够了解所创建的对象与应用程序函数之间的对应关系。

[IBM i]堆分析器工具是 iDoctor for IBM i 性能监视工具套件的组件

[IBM i]使用堆监视器功能来监视 WebSphere Application Server 概要文件相对于池大小的 JVM 堆大小。

[AIX Solaris HP-UX Linux Windows]自动堆转储生成支持,仅在 IBM Software Development Kit 上可用,用于分析 AIX®, Linux®和 Windows 操作系统上的内存泄漏问题。

[AIX Solaris HP-UX Linux Windows]在相应的时间手动生成堆转储可能很困难。 为了在进行内存泄漏检测时帮助您分析内存泄漏问题,提供了一些自动化堆转储生成支持。 此功能仅适用于 AIX, Linux和 Windows 操作系统上的 IBM Software Development Kit。

[AIX Solaris HP-UX Linux Windows]大多数内存泄漏分析工具对两个堆转储执行不同形式的评估。 在检测可疑的内存情况时,将在相应的时间自动生成两个堆转储。 通常理想状态是一进行问题检测时就执行初始堆转储。 在确定泄漏了一定量的内存后,监视内存使用情况并进行另一次堆转储,所以可比较堆转储以找出泄漏源。

[z/OS][AIX Solaris HP-UX Linux Windows]为了帮助您在发生内存泄漏检测时分析内存泄漏问题,提供了一些自动堆转储生成支持。

[z/OS][AIX Solaris HP-UX Linux Windows]要启用自动堆转储生成支持,请在管理控制台中执行以下步骤:

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

过程

  1. 单击管理控制台导航树中的 服务器> 应用程序服务器
  2. 单击 server_name >性能和诊断顾问程序 配置
  3. 单击运行时选项卡。
  4. 选中 启用自动堆转储收集 复选框。
  5. 单击“确定”。
[z/OS][AIX Solaris HP-UX Linux Windows]

结果

完成这些步骤后,系统将自动生成堆转储。

[z/OS][AIX Solaris HP-UX Linux Windows]重要信息: 为了保留磁盘空间,如果 WebSphere Application Server 主目录中已存在超过 10 个堆转储,那么 性能和诊断顾问程序 不会执行堆转储。 根据应用程序服务器上的堆大小以及工作负载的不同,执行堆转储的开销可能非常大,并且可能会暂时影响系统性能。

[z/OS][AIX Solaris HP-UX Linux Windows]自动堆转储生成过程会动态地响应各种内存情况,并仅在需要时生成转储。 当堆内存太低时,不能执行堆转储,或者无法完成堆转储生成。

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

下一步做什么?

您可以通过检查SystemOut.log文件或运行时消息。 有关更多信息,请参阅 查看性能和诊断顾问程序建议 主题。 如果检测到内存泄漏并且要查找堆转储,请参阅 查找和分析堆转储 主题。
注: 本主题引用一个或多个应用程序服务器日志文件。 作为建议的替代方法,您可以将服务器配置为使用高性能可扩展日志记录 (HPEL) 日志和跟踪基础结构,而不是在分布式系统和 IBM i 系统上使用 SystemOut.logSystemErr.logtrace.logactivity.log 文件。 您还可以将 HPEL 与本机 z/OS® 日志记录工具结合使用。 如果您正在使用 HPEL,那么可以从服务器概要文件 bin 目录使用 LogViewer 命令行工具来访问所有日志和跟踪信息。 有关使用 HPEL 的更多信息,请参阅 有关使用 HPEL 对应用程序进行故障诊断的信息。