濮阳杆衣贸易有限公司

主頁 > 知識庫 > 磁盤IO利用率監(jiān)控VBS腳本(windows)

磁盤IO利用率監(jiān)控VBS腳本(windows)

熱門標(biāo)簽:百度地圖標(biāo)注點(diǎn)距離代碼 除了地圖標(biāo)注還有這種生意嗎 佛山真人電銷機(jī)器人廠家 地圖標(biāo)注政府哪個(gè)部門管 齊齊哈爾高德地圖標(biāo)注店 哪里有便宜的地圖標(biāo)注公司 如何用機(jī)器人進(jìn)行電銷 東營快遞外呼系統(tǒng) 神行者美術(shù)館地圖標(biāo)注

核心代碼

'程序名稱:      btlwchk_DiskIO.vbs
'版權(quán)信息:      Copyright (c)  2011 guangzhou bluetech technology Incorporated.All rights reserved
'程序用途:      監(jiān)測windows主機(jī)IO利用率
'創(chuàng)建日期:      2011-08-10
'作者信息:      zhangkai
'運(yùn)行環(huán)境:      vbs
'處理參數(shù)
MonSubject="DiskIO"
Set Args=WScript.Arguments
If (Args.Count1) Then
 Wscript.Echo MonSubject  " -1:command line error"
 WScript.Quit(3)
