权威支持: 您可能不知道的 10 个很棒的故障排除工具

可以使用很多故障排除资源来帮助您使用 IBM® 软件产品。这里将向您介绍 10 个应该加到您的工具箱中的工具。 本文来自于 IBM WebSphere Developer Technical Journal

James Kochuba (kochuba@us.ibm.com), 支持高级工程师, EMC

James Kochuba 的照片James Kochuba 是 IBM 支持人员的技术团队负责人,主要负责系统管理和工作负载管理方面的工作。James 的工作重点是客户问题,负责帮助指导支持工程师和客户进行问题源确定并最终解决问题。



Daniel Julin (dpj@us.ibm.com), 高级技术人员, EMC

Author photoDaniel Julin 在复杂在线系统的开发和故障排除方面具备长达 20 年的经验。作为 WebSphere Serviceability 团队的技术主管,他最近倾力于帮助团队定义并实现一组工具和技术,以便对 WebSphere Serviceability Server 进行问题诊断时提供帮助,并最大限度地提高 IBM 支持效率。他有时还直接为各种关键的用户支持场景提供帮助。



2008 年 4 月 23 日

在每个专栏中,支持权威将讨论 IBM Technical Support 的可用于 WebSphere 产品的资源、工具和其他元素,以及一些可以进一步增强您的 IBM 支持体验的技术和新思想。

最新快报

按照惯例,我们将首先提供关于整个 WebSphere® 社区的一些重要新闻:

  • IBM Software Support Toolbar 的 V3 刚刚发布。此工具栏是免费的 Internet Explorer 和 Firefox 浏览器插件,提供指向支持所有 IBM 软件品牌产品的最常用 Web 资源的快速链接和搜索引擎。新版本提供了增强的内容和搜索选项、新的基于 Web 的常用工具的快速访问,特别还推出了新的 SWG 快速参考页。如果您安装了此工具栏较旧的版本,可以通过您的浏览器的内置插件更新机制自动对其进行更新。如果不行,您可以从工具栏页面进行下载。
  • 现在已经开始 Impact 2008 会议的注册,此次会议将于 2008 年 4 月 6 日到 11 日在拉斯维加斯举行。届时将有数千名 WebSphere 专业人员出席,并将推出专门针对涉足基于 WebSphere 的应用程序的支持工作的人员的很多演示和实验活动。
  • 一本新的红皮书 Problem Determination for WebSphere Application Server V6.1 即将完成,目前正作为一系列 RedPieces 提供。
  • 如果您喜欢 为有效进行产品故障诊断做好准备的 12 种方式(本专栏 7 月份的文章),或者希望了解此主题的另一个方面,请收听 12 月 13 日播出的 WebSphere Technical Exchange 网络广播 "Prepare for Problem Determination for WebSphere Application Server"。其中发言的也是撰写这篇文章的团队成员之一。另外,请一定查看相同系列的其他网络广播的内容,因为其中很多讨论都是关于问题确定主题。
  • IBM Support Assistant 中刚刚发布了 IBM Dump Analyzer for Java 工具的一个新版本。此工具可分析 WebSphere(或其他)JVM 的系统转储,以在 Java 和 WebSphere 级别检查其状态和诊断各种问题。新推出的 1.1.0 版中包含约 50 个修补程序和新功能,特别值得注意的是,分析功能增加了,而且用于读取转储的基础 DTFJ JDK 库的可靠性也得到了增强。另外,其中还引入了在此工具中实现和添加自己的自定义分析模块的能力。

继续关注与支持相关的各个网站以及本专栏,以获得有关我们所碰到的其他工具的新闻。

接下来让我们继续今天主要的主题……


帮助您自己

整个一年中,本专栏都在介绍 IBM WebSphere Support 社区内开发的几个主要活动和工具。正如以前提到的,IBM Support 努力通过两个主要渠道组织所有资源:

  • IBM Support Assistant,提供用于从很多源搜索信息的集中前端和问题确定工具的集中存储库。
  • IBM Support 网站,作为网上搜索和浏览支持信息的主要访问点。

通常,这两个前端都应该作为您查找所需资源的起点,我们将不断地对其进行系统更新。但我们所使用的是动态环境,其中的资源总是在不断地创建和更新,一些资源可能承载于其他站点上,如 alphaWorks、developerWorks、IBM 信息中心、IBM 红皮书等。可用的资源数量有时候非常多,因此有些重要的资源有时候可能会被忽略。

