以独立方式对应用程序进行概要分析
可以以独立方式对应用程序进行概要分析(即,从命令行进行),而不必安装 Test and Performance Tools Platform。但是,确实需要在要进行概要分析的应用程序所在的机器上安装代理控制器。
可以通过调用“Java 概要分析代理程序”(它是一个库,它连接至“Java 虚拟机”(JVM)以捕获和记录 Java 应用程序的行为)来以独立方式对应用程序进行概要分析。代理程序的输出是以 XML 段表示的。
使用 -Xrun Java 选项来调用“Java 概要分析代理程序”:
-XrunpiAgent:agent_parm[,agent_parm]*
例如,要使用在 myFilters.txt 文件中定义的过滤器并将概要分析会话中的数据引导至称为
PEProfilingData 的文件来对 PerformanceExample.java 进行概要分析,应在命令行上输入下列内容:
java
-XrunpiAgent:server=standalone,filters=myFilters.txt,file=PEProfilingData.trcxml
PerformanceExample
- 注意:如果要从命令行以概要分析方式启动 WebSphere Application Server V6(WAS),必须执行下列步骤:
- 转至 <profile root>/config/cells/<nodename>Cell/nodes/<nodename>/servers/server1
- 编辑 server.xml 文件中的 jvmEntries 元素。在该元素中,有一个名为 genericJvmArguments 的属性。请对该属性值追加 -XrunpiAgent:server=enabled。
- 重新启动 WAS。
-
- 通过增大 -XrunpiAgent 参数可以指定几种不同的方式来运行概要分析代理程序。参数
agent_parm 可使用下列其中一个值:
- server=[standalone | enabled | controlled | application]
- standalone
- 概要分析代理程序以无外设方式运行,这表示无法从工作台与它交互。配置信息是使用配置文件提供的,概要分析数据由概要分析代理程序直接存储在文件中。然后,可在以后将概要分析文件导入工作台中。
- 将“Java 概要分析代理程序”手工连接至 JVM 实例并将概要分析数据生成至输出文件。缺省输出文件称为
trace.trcxml,但您可以使用 file= filename 参数指定另一文件名。当选择了此选项时,“Java 概要分析代理程序”生成外层 traceRoot 元素以组成完整且有效的 XML 文档。
- enabled(这是缺省值)。
- 概要分析代理程序在 JVM 的后台中运行且不占用资源,直到工作台连接至它并要求启动监视为止。于是,数据就流过代理程序的数据通道并由工作台使用。
即,装入“Java 概要分析代理程序”,允许应用程序正常运行,但不产生任何概要分析数据,直到客户机连接至代理程序来为它提供指令为止。当选择此选项时,“Java 概要分析代理程序”只生成 XML 片段而不是完整的 XML 文档。
- controlled
- 概要分析代理程序在初始化时预先清空 JVM(代理程序已装入但其阻止应用程序运行),直到从工作台连接至它并对它提供指令以开始由客户机监视为止。即,当概要分析代理程序以受控方式启动时,可能会挂起 JVM,直到被要求启动监视为止,并且将只生成 XML 片段而不是完整的 XML 文档。
- application
- 装入“Java 概要分析代理程序”,在后台运行,并允许应用程序以 enabled 方式正常运行。
- 仅当两个条件都满足时才生成概要分析数据。首先,应用程序必须已请求概要分析代理程序使用 org.eclipse.hyades.collection.profiler.Profiler 开始概要分析,其次,工作台的测试客户机必须已连接至“Java 概要分析代理程序”并已启动监视。
- 注意:所有概要分析都是由应用程序使用 org.eclipse.hyades.collection.profiler.Profiler 类控制的。
- profile=profile file
仅当 server=standalone 时此选项才可用。此文件指定在独立方式下想要用来运行概要分析程序的选项。在此文件中指定的选项通常是在用户从工作台启动
Java 进程时在“概要分析配置”窗口中设置的;使用此文件相当于以独立方式运行时指定选项。
可用以下两种方式中的其中一种方式装入该文件。
有关概要分析文件的有效选项列表,请参阅独立概要分析过滤器选项。
- filters=filename
仅当指定了 server=standalone 时使用。
指定包含概要分析会话期间要使用的初始类过滤器定义的文件的名称。缺省文件名是当前目录中的 filters.txt。有关文件格式的信息,请参阅下面的内容。
- file=filename
仅当指定了 server=standalone 时使用。
指定要将概要分析数据写至其中的文件的名称。缺省值是当前目录中的 trace.trcxml。
- help
将可用的代理程序选项列表显示到标准输出。
类过滤器文件的格式
过滤器文件应该按以下格式指定 package/class、method 和 mode 这三个字段:
package/class method mode
其中:
- package/class
- 此字段用来指定包或类名的模式。应该将此模式指定成未嵌入空白的字符串。该字符串可以在字符串开头或字符串末尾包含一个星号(*),例如
*.mypackage 或 org.mycompany.*。* 匹配零个或多个字符,这使得模式成为通用前缀或后缀模式。还可指定单个 * 以表示所有字符串。
- 方法
- 此字段用来指定方法名的模式。应该将此模式指定成未嵌入空白的字符串,指定规则与 class 字段相同。
- mode
- 此字段指定概要分析是要包括还是要排除与模式相匹配的包或类。mode 的值为 INCLUDE 或 EXCLUDE。
过滤器模式是按照指定它们的顺序来处理的,直到第一个模式匹配成功为止。如果类名与指定的任何过滤器模式都不匹配,则缺省情况为包括(INCLUDE)该类。
Java 概要分析代理程序控制
当使用 server=enabled 或 server=controlled 参数启动“Java 概要分析代理程序”时,与代理程序进行的通信是使用客户机工作台并通过主机上的代理控制器来进行的。
注意
- 如果在命令行上未指定过滤器定义文件名,则“Java 概要分析代理程序”尝试从当前目录中称为 filters.txt 的文件中读取过滤器。如果文件 filters.txt
不存在,则在概要分析会话期间将不使用任何过滤器。如果您将过滤器文件 filters.txt 命名,并将它放在当前目录中,
则不需要在命令行上指定过滤器参数,概要分析代理程序就可以使用过滤器。
- 如果不为概要分析数据指定输出文件,则将它保存在文件 trace.trcxml 中。
- 不需要为输出文件指定扩展名。它会自动获得扩展名 .trcxml。
- 不需要为 Java 应用程序指定扩展名。它可以是 .class 文件。
相关概念
概要分析工具概述
概要分析资源
相关任务
在 AS/400 上以独立方式对应用程序进行概要分析
启动或连接 Java 进程
使用“概要分析监视器”视图
(C) Copyright IBM Corporation 2000, 2006. All Rights Reserved.