End If
strcid=Args(0)
'獲取工作目錄
tmparr=Split(Wscript.ScriptFullName,"\",-1)
g_strworkdir=tmparr(0)
narr=UBound(tmparr,1)
For i=1 to narr-3
    g_strworkdir=g_strworkdir  "\"  tmparr(i)
Next
'裝載公共庫
set g_fileSys = createObject ("Scripting.FileSystemObject")
Sub includeFile (fSpec)
    dim file, fileData
    set file = g_fileSys.openTextFile (fSpec)
    fileData = file.readAll ()
    file.close
    executeGlobal fileData
    set file = nothing 
end sub
includeFile g_strworkdir  "\nagios\libexec\libcomm.vbs"

'輸出版本和幫助信息
getverhelp strcid,"v1.00"," cid>"

strComputer = "."  
Set objWMIService = GetObject("winmgmts:"  "{impersonationLevel=impersonate}!\\"  strComputer  "\root\cimv2") 

'第1次采樣IO
Set colItems = objWMIService.ExecQuery("Select * from Win32_PerfRawData_PerfDisk_LogicalDisk where name='_Total' ",,48)
For Each objItem in colItems
     DiskTime1 = objItem.PercentDiskTime
     BaseTime1 = objItem.PercentDiskTime_Base
  DiskBytes1 = objItem.DiskBytesPerSec
  DiskReadBytes1 = objItem.DiskReadBytesPerSec
  DiskWriteBytes1 = objItem.DiskWriteBytesPerSec
  AvgDiskTransfer1 = objItem.AvgDiskSecPerTransfer
  AvgDiskTransferBase1 = objItem.AvgDiskSecPerTransfer_Base
  AvgDiskRead1 = objItem.AvgDiskSecPerRead
  AvgDiskReadBase1 = objItem.AvgDiskSecPerRead_Base
  AvgDiskWrite1 = objItem.AvgDiskSecPerWrite
  AvgDiskWriteBase1 = objItem.AvgDiskSecPerWrite_Base
  TimeValue1 = objItem.Timestamp_PerfTime
  TimeBase = objItem.Frequency_PerfTime

Next

'第2次采樣IO
WScript.Sleep 1000
Set colItems = objWMIService.ExecQuery("Select * from Win32_PerfRawData_PerfDisk_LogicalDisk where name='_Total' ",,48)
For Each objItem in colItems
     DiskTime2 = objItem.PercentDiskTime
  BaseTime2 = objItem.PercentDiskTime_Base
  DiskBytes2 = objItem.DiskBytesPerSec
  DiskReadBytes2 = objItem.DiskReadBytesPerSec
  DiskWriteBytes2 = objItem.DiskWriteBytesPerSec
  AvgDiskTransfer2 = objItem.AvgDiskSecPerTransfer
  AvgDiskTransferBase2 = objItem.AvgDiskSecPerTransfer_Base
  AvgDiskRead2 = objItem.AvgDiskSecPerRead
  AvgDiskReadBase2 = objItem.AvgDiskSecPerRead_Base
  AvgDiskWrite2 = objItem.AvgDiskSecPerWrite
  AvgDiskWriteBase2 = objItem.AvgDiskSecPerWrite_Base
  TimeValue2 = objItem.Timestamp_PerfTime
        CurrentDiskQueueLength = objItem.CurrentDiskQueueLength
Next

'獲取IO利用率
If BaseTime2 - BaseTime1 = 0 Then
 strio ="Name=_Toltal"   ",PercentDiskTime=0%"
Else
 PercentDiskTime =(DiskTime2 - DiskTime1)/(BaseTime2 - BaseTime1)*100 
 strio = "Name=_Total"   ",PercentDiskTime="   PercentDiskTime
End If

'獲取Disk Bytes/sec
If TimeValue2 - TimeValue1 = 0 Then
    strdiskbyte = ",DiskBytesPerSec=0"
Else
    DiskBytesPerSec = (DiskBytes2 - DiskBytes1) / ( (TimeValue2 - TimeValue1) / TimeBase)
    strdiskbyte = ",DiskBytesPerSec="   DiskBytesPerSec
End If

'獲取Disk Read Bytes/sec
If TimeValue2 - TimeValue1 = 0 Then
    strdiskreadbyte = ",DiskReadBytesPerSec=0"
Else
    DiskReadBytesPerSec = (DiskReadBytes2 - DiskReadBytes1) / ( (TimeValue2 - TimeValue1) / TimeBase)
    strdiskreadbyte = ",DiskReadBytesPerSec="   DiskReadBytesPerSec
End If

'獲取Disk Write Bytes/sec
If TimeValue2 - TimeValue1 = 0 Then
    strdiskwritebyte = ",DiskWriteBytesPerSec=0"
Else
    DiskWriteBytesPerSec = (DiskWriteBytes2 - DiskWriteBytes1) / ( (TimeValue2 - TimeValue1) / TimeBase)
    strdiskwritebyte = ",DiskWriteBytesPerSec="   DiskWriteBytesPerSec
End If

'獲取Avg. Disk sec/Transfer
If AvgDiskTransferBase2 - AvgDiskTransferBase1 = 0 Then
    stravgdisktran = ",AvgDiskSecPerTransfer=0"
Else
    AvgDiskSecPerTransfer = ((AvgDiskTransfer2 - AvgDiskTransfer1) / TimeBase) / (AvgDiskTransferBase2 - AvgDiskTransferBase1)
    stravgdisktran = ",AvgDiskSecPerTransfer="   AvgDiskSecPerTransfer
End If

'獲取Avg. Disk sec/Read
If AvgDiskReadBase2 - AvgDiskReadBase1 = 0 Then
    stravgdiskread = ",AvgDiskSecPerRead=0"
Else
    AvgDiskSecPerRead = ((AvgDiskRead2 - AvgDiskRead1) / TimeBase) / (AvgDiskReadBase2 - AvgDiskReadBase1)
    stravgdiskread = ",AvgDiskSecPerRead="   AvgDiskSecPerRead
End If

'獲取Avg. Disk sec/Write
If AvgDiskWriteBase2 - AvgDiskWriteBase1 = 0 Then
    stravgdiskwrite = ",AvgDiskSecPerWrite=0"
Else
    AvgDiskSecPerWrite = ((AvgDiskWrite2 - AvgDiskWrite1) / TimeBase) / (AvgDiskWriteBase2 - AvgDiskWriteBase1)
    stravgdiskwrite = ",AvgDiskSecPerWrite="   AvgDiskSecPerWrite
End If

'獲取Current Disk Queue Length
strdisklength = ",CurrentDiskQueueLength="   CurrentDiskQueueLength

Wscript.Echo MonSubject  " 0:OK|"  strio  strdiskbyte  strdiskreadbyte  strdiskwritebyte  stravgdisktran  stravgdiskread  stravgdiskwrite  strdisklength

用到了WMI,需要的朋友可以參考一下

您可能感興趣的文章:
  • vbs定期監(jiān)控 值個(gè)班,定期瞄一下
  • VBScript 監(jiān)控并結(jié)束指定進(jìn)程的代碼
  • VBScript 監(jiān)控磁盤更改事件實(shí)現(xiàn)代碼
  • VBS監(jiān)控CPU的使用率(如占用率一直維持在80%超過30秒則運(yùn)行某程序)
  • 網(wǎng)絡(luò)接口利用率監(jiān)控VBS腳本代碼(Windows)
  • 進(jìn)程監(jiān)控實(shí)現(xiàn)代碼[vbs+bat]
  • 用VBS調(diào)用程序并對程序的運(yùn)行情況進(jìn)行監(jiān)控的兩個(gè)代碼
  • 如何使用vb 監(jiān)控電腦活動記錄

標(biāo)簽:西安 文山 湖州 邢臺 銅川 四平 鶴壁 巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《磁盤IO利用率監(jiān)控VBS腳本(windows)》,本文關(guān)鍵詞  磁盤,利用率,監(jiān)控,VBS,腳本,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。

  • 相關(guān)文章
  • 下面列出與本文章《磁盤IO利用率監(jiān)控VBS腳本(windows)》相關(guān)的同類信息!
  • 本頁收集關(guān)于磁盤IO利用率監(jiān)控VBS腳本(windows)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    安平县| 康马县| 遂昌县| 青田县| 禄丰县| 东乌珠穆沁旗| 温泉县| 敦煌市| 灵川县| 旬邑县| 斗六市| 汝城县| 保德县| 敦煌市| 肥城市| 德庆县| 黔江区| 阿瓦提县| 双鸭山市| 望谟县| 油尖旺区| 长治市| 皋兰县| 时尚| 靖宇县| 沾化县| 金坛市| 额尔古纳市| 阜阳市| 涟源市| 清流县| 肇州县| 宜良县| 余庆县| 黎城县| 武宣县| 鱼台县| 商南县| 灵石县| 铜鼓县| 云阳县|