Вход на хостинг
IT-новости
20.04.2016 iPhone 2017 года поместят в водонепроницаемый корпус из стекла
Линейка iPhone в новом году серьезно поменяется. В этом уверен аналитический исследователь Мин Чи Ку......
30.07.2015 Ищем уникальный контент для сайта
Ищем уникальный контент для сайта Без уникального контента Ваш сайт обречен на то, что его страницы......
load 12 20 30
Этой строкой мы говорим демону, что желаем видеть статистику нагрузки на процессор за последнюю минуту, за пять и пятнадцать минут. К сожалению, интервалы жестко закодированы, и изменить их невозможно. И, как обычно, указываем необязательные пороговые ограничения в 12%, 20% и 30%, при превышении которых snmpd будет устанавливать флаг ошибки. Смотрим ветку .iso.org.dod. internet.private.enterprises.ucdavis.laTable.laEntry и понимаем, что нам наиболее интересны подветви laLoad, laLoadInt, laLoadFloat.
В этих подветках содержатся одни и те же данные, но с разным округлением. Соответственно сервис для проверки загрузки процессора за последнюю минуту будет выглядеть вот так:
define service{
use generic-service
host_name Linux
service_description CPU Load 1 min
is_volatile 0
check_period 24x7
check_command check_snmp_oid!.1.3.6.1.4.1.2021.10.1.5.1!InK12345!60!90!%
}
Следующей интересной для нас особенностью является возможность запускать сторонние скрипты при получении того или иного SNMP-запроса. И опять добавляем в snmpd.conf новые строки:
exec users /bin/sh /usr/bin/count_users.sh
exec mailqueue /bin/sh /usr/bin/count_mail.sh
Затем создаем файлы count_users.sh count_mail.sh:, с их помощью мы будем считать количество пользователей, работающих на данный момент в системе, и размер почтовой очереди postfix.
Содержимое файла count_users.sh:
who | wc -l
exit 0
Содержимое файла count_mail.sh:
mailq | tail -n 1 | cut -f5 -d " "
exit 0
Теперь смотрим, что у нас находится внутри ветки .iso.org.dod.internet.private.enterprises.ucdavis.extTable.extEntry.
extNames.1 = STRING: users
extNames.2 = STRING: mailqueue
extCommand.1 = STRING: /bin/sh /usr/bin /count_users.sh
extCommand.2 = STRING: /bin/sh / usr/bin/count_mail.sh
extResult.1 = INTEGER: 0
extResult.2 = INTEGER: 0
extOutput.1 = STRING: 1
extOutput.2 = STRING: 2
extErrFix.1 = INTEGER: 0