Windows操作系统的性能监控工具――Perfmon

合集下载

PerfMon_Windows性能监视器的使用说明

PerfMon_Windows性能监视器的使用说明

以跟踪IIS应用程序中的数据库连接数为例运行> perfmance 打开性能计数器管理界面。

创建收集器集
给收集器集取名字,设置成手动。

选择要跟踪“性能计数器”
添加计数器。

在.NET Data Provider for Oracle或.NET Data Provider for SqlServer中选择计数器:NumberOfPooledConnections
为了避免IIS发生reset 后,需要重新增加计数器,这里选择所有实例。

最后确定。

同时,你可以根据自己的需要添加CPU 内存或者磁盘等的相关监控。

设置跟踪的停止时间,我一般设置跟踪一周。

也可以根据需要调整。

对于重现周期比较长的问题,比如月度等,可以设置总持续周期为5,如下图
右键开始跟踪即可。

跟踪状态
从指定的路径可以获取跟踪文件分析。

应用服务器需要关注的计数器
数据库服务器需要关注的计数器。

性能监视器-PerformanceMonitor

性能监视器-PerformanceMonitor

性能监视器-PerformanceMonitor性能监视器是Windows⾃带的系统资源和性能监视⼯具. 性能监视器能够量化地提供CPU使⽤率, 内存分配状况, 异常派发情况, 线程调度频率等信息. 能够提供每秒钟的请求数⽬, 请求响应时间等等. 性能监视器能够监视⼀段时间内上述资源的利⽤情况, 提供平均值和峰值.性能监视器有助于获取关于性能的具体指标, 监视问题出现时系统资源的变化情况. 通过检查性能监视器中⼀些重要计数器的变化情况, 往往能够找到⼀些⽐较有⽤的线索. ⽐如⽐较每秒请求数⽬, 请求响应时间和CPU利⽤率是否有相同的变化曲线就能看出性能是否跟负载相关.解决性能问题的时候, 往往会让客户添加下⾯⼀些计数器进⾏性能收集.Process object下的所有计数器Processor object下的所有计数器System object下的所有计数器Memory object下的所有计数器如果客户的程序时.NET程序, 还会添加以.NET开头的object下的所有计数器.如果客户使⽤, 还会添加以开头的object下的所有计数器.分析性能⽇志的时候, 重点观察下⾯这些计数器.Process object=============Process object中的计数器可以根据⽬标进程分析内存, CPU, 线程数⽬和handle数⽬. 选出问题的⽬标进程, 然后分析⽬标进程的下⾯⼀些计数器.%Processor Time-------------------该计数器是该进程占⽤CPU资源的指标. 即便进程繁忙的时候, CPU平均占⽤率应该在80%以内. 如果超过该数值, 可以认为程序发⽣了⾼CPU的问题. 另外⼀种问题是CPU波动幅度⼤. 虽然平均占⽤率不⾼, 但是上下跳动频繁. 在某⼀个短时间段⾥⾯, 会有连续⾼CPU的情况出现.Handle Count------------------该计数器记录了当前进程使⽤的kernel object handle数量. Kernel object是重要的系统资源. 当程序进⼊稳定运⾏状态的时候, Handle Count 数量也应该维持在⼀个稳定的区间. 如果发现Handle Count在整个程序周期内总体趋势连续向上, 应该考虑程序是否有Handle Leak.ID Process------------------该计数器记录了⽬标进程的进程ID. 你可能觉得奇怪, ID有什么好观察的? 进程ID是⽤来观察程序是否有重启发⽣. ⽐如⼯作进程可能会⾃动回收. 由于进程名都相同, 所以只有通过进程ID来判断是否有重新启动现象. 如果ID有变化, 那么⽽看看程序是否发⽣崩溃或者Recycle.Private Bytes------------------该计数器记录了当前通过VirtualAlloc API进⾏的, Commit了的Memory数量. ⽆论是直接调⽤API申请的内存, Heap Manager申请的内存, 还是CLR的managed heap, 都算在⾥⾯. 跟Handle Count⼀样, 如果在整个程序周期内总体趋势连续向上, 说明有Memory Leak.Virtual Bytes------------------该计数器记录了当前进程申请成功的⽤户态总内存地址, 包括DLL/EXE占⽤的地址和通过VirtualAlloc API进⾏的, Reserve了的内存地址数量,所以该计数器应该总⼤于Private Bytes. ⼀般说来, Virtual Bytes与Private Bytes的变化⼤致⼀致. 由于内存分⽚的存在, Virtual Bytes与Private Bytes⼀般保持⼀个相对稳定的⽐例关系. 当Virtual Bytes与Private Bytes的⽐例⼤于2的时候, 程序往往有⽐较严重的内存地址分⽚. Processor object==============Processor object记录系统中芯⽚的负载情况. 由于普通程序并不可以绑定到某个具体的CPU上执⾏, 所以在多CPU机器上观察Total Instance 也就⾜够了.%Processor Time----------------------该计数器跟Process下的%Processor Time的意义⼀样, 不过这⾥记录的不是针对具体的某⼀个进程, ⽽是整个系统. 通过把该计数器跟Process下的同名计数器⼀起⽐较, 就能看出系统的⾼CPU问题是否是由于单⼀的某个进程导致的.System object==============System object记录系统中⼀个整体的统计信息. 所以不区分instance. 通过⽐较System object下的counter和其他counter的变化趋势, 往往能看出⼀些线索.Context Switch/ sec--------------------Context Switch标⽰了系统中整体线程的调度, 切换频率. 线程切换是开销⽐较⼤的操作. 频繁的线程切换回导致⼤量CPU周期被浪费. 所以当看到⾼CPU的时候, ⼀定要与Context Switch⼀起⽐较. 如果两者有相同的变化趋势, ⾼CPU往往是由于contention(线路争夺)导致的, ⽽不是死循环.Exception Dispatches/ sec-------------------Exception Dispatches表⽰了系统中异常派发, 处理的频繁程度. 跟线程切换⼀样, 异常处理也需要⼤量的CPU开销. 分析⽅法跟Context Swith 雷同.File Data Operations/ sec-------------------File Data Operations记录了当前系统中磁盘⽂件读写的频繁程度. 通过观察该计数器跟其他性能指针的变化趋势, 能够判断磁盘⽂件操作是否是性能瓶颈. 类似的计数器还有Network Interface, Bytes Total/ secMemory Object=============Memory object记录了当前系统中整体内存的统计信息.Avaiable Mbytes 和 Committed Bytes---------------------Available Mbytes记录了当前剩余的物理内存数量. Committed Bytes记录了所有进程commit的内存数量. 结合两个计数器可以观察到:1. 两者相加可以粗略估计系统总体可⽤内存的多少, 便于估计物理配置.2. 当Available Mbytes少于100MB的时候, 说明系统总体内存紧张, 会影响到系统所有进程的性能. 应该考虑增加物理内存或检查内存泄露.3. 通过⽐较Process object中的Private Bytes和Virtual Bytes, 便于进⼀步确认是否有内存泄露, 判断内存泄露是否是由某⼀单个进程导致的.Free System Page Table Entries, Pool Paged Bytes 和 Pool Nonpaged Bytes--------------------这三个计数器可以衡量核⼼态空闲内存的数量. 特别是当使⽤/3GB开关后, 核⼼态内存地址被压缩, 容易导致核⼼态内存不⾜, 继⽽引发⼀些⾮常奇怪的问题..NET CLR Memory object=============.NET CLR Memory object记录了CLR进程中跟CLR相关的内存信息. 该类别下的所有计数器都很有趣, 意思也⾮常直接. 建议⽤⼀个例⼦程序进⾏测试和研究. 下⾯是两个最常⽤的计数器.Bytes in all heaps----------------------Bytes in all heaps 记录了上次GC发⽣时所统计到的, 进程中不能被回收的所有CLR object占⽤的内存空间. 该计数器不是实时的, 每次GC发⽣的时候, 该计数器才更新. 与同⼀进程的Process下的Private Bytes⽐较, 可以区分出managed heap和native memory的变化情况. 对于memory leak, 便于区分是managed heap的leak, 还是native memory 的leak.%Time in GC%Time in GC记录了GC发⽣的频繁程度. ⼀般来说15%以内算⽐较正常. 当超过20%时, 说明GC发⽣过于频繁. 由于GC不仅带来很⾼的CPU 开销, ⽽且还需要挂起⽬标进程的CLR线程, 所以⾼频率GC是⾮常危险的. 通过跟CPU利⽤率和其他性能指标的⽐较, 往往能够看出GC对性能的影响. ⾼频率的GC往往因为:1. 负载过⾼.2. 不合理的架构, 对内存使⽤率不⾼.3. 内存泄露, 内存碎⽚导致内存压⼒.的性能监视============如果⽬标程序时, 在开头的object中, 下⾯这些计数器对于测量的性能⾮常有⽤. 由于不少计数器存在于多个object 类别中, 下⾯只列出具体的计数器名字, ⽽不去对应到具体的object.Application Restarts-------------------Application Restarts记录了 Application Domain重启的次数. 导致 appDomain重启的原因往往是虚拟⽬录被修改. ⽐如修改了web.config⽂件, 或者防毒程序对母你⽬录进⾏了扫描. 通过该计数器可以观察是否有异常的重启现象.Request Execution Time-------------------Request Execution Time记录了请求的执⾏时间, 它是衡量性能的最直接参数. 通过该计数器的平均值来衡量性能是否合乎预期. 需要注意的地⽅是: 由于Windows并⾮实时系统, 所以不能⽤峰值来衡量整体性能. ⽐如当GC发⽣的时候, 请求执⾏时间肯定要超过GC的时间.所以, 平均值才是有效的标准.Request Current-------------------Request Current记录了当前正在处理的和等待处理的请求. 最理想的情况是Request Current等于CPU的数量, 这说明请求与硬件资源能并发处理的能⼒恰好吻合, 硬件投资正运⾏在最优状态. 但是⼀般说来, 当负荷⽐较⼤的时候, Request Current也随着增⾼. 如果Request Current在⼀段时间内有超过10的情况, 说明性能有问题. 注意观察此时对应的CPU情况和其他的资源. 如果CPU不⾼, 很可能是是程序中有Blocking发⽣, ⽐如等待数据库请求, 导致请求⽆法及时完成.Request/ second------------------Request/ second计数器记录了每秒钟到达的请求数. 这是衡量负载的直接参数. 注意观察Request/ second是否超过程序预期的吞吐量. 如果Request/ second 有突发的波动, 注意看是否有拒绝服务攻击. 通过把Request/second, Request Current, Request Execution Time和系统资源⼀起⽐较, 往往能够看出整体性能的变化和各个因素之间的影响.Request in Application Queue------------------当没有空余的⼯作线程来处理新进⼊的请求的时候, 新的请求会被放到Application Queue中. 当Application Queue堆积的请求也超过设定数值的时候, 直接返回503 Server Too Busy错误, 同时丢弃该请求. 所以正常情况下, Request Application Queue应该总为0,否则说明已经有请求堆积, 性能问题严重.摘⾃<Windows⽤户态程序⾼效排错>。

