Выясните использование памяти с помощью 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.
2 ответа
Попробуйте http://www.oid-info.com/get/1.3.6.1.2.1.25.2.3.1. Я получил следующие результаты с помощью утилиты snmpwalk Net-SNMP с одного из наших серверов 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 и дождаться исправления, либо просто переключиться на другого агента.
Microsoft предпочитает WMI SNMP, поэтому вы должны знать, что агент является Windows второго уровня.