测试工程师如何分析操作系统日志?
最近在做一个实际项目的性能测试中,碰到一个问题,被测系统在压测试过程中,服务器默名其妙的关机了。而且原来有激活过的系统突然变成未激活了。由于我们这个被测试应用比较特
别,包括服务器硬件和软件? 那到底是硬件部分出现了问题还是软件问题呢?不找出问题的元凶,如果是硬件问题,问题就大了,这个问题让我心里非常不安。于是我决定花点时间来分析一
下。问题的难处在于系统重启是发生在凌晨3点多钟的时候那时候根本没人在动电脑,当时没人在现场,从应用层面来看,被测应用根本没有任何日志,那说明不是软件导致的。于是我决定从操
作系统分析日志着手,下面是分析步骤:
1.首先确定系统重启时间在,2015/8/12 3:28,见附件0.png
2.其次分析系统应用日志,发现在同日重启前有发生SystemRestore事件,即创建系统还原点。见附件1.png
3.查找系统还原点信息,在这个时刻确定创建系统还原点。信息为WindowsUpdate且为关键更新。也就是说系统强制更新的事件。见附件2.png
4.然后查找Setup日志信息,发现在系统重启前,有一系列补丁更新操作,随便查找一个KB3064209,发现已经安装成功,但需要重启生效。见附件3.png
5.然后观察下一条信息,发现KB3064209补丁已经成功标记为已更新,据些判定系统已经重启过了。时间点和1吻合。
结论: 到此,问题就非常清晰了,90%的可能性是由于windows的自动更新导致的,而这次的更新中包含了一个正版验证的关键更新,为了 更新生效,windows给你自动重启了。 疑问: windows怎么能这样呢,自动给重启了,难怪不得大型的服务器都不用windows,是有道理的。后来跟同事了解了一下,他的意思 是windows的个人版他也碰到过类似问题,服务器版本会提示让你重启不会自动重启,但愿吧!
其实一个好的性能测试工程师,必须是一个合格的系统工程师,^_^