procmonitor的使用方法

procmonitor的使用方法

procmonitor的使用方法
Procmon是一款免费的Windows进程监视工具,它能够帮助用户监视系统上运行的进程和线程的活动,以及监视系统和应用程序的文件和注册表操作。

使用Procmon可以更轻松地发现并解决Windows应用程序的问题,同时也可以查看任何应用程序如何访问系统资源。

以下是Procmon的使用方法:
1. 下载Procmon并安装它。

2. 打开Procmon,它将自动开始监视系统。

3. 点击“过滤器”按钮,在“过滤器”对话框中设置需要监视的进程、操作、路径等筛选条件,然后点击“添加”按钮。

4. 执行需要监视的应用程序或操作,Procmon将记录所有相关的文件操作、注册表操作和网络活动。

5. 在Procmon窗口中查看日志,它将显示应用程序或操作所执行的所有操作,可以通过过滤器将结果进一步缩小到特定的操作或文件路径。

6. 通过查看Procmon日志,可以确定应用程序或操作中出现的问题,并采取适当的措施解决它们。

总的来说,Procmon是一款强大的Windows进程监视工具,可以帮助用户追踪系统和应用程序的活动,及时发现和解决问题。

- 1 -。

performance-monitor 指标含义

performance-monitor 指标含义

