最近微软的技术支持回应了一些客户的查询,他们询问如何解决在台式机或笔记本电脑的启动和用户登录过程中出现的延迟问题。Windows性能工具包中的xbootmgr.exe工具适用于故障排除单独电脑上的引导和启动的问题。但如果你是一家具有数千台桌面电脑的大型企业呢?在用户向桌面支持人员报告此问题之前你需要一种方法来识别有问题的计算机。你需要在整个企业中随时监视桌面的启动时间。然后你需要一种方法来收集引导时间的测量数据,类似于由xbootmgr.exe收集的那些每台机器每次启动的数据。在这里,我将介绍如何使用一种事件日志——新的Windows 7事件查看器和Wevtutil工具来做这些事情。
可以帮助故障排除的一种新的事件日志
从Windows Vista开始,Windows现已包含了一种新的事件日志类别:应用程序和服务的日志。事件日志记录的基础架构现在已基本符合XML架构。你可以轻易地访问任何事件的XML数据。新的事件日志界面允许你对事件日志建立基于XML的查询。在一个易于使用的图形界面中,事件查看器为你提供了访问新的XML的功能。
此新类别日志的其中之一是Diagnostics-Performance/Operational(诊断-性能/操作)日志。此日志包含了类似于由xbootmgr.exe提供的那些记录性能测量的事件。实际上,记录数据由与Xbootmgr所使用的相同的机制来生成。事件ID100至110记录了引导和启动的性能统计信息。
在Windows 7中使用事件查看器
Windows 7中新的事件查看器允许你执行功能更强大的筛选。新的用户界面允许你指定事件的范围。在后台,它建立XPath查询来筛选出基于你指定条件的事件。图1显示了你如何可以筛选出事件100至110。图2显示了相同查询参数的XML版本。对于测量启动性能的目的,我们感兴趣的是事件ID100。图3和图4显示了事件100的一般格式和XML格式的视图。
图1
图2
图3
图4
事件的XML显示包含了大量你会感兴趣的信息。BootTime值表示从系统引导开始到用户登录到系统中并且达到有10秒钟的80%闲置后之间所经过的毫秒数。其他列出的时间值代表了在此启动过程中不同阶段所经历的时间。你可以在“Windows开/关转换性能分析白皮书”(http://www.microsoft.com/whdc/system/sysperf/On-Off_Transition.mspx)中找到有关启动过程中各个阶段的详细信息。
其它的启动性能事件记录了关于特定事件的信息,这有助于找到在引导/启动顺序中延迟的原因。诀窍是如何知道这些信息是属于哪个启动实例。这时候ActivityID可以派上用场。在图4中,你将会在XML数据中看到以下信息:
<Correlation ActivityID="{00000001-0000-0000-1020-5CA87BB1CA01}" />
在这个事件100记录中的关于此启动实例的所有事件都具有相同的ActivityID。通过执行以下的步骤,我们可以使用此信息来创建更复杂的筛选器:
1.在事件查看器的操作窗格中点击Filter Current Log…(筛选当前日志)。
2.在XML选项卡上,选中Edit query manually(手动编辑查询),然后当系统提示继续时回答“是”。
3.在查询框中输入以下XML文本:
<QueryList>
<Query Id="0" Path="Microsoft-Windows-Diagnostics-Performance/Operational">
<Select Path="Microsoft-Windows-Diagnostics-Performance/Operational">*[System\[(Correlation\[@ActivityID="{00000001-0000-0000-1020-5CA87BB1CA01}"])]]</Select>
</Query>
</QueryList>
4.点击确认。
图5显示了关于此ActivityID的总共三个事件。我们现在可以检查这些事件以了解引起任何的引导/启动延误问题的原因。
图5
使用Wevtutil来收集数据
到目前为止,我们看到的都是只有一个启动实例。我们该如何收集所有启动实例的数据呢?可以通过使用Wevtutil——一个用于查询事件日志的Windows命令行工具。使用下面的示例,你可以从系统的事件日志中提取所有的事件ID100的记录:
wevtutil qe Microsoft-Windows-Diagnostics-Performance/Operational /rd:true /f:xml /q:"*[System\[(EventID = 100)]]" /e:Events > boot.xml
这将创建一个包含了一台计算机中启动性能事件的所有实例的XML数据文件。通过每一个 ActivityID,然后你可以查询其它相关的事件。例如,下面的查询可以提取我们在图5中看到的相同的三个事件记录:
wevtutil qe Microsoft-Windows-Diagnostics-Performance/Operational /rd:true /f:xml /q:"* [System\[(Correlation\[@ActivityID='{00000001-0000-0000-1020-5CA87BB1CA01}'])]]" /e:Events > bootrelated.xml
Wevtutil.exe具有更多的选项。不带任何参数运行此实用工具以查看可用选项的列表。要了解更多详细信息,请参阅MSDN文章“事件查询和事件的XML(http://msdn.microsoft.com/en-us/library/bb399427.aspx)。”要了解更多关于学习XPath以定义事件查询的更多信息,请参阅XPath的语法(http://msdn.microsoft.com/en-us/library/ms256471.aspx)和XPath的示例(http://msdn.microsoft.com/en-us/library/ms256086.aspx)。
把全部数据集中到一起
一旦你获得了XML格式的事件数据,那么可以相当容易地提取你最感兴趣的数据点。图6显示了一些我从一台计算机中所搜集的示例数据。在此示例中,我将时间值转换为秒。当你正在调查性能的变化时,启动应用程序的启动时间数值的差异可能会很大。通过像这样的历史数据,你现在可以开始做一些趋势分析。例如,此系统是建立在2010年1月13日。在接下来的几天中进行了安装应用程序和更改配置。到2010年1月21日配置更改已经完成。在此之后,BootTime值平均约为124秒。但是,注意到2010年2月4日和2010年2月9日的启动时间明显超过了平均水平。
图6
扩展价值
现在,我们已经拥有了一种可以自动提取XML格式的事件数据的方法,我们可以从多台计算机上定期收集这类数据,并将结果存储在数据库中。使用一些简单的报表,很容易做趋势分析。一个完整的企业解决方案将需要更多的代码开发和数据管理,但这是完全可行的。而这也正是是我其中一个最大客户所做的事情。
通过使用一个我所编写的VBScript程序,客户将收集到的事件数据放入SQL Server数据库中。他们使用此数据来为他们建立的桌面映像制定一些基准统计数字。他们可以基于硬件(例如:内存、CPU、型号)来分析数据和软件配置。使用SQL Server报表服务,客户可以在企业中建立一个显示所有台式机的启动时间健康状况的仪表板视图。通过特定的报表,他们可以在部署了新的组策略、新的安全工具或者是硬件升级之后,以此基准对新收集的数据进行比较。他们还可以使用此数据来主动识别出那些需要比平均基线更长时间的计算机。此信息使IT在用户呼叫桌面支持之前就可以解决问题,减少了解决问题的时间,并且可以使最终用户更愉快。
自由广告区 |
分类导航 |
邮件新闻资讯: IT业界 | 邮件服务器 | 邮件趣闻 | 移动电邮 电子邮箱 | 反垃圾邮件|邮件客户端|网络安全 行业数据 | 邮件人物 | 网站公告 | 行业法规 网络技术: 邮件原理 | 网络协议 | 网络管理 | 传输介质 线路接入 | 路由接口 | 邮件存储 | 华为3Com CISCO技术 | 网络与服务器硬件 操作系统: Windows 9X | Linux&Uinx | Windows NT Windows Vista | FreeBSD | 其它操作系统 邮件服务器: 程序与开发 | Exchange | Qmail | Postfix Sendmail | MDaemon | Domino | Foxmail KerioMail | JavaMail | Winwebmail |James Merak&VisNetic | CMailServer | WinMail 金笛邮件系统 | 其它 | 反垃圾邮件: 综述| 客户端反垃圾邮件|服务器端反垃圾邮件 邮件客户端软件: Outlook | Foxmail | DreamMail| KooMail The bat | 雷鸟 | Eudora |Becky! |Pegasus IncrediMail |其它 电子邮箱: 个人邮箱 | 企业邮箱 |Gmail 移动电子邮件:服务器 | 客户端 | 技术前沿 邮件网络安全: 软件漏洞 | 安全知识 | 病毒公告 |防火墙 攻防技术 | 病毒查杀| ISA | 数字签名 邮件营销: Email营销 | 网络营销 | 营销技巧 |营销案例 邮件人才:招聘 | 职场 | 培训 | 指南 | 职场 解决方案: 邮件系统|反垃圾邮件 |安全 |移动电邮 |招标 产品评测: 邮件系统 |反垃圾邮件 |邮箱 |安全 |客户端 |