Начну с того, что Cacti - это неплохой web-интерфейс к RRDTool, позволяющий мониторить на графиках все что душе угодно, начиная от системных ресурсов локальной машины, заканчивая ведением статистики погоды :). Приложение написано на PHP, соответственно, особенных проблем с установкой не будет. Проблемы могут возникнуть позже, если вы захотите научить "кактус" строить свои графики (кстати, в самой Cacti уже достаточно шаблонов на все случаи жизни, а если случай особенный, то их можно поискать в сети). Так вот, наиболее распространенная проблема, с которой можно столкнуться при создании графика - это то, что вместо заветных чисел и красивых линий на нем будет отображено NaN.
Первым делом проверьте, чтобы вся цепочка от получения данных до отображения была корректно создана и связана. Если вы уверены, что все сделали правильно, а результата все равно нет, то:
- Самое простое и очевидное - проверьте, чтобы в crontab был вызов poller.php каждые 5 минут
- Проверьте, что выдает скрипт, результат которого должен быть виден на графике путем запуска из командной строки
- В настройках Cacti включите режим DEBUG для логов Poller'а. После очередного срабатывания скрипта, проверьте логи - там можно увидеть, какое значение из вашего скрипта записывается в базу данных
- Проверьте права и владельца всех директорий Cacti, особенно rra. Все файлы внутри rra должны быть writeable
- Проверьте значения minimum и maximum, которые вы выставили для текущего источника данных. Значения, выдаваемые скриптом не должны выходить за эти границы. Чтобы проверить, выполните
rrdtool fetch <rrd file> AVERAGE
Если последние строки ни содержат ничего кроме NaN, проверьте установленные границы (поля ds[...].min и ds[...].max):
rrdtool info <rrd file>
Если вы видите, что значения не умещаются в установленных границах, то изменением параметров MINIMUM и MAXIMUM в веб-интерфейсе Cacti тут не обойтись. Необходимо обновить еще и сам rrd-файл командой:
rrdtool tune <rrd file> --maximum <ds-name>:<new ds maximum>
P.S. Встретил еще одну ситуацию, когда cacti не показывает графики, а в логах апача появляются странные записи вида:
Ошибка проявляется просто из-за неправильно выбранной версии RRDTool в настройках Cacti (Settings в Web-интерфейсе).

Не пишутся данные в базу. Причем другой точно такой же срипт, но считает другие цифиры работает(отличаются только названием единиц)
Вот часть результат вывода команды rrdtool fetch путь/имя LAST
ip
1156826040: nan
1156826100: nan
1156826160: nan
1156826220: nan
1156826280: nan
Вот часть результат вывода команды rrdtool info путь/имя
rrd version = "0003"
ds[ip].index = 0
ds[ip].type = "GAUGE"
ds[ip].minimal_geartbeat = 600
ds[ip].min = 0.0000000000e+00
ds[ip].max = NaN
ds[ip].last_ds = "9810"
ds[ip].value = 3.4*********e+02
ds[ip].unknown_sec = 0
Подскажите что проверить на ошибку в этом rrdtool ?
Супер, очень помогло!!!
Отправить комментарий