JVM 日志解释

查看 JVM 日志文件以确定应用程序环境中的问题。

JVM 日志包含由应用程序写入的记录数据。 应用程序可以直接以以下形式写入此数据:System.out.print(),System.err.print()或其他方法调用。 应用程序还可以通过调用 JVM 函数来间接写入数据,例如,Exception.printStackTrace(). 此外,System.outJVM 日志包含由 WebSphere® Application Server编写的系统消息。

[z/OS]如果允许应用程序服务器格式化应用程序数据,那么将以正常 z/OS® 跟踪格式打印该数据。 如果不允许应用程序服务器对应用程序数据进行格式化,那么会记录原始文本,这将更难分析。

请注意: You can configure the thread ID that is used in the log and trace files of WebSphere Application Server 版本 "9.0 as either the hexadecimal representation of the thread ID from java.util.logging.LogRecord, or the hexadecimal representation of the thread ID from java.lang.Thread. 设置 Java™ 系统属性 com.ibm.websphere.logging.useJULThreadID。 到 true 以使线程标识与 java.util.logging.LogRecord 线程标识匹配。 将此系统属性设置为 false 以让线程标识匹配 java.lang.Thread 线程标识。 如果未指定此系统属性,那么线程标识与 java.lang.Thread 线程标识匹配。

[AIX Solaris HP-UX Linux Windows][IBM i]您可以使用 JVM 日志属性面板的 "已安装的应用程序输出" 字段将应用程序数据格式化为类似于 WebSphere Application Server 系统消息,或者将其格式化为纯文本而不进行其他格式设置。 WebSphere Application Server 系统消息始终格式化。 根据 JVM 日志是如何配置的,格式化的消息可以用基本或高级格式写入 JVM 日志。

[AIX Solaris HP-UX Linux Windows][IBM i]

消息格式

格式化的消息可以使用这两种格式中的一种写入 JVM 日志:
基本格式
在较早版本的 WebSphere Application Server中使用的格式。
高级格式
如果可能,那么通过添加有关事件的信息来扩展基本格式。
[AIX Solaris HP-UX Linux Windows][IBM i]

基本和高级格式字段

基本和高级格式使用许多相同的字段和格式化方法。 可能找到的采用这些格式的各种字段如下:
TimeStamp
时间戳记使用对其进行格式化的过程的语言环境进行格式化。 它包含标准日期(例如,YYMMDD),以毫秒为精度的 24 小时时间和时区。
[9.0.5.11 或更高版本] 在 V90511 和更高版本中,可以使用 com.ibm.ws.logging.iso.date.format 定制属性来指定日志中的日期和时间格式是使用特定于语言环境的格式还是使用 ISO-8601 格式。 有关更多信息,请参阅 com.ibm.ws.logging.iso.date.format
ThreadId
从发出消息的线程的散列码生成的 8 个字符的十六进制值。
ThreadName
发出消息或跟踪事件的 Java 线程的名称。
ShortName
发出消息或跟踪事件的记录组件的缩写名称。 这通常是 WebSphere Application Server 内部组件的类名,但可以是用户应用程序的某些其他标识。
LongName
发出消息或跟踪事件的记录组件的全名。 这通常是 WebSphere Application Server 内部组件的标准类名,但可以是用户应用程序的一些其他标识。
EventType
表明消息或跟踪事件类型的一个字符字段。 消息类型是大写的。 可能的值包括:
F
致命消息。
E
错误消息。
W
警告消息。
A
审计消息。
I
参考消息。
C
配置消息。
D
详细信息消息。
O
直接写入的消息System.out用户应用程序或内部组件。
R
直接写入的消息System.err用户应用程序或内部组件。
Z
表明不可识别的类型的占位符。
ClassName
发出消息或跟踪事件的类。
MethodName
发出消息或跟踪事件的方法。
Organization
拥有发出消息或跟踪事件的应用程序的组织。
产品
发出消息或跟踪事件的产品。
组件
发出消息或跟踪事件的产品中的组件。
[AIX Solaris HP-UX Linux Windows][IBM i]

基本格式

以基本格式显示的消息事件使用下列格式。 符号 <name> 表示必填字段,这些字段将始终出现在基本格式报文中。 符号 [name] 表明将被包括的可选的或有条件的字段(如果可以确定这些字段的话)。

<timestamp><threadId><shortName><eventType>[className][methodName]<message>
[AIX Solaris HP-UX Linux Windows][IBM i]

高级格式

以高级格式显示的消息事件使用下列格式。 符号 <name> 用于表示总是以高级格式显示的报文条目的必填字段。 表示法 [name] 用于表明将被包括的可选的或有条件的字段(如果可以确定它们的话)。

<timestamp><threadId><eventType><UOW><source=longName>[className]
methodName]<组织><产品><组件
thread=threadName]<信息
[z/OS]

错误日志条目的格式

1| 2005/03/02 17:31:17.641 01 t=8FB718 c=UNK key=S2 (13007002)
2| ThreadId: 0000004e
3| FunctionName: com.ibm.ws.sm.workspace.impl.WorkSpaceManagerImpl
4| SourceId: com.ibm.ws.sm.workspace.impl.WorkSpaceManagerImpl
5| Category: AUDIT
6| ExtendedMessage: BBOO0222I: WKSP0023I: 已禁用工作空间配置一致性检查。
表 1. 日志流记录的部分。 下表说明了先前提到的错误日志条目。
行号 组件 描述
1 2005/03/02 17:31:17.641 01 日期/时间戳记/两位数记录版本号
1 t=8FB718 MVS TCB(线程)地址
1 c=UNK 请求关联信息
1 key=S2 状态/密钥(S = 管理程序,P = 问题)
1 (13007002) 跟踪点标识
2 ThreadId: 0000004e 线程标识 (TID)
3 FunctionName: com.ibm.ws.sm.workspace.impl.WorkSpaceManagerImpl 函数名称
4 SourceId: com.ibm.ws.sm.workspace.impl.WorkSpaceManagerImpl 源标识
5 Category: AUDIT 类别
6、7 ExtendedMessage: ... 日志消息