Вы можете отслеживать множество различных точек данных о системе Linux с помощью SNMP, если вы выберете правильные номера MIB (например, как .1.3.6.1.4.1.2021.9.1.2.1 на http://www.debianhelp.co.uk/linuxoids.htm).
Где на машине Linux хранится код каждого теста MIB?
Можно ли добавить свои собственные тесты? (например, при запросе настраиваемого MIB запустить сценарий Python и вернуть ответ)?
Расположение наверное зависит от вашего распределения; в Debian они живут под /usr/share/snmp/mibs
. В дополнение к ответу Антуана о простых плагинах exec для net-snmpd, вы также можете написать более сложные плагины для net-snmpd, которые интегрируются более плавно; Я также написал свой Агент Ruby SNMP который разработан, чтобы упростить обработку пользовательских данных SNMP (в этом вся причина его существования).
Я не знаю, где хранится MIB на машине Linux, но вы можете добавить результат скриптов в MIB по умолчанию, используя следующий синтаксис:
exec railsversion "/bin/bash /etc/snmp/railsversion.sh"
Он появится в вашей MIB, который вы можете протестировать с помощью следующей команды.
snmpwalk -v 1 -c public localhost .1.3.6.1.4.1.2021.8
Это довольно хорошо задокументировано в файле snmpd.conf, который находится в Debian и, возможно, в других дистрибутивах.
Я считаю эту опцию очень полезной, поскольку она устраняет необходимость в конкретном агенте мониторинга.