进行根本原因分析

进行根本原因分析

我想了解更多有关如何执行根本原因分析的信息。我们部门经常会告诉用户尝试重新启动(他们的 Windows XP 系统),这实际上可以“解决”很多问题。当我很着急时(有时按小时计酬也会导致这种情况),我可能会尝试寻找一种解决方法,以便快速解决问题,而不是真正执行根本原因分析。

大多数时候,我都会在日志文件或事件查看器中查找这些信息。有时我会使用 Sysinternals 工具,或者偶尔运行数据包嗅探器。我可能没有像应该的那样经常使用 Sysinternals 程序。关于如何使用这些工具、何时使用以及为什么使用的一些具体见解也会很有帮助。

我知道这是一个开放性问题,但您能否简要介绍一下您使用的方法、工具等?看起来 SF 上的许多管理员都使用更深入的流程,我希望了解更多。如果这有助于缩小问题范围,我最感兴趣的是与 AD 环境中的 Windows 服务器和客户端相关的工具、提示、技巧等。

答案1

找出问题的根本原因取决于问题本身——查看日志文件/系统内部工具/数据包嗅探器的第一直觉通常是正确的。
我想补充一点,在 Windows 系统上运行 MS 恶意软件删除工具和好的 AV 程序(并确保它们没有 Cyber​​Defender 或其他 AV 木马恶意软件之类的东西)。

Stack Exchange 上的人们是“5 个为什么”方法的支持者(http://en.wikipedia.org/wiki/5_Whys, 还这个简短的 PDF 展示了它的实际作用)对于进行根本原因分析来说,它是一个非常有价值的工具。


除此之外,我还将介绍两大类以及我通常会问的一些问题/检查的事项:

与网络无关的神秘行为
例如“Word 总是崩溃”

要问的基本问题:

  1. 有什么变化?
    (不要把“没有”当作答案——这是第一个谎言。新软件、补丁等都算。)
  2. 遇到问题时你在做什么?
    (尽量在这里提取尽可能多的细节——在我上面的例子中,“我按下了热键插入首字母并且程序崩溃”)
  3. 它以前有用过吗?
    (如果是,请开始查看上面(1)的内容)
  4. 你能在你的系统上重现这个问题吗?
    (如果能,这是一个好兆头:给供应商打个技术支持电话可能会有帮助。如果不行,你需要查看用户的系统以找出其余的问题。)
  5. 用户的环境与您的环境有何不同?
  6. 用户的硬件是否有问题(运行内存测试、查找硬盘中的 SMART 错误等)
  7. 如果您已经走到这一步(硬件检查无误、软件检查无误、无病毒、无恶意软件),请拜访用户一天。观察他们的工作习惯。
    我的公司曾经出现过一种神秘的系统锁定现象,与以特定频率点击鼠标有关(我们仍然不知道原因,但我们必须观察用户的操作并练习一天,才能可靠地重现它)

与网络相关的问题

其中许多内容类似,但有一些更具体的指导。

  1. 发生了什么变化?
    (是的,你总是从这里开始)
  2. 什么东西坏了?
  3. 啥时候坏的?
    • 总是一天中的同一时间?
    • 每 N 天有一段短暂的时间?
    • 随机(是真的随机?在日历上标出来...)
  4. 远程站点有什么奇怪的地方吗?
    • 查看 DNS - 如果采用循环方式,则可能存在远程端故障
    • 我们是在谈论 VPN 的另一端吗?VPN 有什么问题(日志!)?
  5. 本地站点有什么奇怪的地方吗?
    • 检查本地防火墙
    • 检查任何“过滤软件”
  6. 请咨询您的 ISP,了解是否存在任何已知问题
  7. 检查类似网站http://www.internetpulse.net/针对已知的网络问题
  8. 检查用户的机器
    (TCP 设置等 - 通常不是问题,但有时是问题。)

答案2

除了迄今为止的出色回应外,我还要补充一点:

  • 确定问题发生的日期/时间。这似乎很明显,但我见过太多没有记录下来的问题,后来做出了错误的假设。这与“发生了什么变化”步骤非常吻合。

  • 问题是否可重现或间歇性?这很关键,因为可重现的症状比间歇性症状更容易、更快地解决。如果可重现,请确保记录步骤。

  • 识别症状。请注意,我们区分“症状”(根本原因的表现)和实际问题/根本原因。

    1. 还有其他活动可以重现这种症状吗?
    2. 还有什么其他症状?
    3. 如果问题是间歇性的,我们能否确定导致该问题发生的活动?
    4. 在什么情况下我们可以防止症状发生?问题是否仅在使用网络帐户登录时发生,但如果在本地登录则正常工作?问题是否在以普通用户身份登录时发生,但如果使用提升的权限登录则正常工作?它是否仅在一个系统上发生,但另一个类似的系统不会出现症状?
  • 将问题定位到可能存在故障的功能组件。如果 Web 应用程序中存在错误,那么该错误是出在应用程序代码、Web 服务器、托管 Web 服务器的操作系统、网络还是远程端?这是目前最好的猜测,以便将资源集中在可能的原因上,因此请确保其他人知道这只是理论/猜测。

  • 质疑你的假设,并尝试收集经验数据来支持假设和结论。告诉某人 x 没有问题,但后来发现确实有问题,这种感觉非常糟糕。通常,当存在错误的解决方案时,可能会有数据支持正确的解决方案。

答案3

听起来你正在寻求常规故障排除帮助,例如您的故障排除规则、故障排除方法?而不是如何做某种特定的 RCA(http://en.wikipedia.org/wiki/Root_cause_analysis)。

相关内容