首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

为有效进行产品故障诊断做好准备的 12 种方式(1)

为有效进行产品故障诊断做好准备的 12 种方式(1)

为实现更灵活的故障诊断进行仔细地准备当讨论用于故障诊断和问题确定的技术和工具时,通常大多数的讨论都是关于发现问题之后所要进行的工作。然而,理想情况下,谨慎的系统管理员或者故障诊断者应该早在问题发生之前就开始思考这项工作;换句话说,将环境准备好,以便在问题最终出现时可以更快速并且更有效地执行故障诊断。
本文提出了十二项建议,您可以实现这些建议以帮助提高解决问题的速度,即使是在最复杂的生产环境中。这个建议列表,既不是权威性的、也不是绝对的,它基于对客户端环境的常规观测结果和 IBM WebSphere Support 所发现的问题。然而,每个环境都有其独特的因素和约束,而它们可能使得这些建议中的某些内容更加(或者更不)实际或者适用。在您对这些(以及其他)操作进行评估时,可以为您的环境构建一个自定义故障诊断计划,并使用这个列表作为您的起点。即使您不可能充分地实现这个列表中的每一条建议,但是您所采用的每个步骤仍然可以为您节约时间,并且行之有效:
接下来的部分将详细地说明以上的每个步骤。
1. 创建并维护系统体系结构图体系结构图显示了整体系统的所有主要组件(一些计算机和正在这些计算机中操作的软件组件),它们如何通信,以及系统中处理相关请求的主要流程。对于简化和加速许多与故障诊断相关的任务,使用一个好的、且最新的体系结构图是非常有帮助的。特别是,系统体系结构图可以帮助您:
  • 确定在系统中寻找相关信息或者线索(关于导致问题发生的原因)的位置。
  • 在您的组织内部以及在尝试向 IBM Support 说明复杂环境的时候,需要在故障诊断任务所涉及的各个部门之间进行清晰地交流。
  • 回答并验证所有的故障诊断者都特别喜爱的一个问题:最近发生了什么更改?
体系结构图应该明确,并且足够简洁,以便人们能够快速理解。特别是,它应该尽可能地显示每个软件组件的实际当前版本,以及所有硬件组件的名称和地址。
2. 创建并跟踪所有问题确定构件的目录故障诊断活动最初常常重点关注于寻找和检查各种问题确定构件(如日志文件、转储文件等文件),这些构件是在问题出现前或者出现时生成的。它需要提前知道要寻找哪些文件、它们位于何处,并要确保确实正确地生成了它们,并且在需要的时候它们将是可用的。
为您系统中所有重要问题确定构件建立目录:
  • 说明每个文件用于什么情况、它的名称、位置、目的、典型内容及其大小。在这种情况下,使用系统体系结构图是非常方便的,因为它可以帮助您检查整个系统,以及可能产生有价值问题确定构件的所有组件。
  • 不要仅满足于“知道”该构件的存在。尽管从理论上讲,可以对所有内容进行设置并进行记录,但是没有任何东西可以替代实际测试来验证该原则。周期性地检查此活动系统,以验证所有期望的日志文件和其他构件被照常写入。
  • 确保有足够的磁盘空间(在适当的位置),以便继续写入所有相关的诊断文件,并接收在事故期间可能生成的任何其他文件。
  • 请确保不要太快地清除您的构件。如果出现了事故,您可能需要回过头去查阅在检测到该事故之前的数小时内所生成的日志文件。特别是,请确保在事故后重新启动系统时,不会意外地删除或者覆盖这些文件。
您可能需要考虑的问题确定构件对于每种不同的环境、产品集以及您所使用的应用程序,相关构件的集合也不相同。一些最常见的构件包括:
  • 与 WebSphere Application Server 相关的所有标准日志文件:activity.log、SystemOut.log、SystemErr.log、native_stdout.log、native_stderr.log 等等。
  • WebSphere Application Server 中的第一次失败数据捕获(First Failure Data Capture,FFDC)工具的事故文件。
  • Web 服务器的日志文件:access.log、error.log。
  • 构建于 WebSphere Application Server(如 WebSphere Portal、WebSphere Process Server 等等)之上的所有产品的日志文件。
  • 其他与主要的应用服务器进行交互的组件的任何日志文件,如防火墙日志、数据库服务器日志和 LDAP 目录服务器日志。
  • 由应用程序显式地产生的任何日志文件。
  • 由 Java 虚拟机产生的日志文件和转储:javacore 或者 java 转储、堆转储和系统转储(核心文件)。

3. 特别注意仅在问题出现时才生成的转储和其他构件在查看问题确定构件的时候,人们常常更多关注于日志文件,这些日志文件通常是在系统的整个生命周期中不断生成的。请记住,还有许多非常有价值的问题确定构件,它们仅在问题出现的时候才生成,或者由系统自动生成,或者由管理员的某项特殊操作而生成。
仅在问题出现的时候才生成的构件的示例
  • 在很多情况下,JVM 可以生成 Java/线程转储、堆转储和系统转储。
  • 某些 IBM 产品可以生成其内部状态的各种其他转储类型的数据。例如,WebSphere Application Server 提供了一个 (FFDC) 工具和一个。
  • 某些 IBM 产品在碰到特定的问题时,还可以生成特殊的跟踪文件(自动地生成、或者按需生成),而无需重新启动系统。

在大多数情况下,提供了各种配置选项以控制如何以及何时生成这些构件:
  • 对于在检测到问题的时候可以自动生成的任何文件:如果自动地产生这个文件,并且对配置进行相应地设置,那么请仔细考虑这项操作潜在的好处(和影响)。不要遗漏这个问题。如果潜在的好处很大,而影响很小,那么请确保启用这一功能。
  • 对于可能由管理员的特定操作而生成的文件:通常在执行特定操作之前,该文件对系统只有很小的或者根本没有影响。如果可能,做好必要的准备和配置更改,以确保该操作在需要的时候是可用的,并进行测试以确保它能够按预期进行工作。
返回列表