Performance Monitor是一种用于监控计算机系统性能的工具。

它可以提供有关系统资源使用情况的详细信息,例如CPU利用率、内存使用情况、磁盘性能和网络性能等。

这些指标可以帮助管理员了解系统的运行状况,并找出潜在的性能瓶颈和问题。

1.CPU利用率:衡量CPU的使用情况,包括用户模式和内核模式的使用时间,
以及空闲时间。

高CPU利用率可能意味着系统正在处理大量任务,或者存在某些任务占用了过多的CPU资源。

2.内存使用情况:包括物理内存、虚拟内存和磁盘缓存的使用情况。

如果系统
经常使用交换空间(即磁盘作为虚拟内存),则可能会导致系统性能下降。

3.磁盘性能:包括磁盘读写速度、I/O等待时间和磁盘队列长度等指标。

磁盘
性能低下可能导致系统响应缓慢,甚至出现死机或崩溃等问题。

4.网络性能:包括网络带宽、数据包传输速率和丢包率等指标。

网络性能问题
可能导致远程连接缓慢或断开,以及数据传输错误等问题。

通过监控这些指标,管理员可以了解系统的运行状况,并采取相应的措施来优化系统性能、解决潜在问题,并确保系统的稳定性和可靠性。

电脑win7系统自带的性能监视器两种开启使用方法

