Простая арифметика значений, полученных с использованием OID - PullRequest
0 голосов
/ 26 марта 2019

Я новичок в SNMP и Nagios и хотел бы сделать некоторую базовую арифметику со значениями, полученными с использованием OID.

Мне нужно следить за используемой памятью (RAM) на серверах в сети университета. Кажется, они используют UCD-SNMP-MIB. До сих пор я сталкивался с memTotalReal.0 и memAvailReal.0, и не нашел прямого способа извлечь использованную память. Есть ли какая-то конкретная причина для этого?

Ожидаемая команда для основного вычитания:

$USER1$/check_snmp -H $HOSTADDRESS$ -o memTotalReal.0-memAvailReal.0

Какой самый простой способ восстановить использованную память? Нужно ли прибегать к вычитанию, возможно, написав другой скрипт?

1 Ответ

1 голос
/ 26 марта 2019

Нет простого способа сделать это. Поэтому вам нужно рассчитать это так:

(Used – buffers – cached) / Total * 100 = % memory used

Used = total - available

С точки зрения OID вам необходимо использовать следующее:

  • memTotalOID = '.1.3.6.1.4.1.2021.4.5.0'
  • memRealAvailOID = '.1.3.6.1.4.1.2021.4.6.0'
  • memRealBuffersOID = '.1.3.6.1.4.1.2021.4.14.0'
  • memRealCachedOID = '.1.3.6.1.4.1.2021.4.15.0'
...