Мои инструменты мониторинга используют SNMP для получения нескольких внутренних значений виртуальных машин Java 1.6 и 1.7. Проблема в том, что некоторые значения на машинах JVM 1.8 возвращают нулевое значение.
Это NoHeapMemPoolMaxSize
(OID: .3.163.1.1.2.23.0) и PoolMaxSize
(OID: .3.163.1.1.2.110.1.13.2). Вывод snmpwalk:
SNMPv2-SMI::enterprises.42.2.900.3.163.1.1.2.23.0 = Counter64: 0
SNMPv2-SMI::enterprises.42.2.900.3.163.1.1.2.110.1.13.2 = Counter64: 0
Изменились OID этих обоих значений? Я сравнил JVM-MANAGEMENT-MIB.mib с Java 6 и Java 8 и я не нашел разницы.
Что здесь не так?
42.2.900
должно быть42.2.145
, а именаjvmMemoryNonHeapMaxSize
иjvmMemPoolMaxSize.2
. Последний имеет индекс, который не гарантирует неизменности после перезапуска агента, поэтому нужное значение может находиться в другой строке. - person Sean Van Gorder   schedule 02.03.2018