电脑win7系统自带的性能监视器两种开启使用方法

电脑win7系统自带的性能监视器两种开启使用方法
随着计算机技术和通信技术的飞速发展与紧密结合,促进了计算机网络技术的高速发展,今天人们正处在信息社会,计算机网络技术就显得尤为重要。

下面是店铺为大家整理的关于电脑win7系统自带的性能监视器两种开启使用方法,一起来看看吧!
电脑win7系统自带的性能监视器两种开启使用方法
1、使用快捷键“win+r”,打开运行窗口,输入“perfmon”,回车;
2、然后就可以打开性能监视器了。

方法二:
1、首先右击“计算机”图标,选择“管理”;
2、在弹出页面中,依次打开“系统工具”、“性能”,就可以看到性能监视器了。

我们可以使用性能监视器实时查看性能数据,获取一些有用的信息资料。

【性能监控-Perfmon工具】Perfmon工具使用教程

【性能监控-Perfmon工具】Perfmon工具使用教程

【性能监控-Perfmon⼯具】Perfmon⼯具使⽤教程⼀、Perfmon⼯具简介Perfmon是⼀款Windows⾃带的性能监控⼯具,提供了图表化的系统性能实时监视器、性能⽇志和警报管理。

通过添加性能计数器可以实现对CPU、内存、⽹络、磁盘、进程等多类对象的上百个指标的监控。

其中,性能⽇志可定义输出格式为⼆进制⽂件、⽂本⽂件、SQLSERVER记录等,以⽅便后续使⽤第三⽅⼯具进⾏分析。

⼆、Perfmon⼯具的使⽤⽅法Perfmon是windows⾃带的⼯具,不需要安装。