作为今年最后一期“权威支持”专栏,我们将讨论一个略微不同的方法。正如您所知,IBM 支持存储库中有大量的工具和实用程序帮助您处理各种支持问题。但我们不会告诉您已经准备好“一切”帮助您解决问题,而要在这里推荐 10 个您可能没有注意到的特别有用的工具和文档。其中一些我们在以前的文章中已经讨论过了,但如果您是首次接触,请现在就了解并将其加入您的工具箱,为下一年的工作做好准备:

  1. 开发客户机来确定挂起线程问题
  2. IBM Trace and Request Analyzer for WebSphere Application Server
  3. Trace Analyzer for WebSphere Application Server
  4. IBM Thread and Monitor Dump Analyzer for Java Technology
  5. 新的和经过改进的 JDBC 测试工具
  6. Dynamic Cache Statistics Collector and Visualizer for IBM WebSphere Application Server
  7. WebSphere Application Server 示例脚本
  8. WebSphere Application Server 的系统管理
  9. WebSphere Application Server 故障排除指南
  10. 详细的系统需求文档

下面的部分将提供其中每个项目的简短描述以及指向 Web 的相关信息的链接。

1. 开发客户机来确定挂起线程问题

问题通常并不是在管理员守着等待问题发生时出现。如果系统没有实现监视和反应的自动化,捕获问题所需的文档可能非常棘手和费时。这篇文章给出了一个简短的示例,说明如何创建 JMX 程序,并使用其侦听通知,特别是在怀疑出现挂起条件时 WebSphere Application Server 所生成的“挂起线程通知”。接收到通知后,此工具将通过生成有用的调试文件(如线程转储)来进行响应。这篇文章还包含示例程序,包含相应的配置和执行指令,用于监视通过 JMX 通知导出的不同类型的诊断事件。

示例使用场景

以下是在 WebSphere Application Server 服务器的 SystemOut.log 文件中记录的挂起线程消息:

WSVR0605W: Thread threadname has been active for hangtime and may be hung. There are totalthreads threads in total in the server that may be hung.

在所有服务器的系统和本机日志的定期检查期间,挂起线程消息是您应该搜索的内容之一。如果找到了,则在您的环境中实现此工具将帮助捕获 Java™ 线程转储来进行故障排除,了解“threadname”在执行什么任务。如果您确定线程正常运行,可能会希望提高挂起线程检测超时值;如果存在问题,则可以将线程转储作为进行诊断的首要元素。

2. IBM Trace and Request Analyzer for WebSphere Application Server

此工具可帮助查找非正常延迟、系统运行缓慢或系统表现为挂起然后又恢复的情况的根源。它将检查 WebSphere Application Server 和 HTTP 插件的跟踪文件,通过这些文件标识各个请求,并找出特定操作需要花长时间完成的区域,从而帮助您检查跟踪中的可疑区域,以确定是否存在问题。

示例使用场景

假定您发现某个应用服务器的启动时间比通常情况下长。您启用 WebSphere 跟踪,在应用程序启动的整个期间收集跟踪信息,然后将跟踪信息加载到 Trace and Request Analyzer 工具中。此工具将快速突出显示是否在跟踪文件中存在任何“间隙”(即某个操作已启动但在很久后最终完成之前并不生成任何进一步跟踪统计数据的期间)。通过找到此操作,可指导将进一步的调查重点放在何处,或者直接告诉您(基于操作的本质)问题是什么。

3. Trace Analyzer for WebSphere Application Server

此工具有时候会与上面的 Trace and Request Analyzer 工具混淆,但事实上二者完全不同。Trace and Request Analyzer 的重点是对跟踪进行一次性扫描,以方便地确定感兴趣的特定领域或执行中的特定延迟,Trace Analyzer 工具是一款高交互性实用工具,可通过其详细地浏览和检查 WebSphere Application Server 的复杂跟踪文件。此工具可帮助将多个不同的文件集合到一起,然后将其格式化为单个公共视图,并提供扩展导航和搜索功能,以在跟踪文件中快速找到所需的东西。此工具的功能包括:

  • 可视跟踪表示
  • 高级导航引擎
  • 嵌套搜索和筛选支持
  • 动态调用序列分析
  • 调用持续时间度量
  • 跟踪突出显示和标记
  • 进入和退出记录配对

