WEB开发网
开发学院操作系统Linux/Unix AIX 上的 Java 故障诊断:AIX 核心转储 阅读

AIX 上的 Java 故障诊断:AIX 核心转储

 2008-09-06 08:18:10 来源:WEB开发网   
核心提示: Javacore 与 AIX 核心Javacore 文件是 Java 应用程序在某一时间的文本表示形式,Javacore 文件由 Java 进程在以下时刻创建: 用户在 Java 进程上运行命令 kill -3,AIX 上的 Java 故障诊断:AIX 核心转储(2), 进程由于致命错误/

Javacore 与 AIX 核心

Javacore 文件是 Java 应用程序在某一时间的文本表示形式。Javacore 文件由 Java 进程在以下时刻创建:

用户在 Java 进程上运行命令 kill -3。

进程由于致命错误/异常而中止或终止。

有关 Javacore 文件的特定信息,请参见 IBM JVM Diagnostic Guide。

对于某些情况,提供同一进程所产生的 Javacore 文件集合可帮助了解应用程序的行为。当进程挂起或达到不稳定条件时,进程可能无法创建 Javacore 文件。

AIX 核心 是进程某一时间在内存中的二进制表示形式。从该核心中,您可以获得比 Javacore 中所报告的更多的信息,再加上 Javacore 文件所没有报告的其他进程信息。因此,在大多数情况下,支持团队会请求 AIX 核心文件而不是 Javacore 文件。

设置操作系统

缺省情况下,核心文件是在进行核心转储的进程的工作目录中创建的。但是该缺省核心文件存储库可以由用户更改。若要显示当前核心文件存储库,可以运行命令:syscorepath -g

如果您不熟悉本文中的命令,请参见 AIX Documentation library 以了解相关信息和语法。

在运行命令时,您需要将斜体表示的文本替换为相应的值,否则就会获得错误和意外结果。

为了使 AIX 操作系统能够生成完整或全面的核心文件,请按照以下步骤操作:

通过以 root 用户身份运行以下命令,从而将用户进程限制设置为无限制:chuser fsize=-1 data=-1 core=-1 user_id_running_application

在本例中,user_id_running_application 是运行 Java 应用程序的用户名称。例如:chuser fsize=-1 data=-1 core=-1 root

这将把该用户的文件大小 (fsize)、核心文件大小 (core) 和内存大小 (data) 限制更改为无限制。使用这些设置时,可能存在相关的风险,因此一旦收集了信息,就应立即重新启用原始设置。完成更改之后,删除登录、用户配置文件或任何启动脚本中对 ulimit 命令的引用。在启动应用程序以使更改在新进程中生效之前,您必须作为该用户重新登录。如果用户不重新登录,那么即使该进程已重新启动,它也可能不会读取 ulimit 更改。而且,从 /etc/inittab 文件或从 cron 守护进程启动的任何应用程序也可能无法读取 ulimit 更改——您可能必须使用 ulimit 命令来更改进程启动脚本中的 ulimit,例如使用 ulimit -d unlimited 来将数据限制更改为无限制。做出这些更改将消除该用户 ID 的某些系统资源消耗约束。请确保在解决问题之后恢复旧的 unlimit 设置。

上一页  1 2 3 4 5 6  下一页

Tags:AIX Java 故障

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接