快速业务通道

IBM的Java诊断,第4部分 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-14
多个)和一些分 析组成,分析以名称/值对的形式生成输出。然后将输出与规则进行比较,得出结论。这种分析被划分为 多个阶段,因此控制环境(例如脚本或分析程序)可以在进行分析时作出决策:

doAnalysis() 是第一个阶段。它以名称/值对的形式生成结果。

analyzeResponse() 接受 doAnalysis() 生成的输出并对其应用规则以得出结论。结论以 true 或 false 表示。

produceReport() 接受由 doAnalysis() 生成的输出,应用特定的规则,并以报告的形式描述结论。

listRules() 生成一个规则列表,分析程序可以进行计算。

com.ibm.dtfj.analyzer.ext.IReport

IBM的Java诊断,第4部分(11)

时间:2011-11-02 IBM Helen Beeken

分析程序可以实现 com.ibm.dtfj.analyzer.ext.IReport 接口,使用它将生成的关键信息创建为人类 可读的报告。这个报告可能包含有关转储的信息或发现的问题。报告被设计为可以简单地生成多个格式的 最终输出,例如 HTML、XML、原始文本等等。

produceReport() 生成一个报告(使用 allocateReport())并添加相关信息。

com.ibm.dtfj.analyzer.base.AnalyzerBase

要简化分析程序的实现,抽象基类 com.ibm.dtfj.analyzer.base.AnalyzerBase 提供了 IAnalyzerBase 的大多数方法的默认实现。您需要提供 getShortDescription() 的实现并且可能需要重 写 getVersion() 和 isPrimaryAnalyzer()。该类还提供了一些实用方法,目的是简化 IAnalyze 接口的 实现。

com.ibm.dtfj.analyzer.ext.IAnalyzerContext

com.ibm.dtfj.analyzer.ext.IAnalyzerContext 接口定义由工具的基础架构提供的常见函数,所有分 析程序都可以使用这些函数。其中包括可以在分析过程中获得 Java 运行时的功能。每个分析程序需要通 过 IAnalyzerBase 的 getContext() 方法返回的上下文对象访问这些函数:

getCurrentJavaRuntime() 返回对 DTFJ JavaRuntime 对象的引用,后者表示当前进行分析的 JVM 运 行时。

loadAnalyzer() 返回对另一个分析程序的引用,根据其类名指定。

outputMessage() 向用户输出一条消息。

addError() 添加一条错误,将在完成分析后输出到摘要中。

allocateReport() 分配一个新的报告,方便分析程序添加内容。

notifyAnalysisProgress() 为用户提供有关分析过程的反馈。如果分析需要占用大量时间,您可能需 要使用这种方法。

com.ibm.dtfj.analyzer.ext.IAnalysisReport

com.ibm.dtfj.analyzer.ext.IAnalysisReport 接口定义报告创建功能,允许将分析程序生成的输出 轻松转换为多种不同格式。接口提供了大量方法,但是其中一些示例就能够说明这种功能:

startSection() 启用一个新的格式化区域,可能包含标题和不同的格式化规则。

printField() 通常用于输出字段的名称和内容。字段布局由格式化确定。

printLiteral() 用于输出报告中的文字文本。

printReport() 包含当前报告中的嵌入报告。

endSection() 终止当前的格式化区域。

IBM的Java诊断,第4部分(12)

时间:2011-11-02 IBM Helen Beeken

转储结构:概述

使用 ImageFactory 读取 jextract 化的转储后将产生 DTFJ Image,本节将介绍其中的一些主要类。 当然,最主要的类是 Image 本身,它表示整个转储。它提供了很多属性,例如对转储进行描述的 hostname;它还包含了一组 ImageAddressSpace 对象。通常,转储中只有一个地址空间,但有些环境允 许多个地址空间。在地址空间内,您可以找到一个或多个 ImageProcess 对象,其中一个可能就是当前的 对象。

通常,名称以 Image 开头的类表示该类不是特定于 Java 平台的;因此,在 ImageProcess 内,可以 迭代一组 ImageModule,表示进程中加载的库,还可以迭代一组 ImageThread ,表示进程中活动的本

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站: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号