4. IBM Thread and Monitor Dump Analyzer for Java Technology

用于在 WebSphere 进程中诊断问题的一项常见技术是获取和分析 Java 进程的快照(称为“javacore”或“线程转储”)。javacore 显示关于特定 Java 或 WebSphere Application Server 进程在某个时间的线程和进程信息。如果 WebSphere Application Server 挂起,线程转储在确定所发生的情况时非常有用。但线程存储中的信息可能非常复杂,难于解释,因此开发了多个工具来帮助进行此分析。IBM Support Assistant 中的另一个工具 Thread Analyzer 已在之前的专栏文章中进行了讨论。另一个可用工具是 IBM Thread and Monitor Dump Analyzer for Java Technology,不过尚未在 IBM Support Assistant 中提供。它提供与 Thread Analyzer 不同的视角,以帮助诊断 JVM 监视锁定和线程活动,以便确定挂起、死锁和资源争用的根源或监视瓶颈。

示例使用场景

实现用于捕获可疑挂起线程的正确文件的程序(请参见上面)后,可以使用此工具来对 Java 线程转储进行分析。其可能显示的潜在问题之一是死锁:很多线程争用对形成瓶颈的公用同步块的访问,或很多线程当前在等待远程数据库的响应等。

5. 新的和经过改进的 JDBC 测试工具

JDBC 测试工具是能够验证系统和数据库之间的数据库连接的 Java 程序。此工具可以测试 DB2®、Oracle®、Microsoft® SQL Server(使用多个驱动程序)、Cloudscape™、Sybase 和 Informix® 数据库。此工具将验证 Java 运行时环境和类路径是否正确设置。此工具不仅验证从 JVM 到数据库的连接和配置,而且还提供来自数据库的信息(如连接数量和任意 SQL 语句)。这非常有帮助,可用于诊断 WebSphere Application Server 与特定数据库的 JDBC 连接,并确认客户机接收到有效的信息。

6. Dynamic Cache Statistics Collector and Visualizer for IBM WebSphere Application Server

此工具可帮助收集统计数据,以了解 WebSphere Dynamic Cache (DynaCache) 子系统的情况。DynaCache 用于加快对应用服务器提供的常见网页或片段的访问速度,但需要仔细对其进行配置和调整,以获得最大的性能优势,并同时减少内存使用率和磁盘开销。此工具与 WebSphere Application Server 中的 JMX MBean 交互,以检索关于 DynaCache 的状态、运行状况、性能、组合和效率的统计数据。

7. WebSphere Application Server 示例脚本

wsadmin 实用工具的脚本是用于在 WebSphere Application Server 中实现很多管理和诊断任务自动化的常用技术。IBM 信息中心提供了大量的基本脚本示例,最近的 WebSphere Application Server 版本还提供了工具来帮助生成脚本。一组复杂的管理任务脚本可作为非常有用的 jacl 或 jython 示例脚本库使用。这篇文章提供了可下载的“原样”示例脚本,分为从 WebSphere Application Server v5.0 到 v6.1 的四个主要类别,这些脚本适用于以下方面:

  • 自动部署
  • 安全配置
  • 配置更改
  • 管理

可以将这篇文章作为自动化管理员新手的入门读物,也可以供有经验的管理员作为参考指南,帮助实现更多复杂任务的自动化。

8. WebSphere Application Server 的系统管理

除了使用 wsadmin 和脚本,您可能有时候希望执行更为复杂的功能,或实现无法通过简单脚本容易执行的专门工具。因此,WebSphere Application Server V5 和上面向公众公开的管理 JMX API 允许创建自定义 Java 管理程序。这篇文章将帮助您了解如何根据 JMX Javadoc 编写用于管理配置目的的 JMX 客户机。关于 WebSphere Application Server 设计的培训教程中提供了创建 JMX 客户机配置管理员程序的概要步骤。这可帮助全面了解如何创建管理程序以及您的程序将在 WebSphere Application Server 内执行哪些工作。这篇文章提供了一个示例程序,以便您能开始尝试使用 JMX 客户机配置管理员程序。

示例使用场景

