对问题进行故障诊断的方法
故障诊断过程的第一步是完整地描述问题。 问题描述可帮助您和 IBM® 支持 了解从何处开始查找问题原因。 此步骤包括一些对您自己提出的基本问题:
- 问题有什么症状?
- 问题在何处发生?
- 问题在何时发生?
- 问题在何种情况下发生?
- 您是否可以重现此问题?
这些问题的答案通常会形成对问题的准确描述,随后有助于解决问题。 有关更多信息,请参阅 搜索知识库。
问题有什么症状?
开始描述问题时,最明显的问题是 问题是什么?
此提问可能看似比较直截了当;但是,您可以将其分解为多个更有针对性的提问,从而更生动地描述问题。 这些疑问可能包括:
- 谁或哪个组件报告该问题?
- 错误码和消息是什么? 您是否开启了增强型错误消息传递以获取有关该错误的更多详细信息?
有关增强型错误消息传递的更多信息,请参阅 允许用户获取错误消息详细信息以进行故障诊断。
- 系统如何出现故障? 例如,是由于循环、挂起、崩溃、性能下降还是结果不正确?
问题在何处发生?
确定问题源自何处往往没有那么容易,但这却是解决问题的最重要一步。 在报告组件与故障组件之间可能存在多层技术。 网络、磁盘和驱动程序仅仅是调查问题时需要考虑的一小部分组件。
以下提问有助于您关注发生问题的位置,从而找出发生问题的层:
- 问题是特定于一个平台或操作系统,还是在多个平台或操作系统上普遍存在?
- 当前的环境和配置是否受支持?
- 是否所有用户都有此问题?
- (对于多站点安装。) 是否所有站点都遇到此问题?
即使一个层报告问题,该问题也不一定源于该层。 要确认问题的产生位置,就要了解问题所处的环境。 请花点时间完整地描述问题环境,包括操作系统和版本、所有相应的软件和版本以及硬件信息。 确认您正在受支持配置的环境中运行; 许多问题可追溯到不兼容的软件级别,这些软件级别并非旨在一起运行或未一起进行完全测试。
问题在何时发生?
制定导致失败的事件的详细时间线,尤其是对于一次性发生的事件。 通过倒推法最容易制定时间线:从报告错误的时间(尽可能精确,甚至精确到毫秒)开始,通过可用的日志和信息进行倒推。 通常,您只能查看在诊断日志中找到的第一个可疑事件。
要制定事件的详细时间线,请回答下列提问:
- 此问题是否只在白天或晚上的某个特定时间发生?
- 此问题的发生频率如何?
- 在报告此问题之前,所发生的一系列事件是什么?
- 该问题是否发生在环境变更(如升级或者安装软件或硬件)之后?
回复这些类型的问题可为您提供用于调查问题的参考框架。
问题在何种情况下发生?
了解发生问题时有哪些系统和应用程序正在运行是故障诊断的重要组成部分。 以下关于环境的提问可以帮助您确定问题的根本原因:
- 此问题是否始终在执行同一任务时发生?
- 是否必须发生一系列特定顺序的事件才会出现该问题?
- 在同一时间是否有任何其他应用程序发生故障?
回答这些类型的提问可帮助您说明问题发生时的环境并关联所有依赖项。 即使在同一时间周围发生了多个问题,问题也不一定相关。
您是否可以重现此问题?
从故障诊断的角度来说,理想的问题是可以重现的问题。 通常,如果可以重现问题,那么您可以通过更多的工具或处理过程来帮助进行调查。 您可以重现的问题通常更容易调试和解决。
但是,可重现的问题也存在缺点:如果该问题对业务有严重影响,那么您不会希望它再次发生。 如有可能,请在测试或开发环境中重现该问题,这通常使您在调查期间更具灵活性和控制能力。
- 能否在测试系统上重现问题?
- 是否有多个用户或应用程序遇到同一类型的问题?
- 可以通过运行单个命令,一组命令或特定应用程序来重现问题吗?