打开并使⽤perfmon⼯具的步骤如下:1、组合win+R打开运⾏界⾯,输⼊perfmon,点击确定即可打开perfmon⼯具界⾯:2、左侧导航栏中选择“性能监视器”,右侧点击绿⾊的图标“+”号。

3、弹出“添加计数器”界⾯。

4、下⾯以项⽬A(进程名称为SRE.exe)为例,添加计数器,实时监控该项⽬的内存、cpu、磁盘指标。

5、查看实时监控数据。

2.2、使⽤计数器⽇志监控⽅法上述实时监控⽅法只能查看当前所配置的“持续时间”内的数据,不能把监控的数据保存下来。

如果需要持续对SRE项⽬或系统的指定的性能指标进⾏监控,就需要使⽤Perfmon⼯具的计数器⽇志功能。

计数器⽇志可以把监控数据以指定的⽅式保存到本地,也能⽅便后续使⽤第三⽅⼯具对监控的数据进⾏分析。

下⾯仍然以项⽬A(进程名称SRE.exe)为例,监控该项⽬的内存、cpu、磁盘指标,并将监控数据以“逗号分隔”的格式保存到本地,选择“逗号分隔”时,保存到本地的⽂件将为csv格式。

具体步骤如下:1、与2.1中同样的⽅法打开Perfmon⼯具,在左侧导航栏中选择“数据收集器集-⽤户定义”,然后⿏标右键-新建-数据收集器集,弹出界⾯如下,⾃定义名称如此处命名“ETK”。

选择“⼿动创建(⾼级)”,点击“下⼀步”:2、继续点击“下⼀步”:3、选择性能数据⽇志保存的位置,点击“下⼀步”:4、点击“完成”:5、在perfmon⼯具界⾯,左侧选择刚创建的“ETK”,⿏标右键-新建-数据收集器,弹出界⾯如下,⾃定义名称如此处命名为“ETK性能监控数据”,点击“下⼀步”:6、点击“添加”,在弹出的界⾯中安装2.1中介绍过的⽅法添加需要监控的性能指标,然后点击“确定”:7、设置⽰例间隔为“5秒”,数据收集器程序将每隔5秒获取⼀次监控的性能指标数据,点击“下⼀步”:8、点击“完成”:9、在Perfmon⼯具界⾯,导航栏选中创建的“ETK”,右侧上⽅点击绿⾊的“启动”按钮,启动性能监控,启动后可查看到右侧“输出”显⽰前⾯第3步中设置的保存位置路径:10、前往输出路径⽂件夹查看⽣的⽇志,默认格式为.blg:11、为了⽣成.csv格式的数据,⽅便我们查看并分析,需要按下图步骤修改保存的⽇志格式为“逗号分隔”:12、重新查看⽣成的⽇志⽂件为.csv了,双击查看⽂件,可看到监控的数据,通过选中列并插⼊图表来查看监控时间段内性能指标的⼀个趋势:13、以上是Perfmon⼯具使⽤计数器⽇志监控的使⽤⽅法,在第⼀步中,还可以选择“从模板创建(推荐)”,模板的来源为第⼀次⼿动创建了⼀个数据收集器如ETK后,可以在Perfmon界⾯,左侧导航栏选择“ETK”,右键-保存模板,如下图:保存的模板为.xml格式,选择位置路径后点击“保存”:这样下次需要监控其他项⽬的性能指标(监控的指标也是ETK监控的那些指标,如内存、cpu、磁盘等)时,就不需要重新⼿动添加数据指标了,只需要选择“从模板创建”,选择本地模板即可。

WINDOWS性能检测工具使用

WINDOWS性能检测工具使用

WINDOWS下性能监测工具的使用这里简单介绍windows下性能管理工具的使用,用于得到计算机的性能数据。

1.开始-运行-输入-perfmon.exe,打开性能管理工具2.单击计数器日志,右边空间内点击右键-新建日志设置,出现输入名称对话框。