假如您希望有一款工具供开发人员用于在开发计算机上部署应用程序,但您的组织有严格的流程或安全需求,而不能使用 WebSphere Application Server 管理工具。JMX 管理客户机可帮助您创建一个工具,用于执行部署所需的所有步骤,供开发人员使用,而且不会对 WebSphere Application Server 安全性造成影响。

9. WebSphere Application Server 故障排除指南

WebSphere Application Server 支持站点上的故障排除指南将产品划分为主要主题领域。可通过其中提供的表格寻找每个主题的不同问题组,并帮助您找到其他相关资料。每个问题组都包含关于以下部分:

  • 了解更多 (Learning More) 帮助您了解此主题。
  • 故障排除 (Troubleshooting) 提供具体的调试步骤,可以在联系 IBM Support 之前自行进行这些步骤。
  • 收集数据 (Collecting Data) 提供关于如何收集 IBM Support 所需的诊断信息,以便帮助确定问题。
  • 分析数据 (Analyzing Data) 提供如何解释这些诊断结果的说明。
  • 联系 IBM (Contacting IBM)。

几乎所有问题组都提供了关于上面每个问题确定步骤的有用信息。

您也可以不直接使用此故障排除指南,而通过 IBM Support Assistant 中提供的 IBM Guided Activity Assistant 逐步进行这些操作。

10. 详细的系统需求文档

您是否想过 WebSphere Application Server(或其他 WebSphere 产品)的最低软件和硬件要求——或 IBM 支持的最低要求?IBM 发布了与 WebSphere 产品的每个版本一起运行和交互的操作系统、高可用性解决方案、安全性、Java、Web 服务器、数据库、事务管理器等的特定产品版本的最低要求列表。此文档可帮助确定您的 WebSphere 产品正常工作所需的产品最低补丁要求。


结束语

这 10 个有用的工具和文档仅仅是可帮助您支持 WebSphere 系统的众多工具中的一部分。要查找更多此类工具(除 IBM Support Assistant 和主 IBM Support 网站外),请访问每个 WebSphere 产品的“特色文档”(Featured Documents) 网页。这些页面包含指向每个产品访问量最多的 IBM 文档的链接,并提供了相关摘要,而且定期更新,以反映当前的趋势和热点问题。每页都按以下几个部分提供信息:

  • 重点聚焦 (In the spotlight)
  • 计划维护 (Planned maintenance)
  • 教育 (Education)
  • 通用自助资源 (General self-help resources)

有关示例,请参见 WebSphere Application Server 的“特色文档”页

我们将继续通过权威支持文章向您介绍主要的工具、新信息和任何其他相关内容。每篇专栏文章都是由来自不同组织的 IBM 技术支持工程师供稿,帮助您了解能进一步改进支持体验的新信息和现有信息。其中一些文章提供抽象的最佳实践和指南,帮助缩短 WebSphere 解决方案的故障排除时间,其他文章则提供关于具体热点主题的技术细节,以帮助进行培训。

另外,不要忘记在产品本身中寻找相关信息。几个工具(如 Classloader Viewer、Install Verifier 和 Configuration Validator)现在已集成到 WebSphere Application Server 中或随其一起提供。

参考资料

学习

获得产品和技术

讨论

条评论

developerWorks: 登录

标有星(*)号的字段是必填字段。


需要一个 IBM ID?
忘记 IBM ID?


忘记密码?
更改您的密码

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件

 


在您首次登录 developerWorks 时,会为您创建一份个人概要。您的个人概要中的信息(您的姓名、国家/地区,以及公司名称)是公开显示的,而且会随着您发布的任何内容一起显示,除非您选择隐藏您的公司名称。您可以随时更新您的 IBM 帐户。

所有提交的信息确保安全。

选择您的昵称



当您初次登录到 developerWorks 时,将会为您创建一份概要信息,您需要指定一个昵称。您的昵称将和您在 developerWorks 发布的内容显示在一起。

昵称长度在 3 至 31 个字符之间。 您的昵称在 developerWorks 社区中必须是唯一的,并且出于隐私保护的原因,不能是您的电子邮件地址。

标有星(*)号的字段是必填字段。

(昵称长度在 3 至 31 个字符之间)

单击提交则表示您同意developerWorks 的条款和条件。 查看条款和条件.

 


所有提交的信息确保安全。


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=10
Zone=WebSphere
ArticleID=301665
ArticleTitle=权威支持: 您可能不知道的 10 个很棒的故障排除工具
publish-date=04232008