快速业务通道

Java技术,IBM风格: 监视和判断问题 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-20
。注意,IBM Diagnostics Guide 的第 32 章 “Tracing Java applications and the JVM” 详细讨论了所有跟踪选项。

将跟踪数据放进内部缓冲区中

使用存储内缓冲区进行跟踪是非常高效的,因为在探测到问题或者使用 API 将缓冲区写入文件之前,不执行显式的 I/O。缓冲区被分配给每个线程,这防止线程之间发生冲突并防止各个线程的跟踪数据相互干扰。例如,如果某个线程没有被调度,当转储缓冲区时它的跟踪信息仍然是可用的。

要查看跟踪数据,必须转储缓冲区并进行格式化。当发生以下情况时,自动进行缓冲区的转储:

发生未被捕捉的 Java 异常

发生操作系统信号或异常

调用 com.ibm.jvm.Trace.snap() Java API

调用 JVMRI TraceSnap 函数

将跟踪数据放进文件中

可以连续地将跟踪数据写到文件中,作为存储内跟踪的扩展;但是在这种情况下不是为每个线程分配一个缓冲区,而是至少分配两个。当一个跟踪缓冲区满了时,将它写到文件系统中,这使线程能够连续运行。根据跟踪量、缓冲区大小和输出设备的带宽,可以将多个缓冲区分配给给定的线程,从而与生成跟踪数据的速度相匹配。

要将 minimal 或 maximal 跟踪选项的输出写到文件中,应该使用 output 关键字,对于 exception 选项使用 exception.output 关键字:

-Xtrace:maximal=all,output=trace.out 将跟踪数据写到文件 trace.out 中。

-Xtrace:maximal=all,output={trace.out,5m} 将跟踪数据写到文件 trace.out 中,当文件达到 5MB 时进行回绕。

-Xtrace:maximal=all,output={trace#.out,5m,5} 将跟踪数据依次写到 5 个文件中,每个文件 5MB,# 用文件的序号代替。在这个示例中,创建文件 trace0.out 到 trace4.out,每个文件包含最近的 5MB 跟踪数据。当 5 个文件都填满时,JVM 依次覆盖 trace0.out 到 trace4.out。这个选项可以创建的最大文件数是 36 个,# 字符被替换为 0 到 9,然后是 A 到 Z。

还可以在文件名中进行以下替换:

%p:Java 进程的 ID。

%d:yyyymmdd 格式的当前日期。

%t:hhmmss 格式的当前时间。

对跟踪文件进行格式化

跟踪格式化器(trace formatter) 是一个可以在任何平台上运行的 Java 程序,可以对来自任何平台的跟踪文件进行格式化。IBM SDK 在 core.jar 中提供了这个格式化器,它还需要一个称为 TraceFormat.dat 的文件,其中包含格式化模板。这个文件在 jre/lib 中。可以用以下命令行启动跟踪格式化器:

java com.ibm.jvm.format.TraceFormat input_file [output_file]

在这里,com.ibm.jvm.format.TraceFormat 是跟踪格式化器类,input_file 是要进行格式化的二进制跟踪文件的名称,output_file 是可选的输出文件名。如果没有指定输出文件,那么默认的输出文件名是输入文件名加上 .fmt。

Java技术,IBM风格: 监视和判断问题(3)

时间:2011-01-30 IBM Chris Bailey

动态记录器

IBM VM 跟踪设施包含一个动态记录器(flight recorder),它连续地将来自关键跟踪点子集的数据捕捉到内存缓冲区中。当出现运行时问题时捕捉这些缓冲区,可以用来诊断问题并分析 VM 的历史。VM 初始化过程用一小组跟踪点启动跟踪,这些跟踪点被捕捉到回绕式存储内缓冲区中。可以使用这些信息初步诊断 Java 运行时中的任何问题,并确保 -verbose:gc 选项提供的数据子集总是可用的。垃圾收集数据也出现在 Java 转储文件中。

内部的动态记录器使用一个命令行选项:

-Xtrace:maximal=all{level1},exception=j9mm{gclogger}

如果在命令行上指定 -Xtrace,或者在属性文件中设置它,那么清除激活的跟踪点集。

方法跟踪

可以利用 Java 方法跟踪来跟踪每个线程对方法的调用,包括进入方法和退出方法,这种跟踪针对 Java 运行时的 IBM 实现上运行的任何代码进

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号