Entry tags:
О кактусе
Колюсь, плачу, но продолжаю грызть кактус.
Это какая-то песня на тему СПБ.
Создаём скрип (самое простое), генерим Data Input Method (тоже вроде бы ничего сложного), Data Templates (вопросы есть, но не принципиальные), Graph Templates (вопросы накапливаются и незаметно оказываются в критическом количестве, которые приводит к недопониманию некоторых шаманских практик)... Красиво сразу как хотелось не получилось. Пришлось упростить пример до обязательного минимума. Но и это не избавило от мучительных (само?)истязаний. Девайс, хост, дерево графиков, графики, всё ок, но чего-то не хватает. В логе ругательство на неправильный ответ. А какой? А какой должен быть? А где об этом написано. Додумался заглянуть в /var/log/cacti и найти поллер-ерор, на которой через интерфейс ссылки нет. Оказалось что просто нет прав. Перенёс скрипт поближе к кактусу, скопировал права, жду времени. Ну вот почему нет штатного способа отполлить источник данных чтобы проверить как оно запрашивается, выдаётся, парсится, сохраняется и рисуется, в конце-концов? Ну да, php cmd.php - это классно, но циклограмма не завершена, потому что в логе не всё написано, а к моменту запуска настоящего поллера он ругается, как я понял, на наличие кучиданных мусора в кеше. Вдруг оказывается что данные какие-то пошли и на графике появилась чёрточка. Но у меня целых шесть объектов и данные пошли только по двум их них, хотя создавались шаблоны совершенно одинаково. Обнаруживаю что в Data Source пропали идетификаторы объектов. Прописываю снова. Теперь пропадает что-то где-то ещё, снова пробегаю через всю эту хренотень и обессиленный от СПБ начинаю удалять созданное удалять и начинать сначала. Потом оказывается что удалил не всё, а оно пересекается с тем что осталось, какая-то хрень с rrd творится. Автосозданные шаблоны данных оказываются именованными одинаково и из графиков неотличимы. На третий раз удаляю всё до последнего, проверяю что ничего не осталось и начинаю снова.
Но в кактусе базовый период 5 минут а у меня данные 15 минут. Пытался сразу прописать на 15 минут, но судя по поллеру он не одновременно обновляет данные по разным объектам и отслеживать неудобно. Поэтому помучившись решил прописать сначала на 5 минут. Пошли графики. Несколько периодов вытянули их и обнадёжили что всё заработало. Переписываю период на 15 минут и довольный ухожу спать. Утром гляжу на кактус, уверенный, что там будут красивые графики, но там ничего нет. Ничего кроме той первой закорючки, которую я оставлял.
Вот что это за гадство? Не в периодах ли проблемы? Меняю в Data Source Template период опроса и предохранительный период на стандартные, возвращаюсь в Data Source и опять прописываю потерянные идентификаторы объектов. Теперь я уже учёный и знаю, что если менять шаблон, то объекты, которые на его основе построены почему-то теряют свои идентификаторы (переменные, прописанные как Use Per-Data Source Value, они же в Supplemental Data Template Data->Custom Data).
Как удалось избежать одинакового именования шаблонов источников приблизительно понял, но до конца ещё не врубаюсь. Хорошо помню что объектно-зависимое-имя пришлось вводить дважды и третий раз дублировать в виде переменной-идентификатора.
О неприятном: кактус не любит русские буквы. Впоследствии разглядывая параметры всего подряд обнаружил странные шведские кодировки. Можно попробовать юникод прописать, но как бы всё не сломалось (1) и кто знает умеет ли RRD рисовать графики с кириллицей. Да что там кириллица, я даже символ градуса безуспешно на графике пытался отобразить. Конечно, не принципиально, но осадочка добавляет.
Это какая-то песня на тему СПБ.
Создаём скрип (самое простое), генерим Data Input Method (тоже вроде бы ничего сложного), Data Templates (вопросы есть, но не принципиальные), Graph Templates (вопросы накапливаются и незаметно оказываются в критическом количестве, которые приводит к недопониманию некоторых шаманских практик)... Красиво сразу как хотелось не получилось. Пришлось упростить пример до обязательного минимума. Но и это не избавило от мучительных (само?)истязаний. Девайс, хост, дерево графиков, графики, всё ок, но чего-то не хватает. В логе ругательство на неправильный ответ. А какой? А какой должен быть? А где об этом написано. Додумался заглянуть в /var/log/cacti и найти поллер-ерор, на которой через интерфейс ссылки нет. Оказалось что просто нет прав. Перенёс скрипт поближе к кактусу, скопировал права, жду времени. Ну вот почему нет штатного способа отполлить источник данных чтобы проверить как оно запрашивается, выдаётся, парсится, сохраняется и рисуется, в конце-концов? Ну да, php cmd.php - это классно, но циклограмма не завершена, потому что в логе не всё написано, а к моменту запуска настоящего поллера он ругается, как я понял, на наличие кучи
Но в кактусе базовый период 5 минут а у меня данные 15 минут. Пытался сразу прописать на 15 минут, но судя по поллеру он не одновременно обновляет данные по разным объектам и отслеживать неудобно. Поэтому помучившись решил прописать сначала на 5 минут. Пошли графики. Несколько периодов вытянули их и обнадёжили что всё заработало. Переписываю период на 15 минут и довольный ухожу спать. Утром гляжу на кактус, уверенный, что там будут красивые графики, но там ничего нет. Ничего кроме той первой закорючки, которую я оставлял.
Вот что это за гадство? Не в периодах ли проблемы? Меняю в Data Source Template период опроса и предохранительный период на стандартные, возвращаюсь в Data Source и опять прописываю потерянные идентификаторы объектов. Теперь я уже учёный и знаю, что если менять шаблон, то объекты, которые на его основе построены почему-то теряют свои идентификаторы (переменные, прописанные как Use Per-Data Source Value, они же в Supplemental Data Template Data->Custom Data).
Как удалось избежать одинакового именования шаблонов источников приблизительно понял, но до конца ещё не врубаюсь. Хорошо помню что объектно-зависимое-имя пришлось вводить дважды и третий раз дублировать в виде переменной-идентификатора.
О неприятном: кактус не любит русские буквы. Впоследствии разглядывая параметры всего подряд обнаружил странные шведские кодировки. Можно попробовать юникод прописать, но как бы всё не сломалось (1) и кто знает умеет ли RRD рисовать графики с кириллицей. Да что там кириллица, я даже символ градуса безуспешно на графике пытался отобразить. Конечно, не принципиально, но осадочка добавляет.