目前我使用以下弄明白:找出使用SNMP內存使用在Windows
總內存:
.1.3.6.1.2.1.25.2.2.0
對於使用過的記憶我走以下OID(給我的每一個使用過程):
.1.3.6.1.2.1.25.5.1.1.2
並將它們總和。
但是,這是非常不準確的,因爲與使用WMI或性能監視器相比,它的使用情況要少得多。
我錯過了什麼?我不想使用第三方SNMP代理(如SNMP信息,它可以正常工作)。我想使用Windows中的標準來解決這個問題。
目前我使用以下弄明白:找出使用SNMP內存使用在Windows
總內存:
.1.3.6.1.2.1.25.2.2.0
對於使用過的記憶我走以下OID(給我的每一個使用過程):
.1.3.6.1.2.1.25.5.1.1.2
並將它們總和。
但是,這是非常不準確的,因爲與使用WMI或性能監視器相比,它的使用情況要少得多。
我錯過了什麼?我不想使用第三方SNMP代理(如SNMP信息,它可以正常工作)。我想使用Windows中的標準來解決這個問題。
嘗試1.3.6.1.2.1.25.2.3.1。我接收到的Net-SNMP的snmpwalk的程序如下結果從我們的Windows Server 2003的服務器之一:
$ snmpwalk -v1 -cpublic 10.200.80.221 1.3.6.1.2.1.25.2.3.1.3
HOST-RESOURCES-MIB::hrStorageDescr.1 = STRING: C:\ Label: Serial Number 38728140
HOST-RESOURCES-MIB::hrStorageDescr.2 = STRING: D:\
HOST-RESOURCES-MIB::hrStorageDescr.3 = STRING: O:\ Label:Data Serial Number b618c4bc
HOST-RESOURCES-MIB::hrStorageDescr.4 = STRING: Q:\ Label:Quorum Serial Number 4cbbcc74
HOST-RESOURCES-MIB::hrStorageDescr.5 = STRING: Virtual Memory
HOST-RESOURCES-MIB::hrStorageDescr.6 = STRING: Physical Memory
$ snmpwalk -v1 -cpublic 10.200.80.221 1.3.6.1.2.1.25.2.3.1.4
HOST-RESOURCES-MIB::hrStorageAllocationUnits.1 = INTEGER: 4096 Bytes
HOST-RESOURCES-MIB::hrStorageAllocationUnits.2 = INTEGER: 0 Bytes
HOST-RESOURCES-MIB::hrStorageAllocationUnits.3 = INTEGER: 4096 Bytes
HOST-RESOURCES-MIB::hrStorageAllocationUnits.4 = INTEGER: 4096 Bytes
HOST-RESOURCES-MIB::hrStorageAllocationUnits.5 = INTEGER: 65536 Bytes
HOST-RESOURCES-MIB::hrStorageAllocationUnits.6 = INTEGER: 65536 Bytes
$ snmpwalk -v1 -cpublic 10.200.80.221 1.3.6.1.2.1.25.2.3.1.5
HOST-RESOURCES-MIB::hrStorageSize.1 = INTEGER: 17911195
HOST-RESOURCES-MIB::hrStorageSize.2 = INTEGER: 0
HOST-RESOURCES-MIB::hrStorageSize.3 = INTEGER: 66794245
HOST-RESOURCES-MIB::hrStorageSize.4 = INTEGER: 35836990
HOST-RESOURCES-MIB::hrStorageSize.5 = INTEGER: 128101
HOST-RESOURCES-MIB::hrStorageSize.6 = INTEGER: 98266
$ snmpwalk -v1 -cpublic 10.200.80.221 1.3.6.1.2.1.25.2.3.1.6
HOST-RESOURCES-MIB::hrStorageUsed.1 = INTEGER: 1365706
HOST-RESOURCES-MIB::hrStorageUsed.2 = INTEGER: 0
HOST-RESOURCES-MIB::hrStorageUsed.3 = INTEGER: 38290
HOST-RESOURCES-MIB::hrStorageUsed.4 = INTEGER: 17637
HOST-RESOURCES-MIB::hrStorageUsed.5 = INTEGER: 4819
HOST-RESOURCES-MIB::hrStorageUsed.6 = INTEGER: 6952
這裏重要的是第5和表6日行。如果您的硬盤較少,則可以在其他行中找到虛擬內存和物理內存的值。
您可以將此報告爲Microsoft的錯誤並等待修復,或者直接切換到其他代理。
微軟更喜歡WMI到SNMP,因此您應該知道該代理只是Windows上的第二類公民。
所以基本上你說沒有辦法獲得這些信息而不訴諸第三方? WMI並不總是一種選擇,因爲它要求您在該服務器上擁有有效的用戶帳戶。 – timeshift 2011-02-27 13:41:39
是的,據我所知。 – 2011-02-28 06:11:23
嗯,hrStoragesize.6和hrStorageUsed.6確實沒有給出正確的數字?你能解釋一下如何總結/減去如何獲得總內存? (例如,性能選項卡中任務管理器中的內存圖中的內容) – timeshift 2011-02-28 12:50:55
@timeshift使用的總內存:hrStorageUsed.6 * hrStorageAllocationUnits.6 = 6952 * 65536 = 455606272 bytes = 434,5 MB總內存:hrStorageSize.6 * hrStorageAllocationUnits。 6 = 98266 * 65536 = 6439960576字節= 5.99 GB – Bill 2011-02-28 14:08:02
非常好,像魅力一樣,非常感謝你。 – timeshift 2011-02-28 17:20:05