使用 IBM Support Assistant Lite 为 WPS 收集故障诊断信息
IBM Support Assistant Lite (ISA Lite) 是 IBM 发布的一个 IBM Support Assistant 的轻量级版本,它结合了 IBM 技术支持网站发布的必须收集数据 (MustGather) 指南,旨在帮助用户快速准确地收集故障诊断数据。本文介绍了 ISA Lite 的下载和配置,并结合实际工作中的经验,以 WebSphere Process Server 为例详细完整地介绍了如何使用 ISA Lite 收集故障诊断信息并将其提交给 IBM 技术支持团队。
IBM WebSphere® Process Server (WPS) 是下一代业务流程集成服务器,它基于 WebSphere 应用服务器 (WebSphere Application Server, WAS),通过业务流程引擎以及人工任务管理器等核心组件,实现了工作流、人工任务、应用程序以及系统的业务流程自动化。在 WPS 的使用过程中,用户可能会遇到一些问题,这些问题通常由业务流程设计不当,用户误操作或产品缺陷等导致。这时,就需要调试应用程序或分析系统的日志信息来 确定问题发生的根本原因。
为了协助用户以自助的方式或在 IBM 技术支持工程师的协助下进行故障诊断工作,IBM 发布了一款免费的桌面应用程序 IBM Support Assistant (ISA)。它集成了很多有用的功能和工具,提供了包括查找信息、分析问题以及管理服务请求等在内的一站式技术支持服务。对于那些用户无法自行解决的问 题,通常需要提交问题管理记录 (Problem Management Record, PMR) 以获得 IBM 技术工程师的帮助。大多数情况下,IBM 技术支持工程师会要求用户就问题诊断收集一些必要信息。用 ISA 提供的工具之一:数据收集器,就可以帮助我们完成这项工作。但这种方式仅适用于将 ISA 与所支持的产品安装在同一台物理机器的情况。如果所支持的产品运行在远程系统上,则需要额外创建一个便携收集器 (Portable Collector),然后将其传送到目标系统上去执行相应的收集过程。
作为 ISA 的一个轻量级版本,ISA Lite 是一个专用的诊断数据收集工具,支持多种平台且无需安装,仅需解压缩并稍做配置即可使用;同时,它结合了必须收集诊断数据 (MustGather) 指南,针对产品以及特定问题类型自动收集诊断数据,提高了准确性;在用户允许的前提下,ISA Lite 还可以将收集的诊断数据提交给 IBM 技术支持团队,有效地缩短了解决问题的时间。
本文首先介绍 ISA Lite 提供的数据收集功能,然后详细描述其配置和使用方法,并以一个示例场景演示怎样用 ISA Lite 为 WPS 的特定问题收集故障诊断数据,以及将这些数据发送给 IBM 技术支持团队的方法。
同 ISA 一样,ISA Lite 也是一款免费工具,它旨在将繁琐和重复的诊断信息收集工作自动化和流程化,从而提高了数据收集的效率。正如本文之前所提到的,ISA Lite 是一个专用的数据收集工具,因此,我们无需安装整个 ISA 应用程序,就能够快速地收集信息并保证其准确性。此外,相对 ISA 提供的数据收集器来说,ISA Lite 使数据收集工作更具针对性。ISA Lite 发布了针对某些 IBM 软件产品的专有版本,它结合了产品的 MustGather 指南,针对不同的问题症状收集特定的诊断数据。当前,受支持的软件产品主要包括 WebSphere 应用服务器,WebSphere Process Server 和 WebSphere Portal。未来 ISA Lite 还会对更多的软件产品提供支持。
在这篇文章中,我们将介绍 ISA Lite 发布的针对 WebSphere Process Server 的专用版本,( 以下简称 ISA Lite,如未作特别说明,均指 ISA Lite 用于 WebSphere Process Server 的版本 )。它基于 IBM WPS 技术支持网站发布的 MustGather 技术文档,针对在 WPS 的使用过程中常见的问题类型自动收集诊断信息并生成压缩格式的文件,稍后用户可以自行分析或将这些信息提交给 IBM 技术支持团队。
说明:本文以 ISA Lite (WPS) 为例,但介绍的方法在使用 ISA Lite (WAS) 和 ISA Lite (Portal) 收集诊断数据时亦可作为参考。
以下将为您提供使用 ISA Lite 收集诊断信息的几个好处。
简单:运行 ISA Lite 收集 WPS 的诊断信息并不需要用户对产品有丰富的知识或深入的了解,甚至可以不熟悉 WPS 管理控制台的操作,ISA Lite 会引导用户一步步地完成所有步骤。
安全:除非用户指定,ISA Lite 不会将收集的信息自动发送给 IBM 技术支持团队或上传至任何地方,保护了客户的敏感信息。
准确:手动收集诊断信息通常要执行数十个步骤,繁琐且容易出错。ISA Lite 将数据收集过程自动化,尽量避免由人为误操作可能导致的出错,并大大缩短收集诊断数据所需的时间。
高效:ISA Lite 可针对特定的问题症状收集故障信息,这将为后续的分析诊断奠定基础并提高了问题解决的效率。
便捷:ISA Lite 是专门为收集诊断数据而定制的轻量级工具,它不需要安装,只要解压缩 ZIP 文件并稍作配置即可使用,简便且节省磁盘占用空间。
ISA Lite 可以在多种平台上使用,包括 Microsoft® Windows®、Linux® (Red Hat Enterprise、SuSE) 、AIX®、Sun Solaris™ 和 HP-UX。用户可以通过 IBM 的官方网站下载 ISA Lite 的安装文件包,通常,这个压缩文件大小不足 10M。
将下载文件 ISALiteForWPS_Win.zip 存放到本地的操作系统中,然后利用一些数据压缩实用程序工具或执行相应的命令将其解压缩。
ISA Lite 是用 Java 语言开发的工具,所需的 JRE 版本为 1.4.2 或更高,因此需要设置 JAVA_HOME 环境变量以保证其正常启动和执行。
可以通过下面两种方式之一设置 JAVA_HOME 环境变量:
1.执行 setupCmdLine 脚本
执行 WebSphere 应用服务器提供的 setupCmdLine 脚本,这将自动设置 JAVA_HOME 环境变量。
在 Windows 平台上,这个脚本位于 %WAS_HOME%\bin\
可以通过以下命令来执行这个脚本
app_server_root\bin\setupCmdLine.bat
在 UNIX 平台上,这个脚本位于:
$WAS_HOME/bin/setupCmdLine.sh,
相应的命令为:
./setupCmdLine.sh
2.直接设定 JAVA_HOME 环境变量
用户也可以通过执行操作系统特定的命令来设置 JAVA_HOME 环境变量。例如,在 Windows 平台上,JDK 1.4.2 安装在 c:\jre1.4.2,可以运行以下命令来设置 JAVA_HOME 环境变量:
SET JAVA_HOME=c:\jre1.4.2
在 UNIX 平台上,设置 JAVA_HOME 环境变量的命令语法取决于所用的 Shell。例如,如果用户使用 Bash Shell 并且 JDK 安装在 /opt/jre142,那么可以用以下命令来设置 JAVA_HOME 环境变量:
export JAVA_HOME=/opt/jre142
正如前面提到的,ISA Lite 并不需要进行特定的安装,在完成上述步骤之后,我们就可以启动它来收集诊断信息了。
某 些情况下,首次启动 ISA Lite 可能会失败并遇到 “ERROR: This tool requires JRE 1.4.2 or greater to run.” 错误。这是由于 ISA Lite 使用了 WPS 缺省自带的 JRE,而这个 JRE 的版本低于 1.4.2。为了解决这个问题,我们需要在另外一个路径重新解压缩 ISA Lite 的安装文件包,并参考上面的步骤来设置 JAVA_HOME 环境变量。
|
接下来,我们将通过一个示例来介绍如何使用 ISA Lite 收集故障诊断信息并将其提交给 IBM 的技术支持团队。
假 定用户开发了一个包含长业务流程 (Long-Running Business Process) 的应用,并将其部署在 WPS 上进行系统上线前的最后测试。这期间用户遇到了一个问题:某些看上去运行良好的流程实例会异常终止。通过检查 WPS 的日志,发现有大量的 LTPA token 过期的错误信息,类似的异常堆栈跟踪如下:
清单 1. 异常堆栈跟踪
用户还可以根据需要或使用习惯选择以命令行方式或静默方式运行 ISA Lite。 在某些情况下,用户可能希望以命令行的交互方式来运行 ISA Lite,在 Windows 平台上,这可以通过在命令窗口执行以下命令完成: runISALiteConsole.bat UNIX 平台上对应的命令为:./runISALiteConsole.sh 这种情况下,ISA Lite 以文本模式运行,可用选项将以编号列表的方式显示,用户按照提示输入相应的选择列表或编号,并按“回车”键进行确认。如果需要,用户可以在任何时刻输入 quit 退出收集过程。其界面如图 7 所示。 图 7. 以命令行方式运行 ISA Lite 对 于那些需要重复执行多次的数据收集过程,或者在用户不希望参与交互的情况下,可以采用“静默”方式运行 ISA Lite。这种情况下,用户只需提供一个“响应文件”,并且将所有问题的答案都记录在这个响应文件里。如果以带有响应文件的方式执行静默数据收集,ISA Lite 会自动读取响应文件的内容并完成收集过程。响应文件是一个文本文件,用户也可以手动更改其中的问题答案并将其用于其他的数据收集过程。 要创建响应文件,只需在启动 ISA Lite 时使用 -record 参数,并指定响应文件的名称。在 Windows 平台上,我们可以执行以下命令启动 ISA Lite: runISALiteConsole.bat -record wps62config-1.txt 对应地,UNIX 平台上的命令: ./runISALiteConsole.sh -record wps62config-1.txt 在这次收集过程中,我们对所有问题的选择和答案都将记录在 wps62config-1.txt 这个响应文件中。之后我们可以用所记录的响应文件以静默方式运行 ISA Lite 进行诊断数据收集,而不再需要人工交互,Windows 平台上命令如下: runISALiteConsole.bat wps62config-1.txt 在 UNIX 平台上对应命令如下: ./runISALiteConsole.sh wps62config-1.txt 通过带有响应文件的方式进行静默数据收集,ISA Lite 可以完全自动化整个收集过程,但它无法提醒用户重现问题,因此这种方式通常用于收集系统当前的诊断信息,而不适合需要人工参与重现问题的场景。 ISA Lite 是一个非常有效的诊断信息收集工具。在这篇文章中,详细地介绍了 ISA Lite 提供的数据收集功能,以及如何使用它来协助用户收集诊断数据。在实际工作中,用户可以根据不同的情况以最有效的方式运行 ISA Lite 完成数据收集过程。接下来可以自行分析这些数据或将其发送给 IBM 的技术支持团队。ISA Lite 降低了数据收集工作的复杂性并极大地减少收集数据所需的时间,同时改善了与 IBM 技术支持团队协作时的用户体验。 ... |
用户可能对这些堆栈跟踪内容完全不熟悉,无法进一步分析。 并且,由于系统上线时间紧迫,用户希望联系 IBM 的技术支持获得即时帮助。通常情况下,对于某些复杂的问题,初始信息不足以判定其根本原因,往往需要用户重现问题并收集更加详细的诊断数据,比如跟踪或 FFDC(第一次失败数据捕获(First Failure Data Capture, FFDC))日志文件。这时,我们就可以利用 ISA Lite 来轻松完成收集数据的工作了。
在我们解压缩后生成的 \ISALite 路径下,在命令行窗口执行 runISALite.bat,这将以图形界面的方式启动 ISA Lite。ISA Lite 启动之后的初始界面如图 1 所示:
说明:用户还可以命令行方式或静默方式运行 ISA Lite,在文章的下一部分将对这两种方式作进一步的介绍。
图 1. ISA Lite 启动界面
在 图 1. ISA Lite 启动界面中,用户可以指定问题的类别,对应地,这将依据产品的 MustGather 为特定的问题症状启用特定的跟踪内容。这里我们注意到问题收集选项部分除了 WPS 以外,还包括了 WebSphere 应用服务器。正如文章开始时所提到的,WPS 运行时环境建立在 WebSphere 应用服务器之上,对于某些复杂的问题,在发生时刻并不能准确判定它由哪个产品(缺陷)导致,因此,往往需要同时为 WebSphere 应用服务器和 WPS 启用多个跟踪内容以确保收集到足够多的信息用于后续的问题诊断。
例如,在这个示例场景中,根据堆栈跟踪 IBM 技术支持工程师可能会指导用户启用以下的跟踪内容:
*=info: com.ibm.ws.security.*=all:SCA.*=all:com.ibm.bpe.*=all
其 中,com.ibm.ws.security.*=all 是为 WebSphere 应用服务器的安全问题而启用的跟踪内容;而 SCA.*=all 和 com.ibm.bpe.*=all 则分别针对 WPS 和业务流程编排器 (Business Process Choreographer, BPC) 的相关问题而启用的跟踪内容。这里我们选择 WebSphere 应用服务器选项下面的 Global Security Problem 这一问题类型,对应地,就会启用跟踪 com.ibm.ws.security.*=all。接下来要为收集的诊断数据文件指定输出路径和文件名,通常文件命名要和 PMR 的编号一致以方便用户管理和上传。完成上面的步骤后,点击 “Collect Data” 按钮开始收集数据,此时,进度提示栏内会显示当前的进度信息。
注:如果用户对问题类型对应的跟踪内容并不熟悉也无需担心,IBM 技术支持会指导用户选择哪些问题类型或者需要启用的跟踪。
在 运行 ISA Lite 收集数据期间,可能会根据问题类型要求用户提供一些具体信息,如产品的安装目录,指定问题发生的概要文件以及日志文件数目和大小。其他问题可能会涉及到问 题的详细描述,或者提醒用户重现问题。不过通常来说,ISA Lite 会尽量减少问题及所需的人工交互。在这个示例场景中,我们将介绍 ISA Lite 在执行过程中的一些重要交互内容,主要包括:提醒用户输入问题的详细描述、重现步骤以及其他相关信息。
图 2. ISA Lite 运行过程中问题描述提示框
接下来的对话框会显示当前的跟踪内容并提示用户是否需要启用更多的跟踪:
图 3. ISA Lite 运行过程中启用跟踪提示
这里,我们选择 “Yes” 并点击 “OK” 按钮,然后使用 ctrl-v 将跟踪内容 SCA.*=all:com.ibm.bpe.*=all 复制到弹出的文本框中,如图 4 所示。
图 4. ISA Lite 运行过程中输入跟踪内容提示
完成这一步,我们就可以根据提示重现问题,之后 ISA Lite 将自动完成诊断数据的收集。
当数据收集过程结束之后,ISA Lite 会弹出对话框提醒用户是否需要将收集的诊断数据发送给 IBM 技术支持团队或者到远程系统,也可以不执行任何操作,这将在指定路径下生成一个压缩格式的诊断数据文件。
图 5. 为生成的诊断数据选择处理方式
这里我们选择将数据发送给 IBM 技术支持。在实际情况中,用户可以根据自己的需求选择以 HTTPS 或 FTP 的方式将生成的文件发送给 IBM 技术支持,这里我们选择匿名 FTP 的方式,需要输入电子邮件地址和操作系统进行确认,如图 6 所示。
图 6. 输入确认信息将数据发送至 IBM
最 后,ISA Lite 会提示用户数据传送是否成功,同时在启动页面的进度提示栏内,会出现一条提示信息 “The Collection has completed successfully”,这表明数据收集过程已经成功完成。这时候,我们可以点击页面上的 “Quit” 按钮退出 ISA Lite 应用程序。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/14789789/viewspace-623554/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/14789789/viewspace-623554/