Насколько я могу судить, я правильно настроил nagiosgrapher, но журналы продолжают сообщать об отсутствии данных. Например, для нагрузки в /var/log/nagiosgrapher/ngraph.log
:
2012-08-02 22:30:16 PIPE: myhost CPU Load OK - load average: 0.00, 0.00, 0.00 load1=0.000;15.000;30.000;0; load5=0.000;10.000;25.000;0; load15=0.000;5.000;20.000;0;
2012-08-02 22:30:16 VALUES: [myhost][CPU Load]:No matching output values found...
Я настраивал Nagios и Nagiosgrapher в системах Debian раньше и никогда не сталкивался с подобной проблемой, и пока не могу ее решить.
В системах используются только плагины по умолчанию. Подходящий /etc/nagios3/nagios.cfg
значения:
process_performance_data=1
и
service_perfdata_command=ngraph-process-service-perfdata-pipe
Я попытался перезапустить и Nagios, и Nagiosgrapher в разном порядке, что я нашел при поиске в Google, но, похоже, это не дало эффекта.
Есть ли идеи, что я делаю не так или где искать? Все остальные функции Nagios, похоже, работают нормально как на локальных, так и на удаленных хостах.
Тот факт, что в журнале отображается строка PIPE, означает, что вы правильно настроили Nagios для отправки данных в Nagiosgrapher.
Строка «Выходные значения вычислений не найдены» означает, что регулярное выражение в определении ngraph «Загрузка ЦП» не соответствует ничему в полученных данных («ОК - средняя загрузка: 0,00, 0,00, 0,00 load1 = 0,000; 15,000; 30,000; 0; load5 = 0,000; 10,000; 25,000; 0; load15 = 0,000; 5,000; 20,000; 0; ").
У вас должен быть файл конфигурации (возможно, «check_load.ncfg»), который определяет ngraph для служб, содержащих имя «load». Проверьте папку ngraph.d или куда бы вы ни поместили свои фрагменты конфигурации для Nagiosgrapher, а затем убедитесь, что записи "graph_log_regex" или "graph_perf_regex" имеют смысл.
Я собираюсь ответить на свой вопрос здесь подробно, так как это на какое-то время сводило меня с ума, и, надеюсь, это поможет кому-то еще в будущем, ищущему то же самое. Тем не менее, благодаря ответу Кита, который направил меня на правильный путь.
Чтобы отладить это, я отредактировал файл /etc/nagiosgrapher/ngraph.ncfg и установил для журнала максимально подробные настройки:
log_file /var/log/nagiosgrapher/ngraph.log
log_level 255
Затем я перезапустил нагиографа через /etc/init.d/nagiosgrapher restart
и начал смотреть журнал в указанном выше месте.
Здесь произошли три вещи, и все они усугубили мою проблему:
Проблема 1
По какой-то причине дистрибутив Debian nagiosgrapher больше не устанавливает определения графиков check_disk.ncfg и check_load.ncfg. Я всегда предполагаю, что я сделал что-то не так, когда что-то не работает, но в этом случае их просто нет - НО они есть в дистрибутиве и в системе. Вам просто нужно скопировать их:
cp /usr/share/nagiosgrapher/debian/cfg/ngraph.d/standard/check_disk.ncfg /etc/nagiosgrapher/ngraph.d/standard
cp /usr/share/nagiosgrapher/debian/cfg/ngraph.d/standard/check_load.ncfg /etc/nagiosgrapher/ngraph.d/standard
Возможно, это просто проблема со сценарием установки пакета, но я не проверял это, и ваш опыт может отличаться. Хотя это сработало для меня.
Проблема 2
Я переименовал service-description
от «Текущая нагрузка» до «Загрузка процессора» в /etc/nagios3/conf.d/services_nagios2.cfg
файл, в котором я его определил, что в то время казалось невинным. Однако пакет nagiosgrapher поставляется с плагином под названием check_hardware
в котором есть блок, определенный как «CPU», и, очевидно, nagiosgrapher смотрит на это описание службы, анализирует его на пробелы, а затем проверяет соответствие блоков, в данном случае проверяя и «CPU», и «Load». Кроме того, каждый раз, когда один из этих блоков не соответствует, происходит сбой всей записи, что приводит к сообщению, которое я получил в моем вопросе выше.
Проблема 3
Как и в случае с проблемой 2, я добавил мониторинг разделов MySQL и установил service-description
в «Дисковое пространство: MySQL». Опять же, sine nagiosgrapher анализировал пробелы, он видел и «Диск», и «MySQL» и запускал плагин графа MySQL, который, конечно, не работал с выводом на диск. Это исправлено при изменении описания услуги.
После внесения указанных выше изменений сделайте следующее:
/etc/init.d/nagiosgrapher restart
Это начнет правильно генерировать данные графика. Как только это проработает какое-то время и каждый график был сгенерирован хотя бы один раз (вы можете проверить это в журналах или посмотрев непосредственно в /var/lib/nagiosgrapher/rrd/
каталог), затем перезапустите Nagios:
/etc/init.d/nagios3 restart
На этом этапе все должно работать нормально.
Как бы то ни было, это те пакеты, которые я установил, которые привели меня к этой проблеме и решению:
ii nagios-images 0.7 Collection of images and icons for the nagios system
ii nagios-nrpe-plugin 2.12-4 Nagios Remote Plugin Executor Plugin
ii nagios-nrpe-server 2.12-4 Nagios Remote Plugin Executor Server
ii nagios-plugins-basic 1.4.15-3squeeze1 Plugins for the nagios network monitoring and management system
ii nagios-plugins-standard 1.4.15-3squeeze1 Plugins for the nagios network monitoring and management system
ii nagios3 3.2.1-2 A host/service/network monitoring and management system
ii nagios3-cgi 3.2.1-2 cgi files for nagios3
ii nagios3-common 3.2.1-2 support files for nagios3
ii nagios3-core 3.2.1-2 A host/service/network monitoring and management system core files
ii nagiosgrapher 1.7.1-2+deb60u1 Charting add-on for Nagios