此处输入new。

3.点确定,出现如下对话框:4.点添加对象,选择需要管理的监测对象,每选择一个,点击添加。

可选择多个。

这里我们选择Processor,PhysicalDisk,Memory三个对象。

5.对象添加结束之后,点关闭,这里要设置数据取样的时间间隔,不宜太大,也不宜太小,按照相应的应用及日志文件的启动时间长,设置好相应的时间间隔。

默认是15s取样一次。

6.点日志文件,配置中选择二进制文件,开始时的号码设为1.7.点计划,可以设置日志的启动和停止时间。

8.点击应用-确定,在界面上便会出现相应的图标。

绿色代表日志文件启动,红色代表日志文件停止。

也可手动的启动停止日志文件。

9.单击系统监视器,出现系统监控的波形图。

曲线的个数,与设计的计数器的个数相同。

10.单击中的“+”,出现天价计数器的对话框。

可以选择相应对象需要监控的计数器,得到其性能参数。

这里添加Memory的Available MBytes,PhycialDisk的Avg.Disk Bytes/Transfer计数器11.添加结束后,点击关闭。

在右边会出现我们所添加的相应计数器。

12.单击中按钮,可以查看已经记录的性能数据。

13.单击添加,选择相应的日志文件,找到相应的日志文件保存目录。

14.选择打开,14.单击时间范围,拉动时间条。

可查看相应日志文件对应时间段的性能数据。

点击相应的计数器,便可查看对应时间段内对应计数器的最大,最小及平均值。

15.单击中可以得到平均值的报表。

注:这里重点是要选择需要监测的对象及对应的计数器。

CPU的使用率可直接由计数器的值得出,内存使用率可跟踪监测剩余内存值,将内存容量减去剩余值,在除以内存容量既是内存使用率。

performance monitor使用方式

performance monitor使用方式

performance monitor使用方式Performance Monitor(性能监视器)是一款Windows操作系统自带的工具,用于监视和分析计算机系统的性能。

它可以帮助用户实时监控系统资源使用情况,定位系统性能问题,并进行性能优化。

本文将介绍Performance Monitor的使用方式,包括监视对象的选择、计数器的配置、性能数据的收集和分析等。

1.启动Performance MonitorPerformance Monitor可以通过多种方式启动,以下是一些常见的启动方式:-在Windows任务栏的搜索框中输入"perfmon",并点击打开Performance Monitor。

-按下Windows键+R,输入"perfmon"并点击确定。

-在Windows管理工具中找到Performance Monitor并点击打开。

2.监视对象的选择一旦打开Performance Monitor,就可以开始选择要监视的对象。

监视对象是指需要监视其性能的计算机组件或应用程序。

Performance Monitor提供了许多预定义的监视对象,如处理器、内存、磁盘、网络等。

可以在左侧的“性能监视器”窗格中的“监视”选项卡中选择要监视的对象。

选择对象后,相关计数器将显示在“显示计数器”窗格中。

3.计数器的配置计数器是Performance Monitor用于监测监视对象性能的单位。

每个监视对象都有一系列计数器可以选择。

在“显示计数器”窗格中,可以通过点击“添加”按钮将计数器添加到监视器。

计数器可以按照某个特定的类别选择,也可以根据关键字搜索。

可以选择多个计数器来监视多个性能方面。

4.性能数据的收集当选择完要监视的对象和计数器后,就可以开始收集性能数据了。

在Performance Monitor窗口的下方,有一个“性能计数器日志”选项卡。

点击该选项卡后,可以看到实时的性能数据以图形和表格的形式显示出来。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Windows操作系统的性能监控工具――Perfmon
一、概述
Perfmon(Performance Monitor)是Windows自带的的性能监控工具,这个工具可监控包括CPU、内存、网络、进程、磁盘等多个对象的上百个指标。

Perfmon提供了图表化的系统性能实时监视器、性能日志和警报管理,系统的性能日志可定义为二进制文件、文本文件、SQLSERVER表记录等方式,可以很方便地使用第三方工具进行性能分析。

二、常用的性能指标
系统的整体性能由许多因素决定,例如CPU利用率、CPU队列长度、磁盘空间和I/O、内存使用情况、网络流量等等。

对于实时性要求较高的系统而言,对系统关键性指标的有效监控和管理是保证系统高可用性的重要手段,因此,务必制定出明确的系统性能策略规划,并对这些性能指标进行有效的实时监控。

当关键性能指标严重偏离或者系统发生故障时,应该采取有效手段来准确定位问题引发的原因,并通过调优系统配置或改进应用程序等手段来有效提高系统的可用性。

(一)Perfmon的监控对象
Perfmon提供了比较全面的系统性能指标,并且能够根据性能管理的要求订制日志内容、制定关键指标偏离时的警报措施。

《表一》
列出了Perfmon可以监控的性能对象,每一个性能对象项下包含多个性能指标计数器。

(二)常用的Perfmon监控对象与指标
以上列出的性能对象总共有上百个性能指标,我们关注一个系统的性能时,不可能关注这么多指标,有些对象对实际的应用系统影响并不大。

但对一个Windows操作系统来说,CPU、Memmory、Disk 和Network等关键对象是性能监控中必不可少的项。

《表二》列举了最常用的性能对象的重要指标。

(三)Perfmon对进程的监控指标
一般说来,服务器上都布署了一个或多个应用程序,这些应用程序在运行期间经常体现为若干个应用进程。

为了便于监控应用程序的运行情况,在程序设计过程中一般都会同时布署应用系统的监控程序。

Perfmon也设置了进程监控常用指标,这些指标比较直观地体现
了进程的运行状况,是进行应用系统监控或应用系统跟踪调优的依据。

《表三》列出了进程监控的主要指标。

二、Perfmon功能之一——性能监视器
在Windows中,性能监视器以一个管理控制台(MMC)单元的形式实现。

在windows的开始->运行框中输入perfmon.msc启动Windows的性能监视器,可以看到类似图一的界面。

性能监视器主要用来对指定的系统性能指标进行实时监控,但这些性能的指标记录不能被保存。

如果要保存这些性能日志,可以用后面介绍的“计数器日志”功能。

性能监视器的另外一个功能是对计数器日志生成的日志记录进行非实时的图表化展现。

在性能监视器中楞以通过“查看当前活动”或“当看日志数据”功能项来指定监控的性能指标项目。

一般说来,由于性能监视器的显示窗口大小有限,不宜指定太多的实时监控项目,否则窗口中的显示很难突出需要重点监控的项目。

我们可以根据不同的监控目标制订不同的实时监控方案,每一个方案均可以保存为一个MS Management Console(msc)文件。

图一
三、Perfmon功能之二——计数器日志
前面介绍了系统监视器的功能时提到,系统监视器主要用于重要性能指标的实时监控,它不能保存被监控的性能指标历史数据。

如果需要持续对系统的性能指标采样,就必须用到Peofmon的计数器日志的功能。

计数器日志在日志文件中记录指定的系统性能数据,这些日志数据可以用系统监视器查看或用其他工具处理,这对于分析系统某一段时间内的运行状况或者是交由第三方性能管理工具来进行性
能管理十分有用。

为了说明如何使用计数器日志,我们要新建一个日志会话。

扩展控制台中的“性能日志和警报”节点下可以看到“计数器日志”分节点,右击“计数器日志”分节点,选择“新建日志设置”,指定日志设置的名
称,点击“确定”,出现图二的对话框,在这里设定要在日志中记录的计数器(即需要记录的性能指标)。

点击“添加对象”按钮,将某个监视对象的所有计数器加入日志记录,或者点击“添加计数器”按钮加入单个计数器。

日志文件的默认保存路径是C:\perflogs目录,在设置时可以根据需要在“日志文件”项下修改。

日志文件保存的格式可以根据需要设定成文本文件、二进制文件、SQL数据库记录。

在“计划”项下,可以设置性能日志的启动和关闭时间计划,也可以设置日志关闭后的指定动作。

我们可以根据不同的监控需求制订不同的性能日志方案,每一个方案均可以保存为一个HTML文件。

图二
三、Perfmon功能之三——跟踪日志
Perfmon的跟踪日志功能可以提供对某些重要系统事件的跟踪,也可以指定对特定应用程序的跟踪。

跟踪日志以二进制文件保存(默认扩展名为.etl),可以用tracerpt对日志进行分析,并生成CSV格式的dump文件。

该功能目前没有提供直观的配置手段来订制对特定应用程序的跟踪,必须通过编辑系统的注册表来实现。

这一功能主要应用在程序调试、故障分析过程中。

图三是订制跟踪日志的对话框,在其“日志文件”、“计划”项下可以设置日志文件的存放路径、文件大小限制、日志启停计划等项目。

图三
四、Perfmon功能之四——警报
Perfmon的警报功能是指当某个计数器的性能数据达到指定的值时,执行一定的动作,例如发送Email、用Net Send命令发送消息或者运行指定的程序。

也可以指定当警报发生时将警报当作系统的事件记录在系统事件记录里,这样可以很方便地用事件查看器来调阅警报的内容。

警报的报警指标设置与性能计数器的指标相同,针对不同的应用,我们可以制订不同的警报策略。

图四示例的是当CPU的Idle Time低于70%时触发一个警报的订制对话框。

在“操作”和|“计划”项下,可以配置警报发生时的指定操作、警报设置的启停动作等。

图四
五、Perfmon布署方法
对Windows系统的性能监控需要有较高的用户权限,Perfmon 默认的可执行权限是管理员用户,从系统安全性考虑,不建议将管理员作为日常监控的用户。

Windows 2000 Server提供了性能管理用户组,在实施系统的性能监控时,可建立一个该组的普通用户。

Windows提供了Perfmon的两种布署方式:本地监控和远程监控。

本地监控产生的日志文件默认保存路径是C:\perflogs目录,在设置时可以根据需要在“日志文件”项下修改。

本地监控产生的日志文件除了可以在本机用性能监视器进行观测外,还可以外传到第三方监测分析平台上。

远挰监控可以实现对局域网内多台监控目标进行集中采样监控,其前提是监控主机与目标主机之间必须建立信任关系,并且打开相应的远程访问控制。

在访问控制比较严格的环境下,远程监控难以布署。

布署Permon时还应该考虑志文件的存放问题,如果要长时间收集性能数据,最好调整一下采样间隔时间,如果采样间隔时间设置得太小,日志文件会快速增。

Perfmon的管理也有两种方法:控制台管理和命令行方式管理。

可以通过运行Perfmon.msc调出性能管理的控制台,并根据监控策略制订、管理控制台。

Perfmon的另一种管理方式是命令行方式,Windows提供了一个专门用于管理性能监控的命令――Logman,它不仅能够在命令行上启动和停止日志会话,而且能够从命令行创建新的日志会话。

有关Logman命令的用法可参阅Logman命令指南。

还有另外一个命令能方便地采集到系统性能数据,但仅仅是获取数据,并不产生警报和日志记录的动作。

这种方式在使用第三方软件来监控Windows系统的性能时经常用到。

Windows提供了一个显示当前性能指标的命令----Typeperf。

用Typeperf可以得到前面提到的Perfmon的所有指标值。

Typeperf的标准输出是屏幕显示,我们可以通过输出重定义将结果输出到文本文件当中,并将结果文件传给第三方系统。

这种应用方式下,Typeperf的动作由第三方软件根据需要来管理,也可以通过订制计划任务来定时启动。

有关Typeperf命令的用法可参阅Typeperf命令指南。

相关文档
最新文档