Kucher2 Опубликовано: December 25, 2009 at 16:43 Опубликовано: December 25, 2009 at 16:43 Здраствуйте снова. Коротко: юзаю rrdtool. Данные снимаются кажлые 5 минут, рисуется график суточной загрузки. В общем, всё устраивает, кроме момента, когда обновляются правила ipfw (например после ребута) и в count по захвату мы имеем значение байт меньше, чем в базе rrdtool. В итоге приблуда у меня не рисует график и приходится пересоздавать базу rrdtool. Как следствие - теряется картинка за сутки, всё начинается заново. Я конечно сунул создание базы в автозагрузку, всё делается автоматом, но... Может возможно заставить утилиту рисовать график на основе уже имеющихся данных, пусть даже "с провалом"?
zulu_Radist Опубліковано: December 26, 2009 at 06:20 Опубліковано: December 26, 2009 at 06:20 Не пробовал рисовать с параметром --lower-limit=0 ?
Kucher2 Опубліковано: December 26, 2009 at 14:05 Автор Опубліковано: December 26, 2009 at 14:05 Та же байда. Загрузка порядка 10-50Мбит, 50-150 ГГБ в сутки, а рисует после сброса правил - вот такую хрень. Нашёл такое: Daemony, получилось решить проблему с ipfw и сбросом счетчиков в ноль (когда при сбросе были гиганские скачки трафика и все сбивалось) - нужно в rrdtool data sources использовать тип счетчика не COUNTER, а DERIV с минималным и максимальным значением (обязательно)!! Тогда все ок. Вообщем может кому пригодится эта инфа)) Сделал так: #!/bin/sh rrdtool create /var/rrdtool/db/nuk.rrd \ --start 0 \ DS:inet:DERIVE:600:0:U \ DS:onet:DERIVE:600:0:U \ DS:inputp:DERIVE:600:0:U \ DS:outputp:DERIVE:600:0:U \ DS:allp:DERIVE:600:0:U \ DS:inputall:DERIVE:600:0:U \ DS:outputall:DERIVE:600:0:U \ RRA:AVERAGE:0.5:1:600 \ RRA:AVERAGE:0.5:6:700 \ RRA:AVERAGE:0.5:24:775 \ RRA:AVERAGE:0.5:288:797 \ RRA:MAX:0.5:1:600 \ RRA:MAX:0.5:6:700 \ RRA:MAX:0.5:24:775 \ RRA:MAX:0.5:288:797 echo "base created" Подсмотрел тут: http://shumer-admin.blogspot.com/2009/04/rrdtool.html Спасибо.
Kucher2 Опубліковано: January 10, 2010 at 00:46 Автор Опубліковано: January 10, 2010 at 00:46 Пытаюсь намалевать графики для юзеров и запихнуть это всё в вэб-иф. Показания трафика беру из базы СТГ. Уже почти получилось, кроме того что рисует он немного привирая. Но основная проблема - провалы в графике. Думаю причина в том, что обновляемость по сравнению с ipfw count - редкая, раз в несколько минут. И rrdtool просто не считает нужным это прорисовывать. Как победить? Изменять немного данные каждый раз, когда добавляю их в базу? Там, единичку прибавлять... попробую - отпишусь.
Ork Yason Опубліковано: January 10, 2010 at 07:03 Опубліковано: January 10, 2010 at 07:03 из базы СТГ- эт как, поточнее
Kucher2 Опубліковано: January 10, 2010 at 10:03 Автор Опубліковано: January 10, 2010 at 10:03 Ну, из файлов вида /var/stargazer/users/test/stat - поля D0, U0... Как тут: http://local.com.ua/forum/topic/10919-stg-mrtg/page__hl__rrdtool Только выходит почему-то как на рисунке. Приращивание по единичке не помогло. Буду копать. :/
Kucher2 Опубліковано: January 18, 2010 at 12:59 Автор Опубліковано: January 18, 2010 at 12:59 Народ, хелп! Проблема как в посте выше - rrdtool "рвёт" графики. Всё делаю по манам. Такая же связка работает для локалки, а для юзера - получается бяка. Может кто-то скинет конфиги rrdtool, если делали, для юзеров?
nightfly Опубліковано: January 18, 2010 at 13:05 Опубліковано: January 18, 2010 at 13:05 забейте на него - есть намного более быстрые и веселые решения для малевания графичков
deep_admin Опубліковано: January 18, 2010 at 13:25 Опубліковано: January 18, 2010 at 13:25 пользуюсь вот этим http://www.void.gr/kargig/blog/2006/01/15/howto-remove-spikes-from-rrd-graphs/ Раз в сутки скриптом обхожу все свои rrdшки и убираю скачки.
Kucher2 Опубліковано: January 18, 2010 at 16:02 Автор Опубліковано: January 18, 2010 at 16:02 А всё-таки из-за чего это происходит? Может как-то можно обойтись без таких костылей, убрав глюк на этапе построения графика или занесения данных в базу?
deep_admin Опубліковано: January 19, 2010 at 07:10 Опубліковано: January 19, 2010 at 07:10 Все зависит от типа счетчика в rrd. По-умолчанию вы снимаете с интерфейсов с помощью snmp (или еще как-то) текущие значения счетчиков которые каждый раз увеличиваются. rrdtool сам вычисляет разницу и ложит ее в базу. После ребута девайса счетчики сбрасываются, вот rrd отнимает текущее небольшое значение от предыдущего огромного, берет его по модулю и рисует ваши петабайты/с . Можно следить за этим самостоятельно,а в rrd сделать тип счетчика gauge, а не counter, ну и придется за ребутами следить самому (например при возникновении такого большолго значения усреднять по последним 10-20).
Kucher2 Опубліковано: January 19, 2010 at 10:47 Автор Опубліковано: January 19, 2010 at 10:47 У меня другая ситуация. Для случая рисования графиков на всю сеть - да, так и происходит, но я нашёл как это обойти, о чём написал выше: тут всё ок. А во втором случае - данные берутся из файла статистики юзера: там величина всегда нарастает. Кроме конца месяца конечно, но сейчас это неактуально.
Kucher2 Опубліковано: February 17, 2010 at 19:53 Автор Опубліковано: February 17, 2010 at 19:53 Может таки кто-то сделал сие на базе rrdtool + данные из файловой базы юзеров? Поделитесь пожалуйста. А то разбираться ещё как в rrdtool значения усреднять и рисовать графики - откровенно некогда, и так хватает чем заняться. Не могу побороть проблему рваных графиков.
Queeq Опубліковано: February 17, 2010 at 20:41 Опубліковано: February 17, 2010 at 20:41 БЛИН! Столько писал, потом файлы не прикрепились, нажал "Простой менеджер загрузки" и всё пропало нахрен! РРРРРРР! Ладно, щас напишу ещё раз.
Queeq Опубліковано: February 17, 2010 at 21:05 Опубліковано: February 17, 2010 at 21:05 У меня работает PHP скрипт, который запускается по крону ежеминутно. Он снимает данные со счётчиков PF, пишет базы и рисует графики, если пришло время их обновлять. PHP - потому что только на нём умею писать относительно сложные вещи. Рисует графики по двум направлениям. Скрипт использует список "IP имя" из текстового файла, для которых надо рисовать графики. Если добавляешь новое имя - запускается внешний скрипт по созданию новой базы. На 30 юзерах в онлайне скрипт пишет базы 4 секунды (если не надо рисовать графики). Большинство времени занимает сама работа RRD. Если он рисует ещё и графики - вообще получается около 17 секунд. В общем накладное это занятие - делать графики для всех юзеров. Проц пенёк 2.4. Может быть можно всё это ещё оптимизировать, но я не программер и не знаю как. Так... Файло не прикрепляется. Качать тут. Внутри файлы: create_custom_base - создание новой rrd базы. Аргументом передаётся имя пользователя (базы). user_day_graph - нарисовать график за день. Аргументом передаётся имя пользователя (базы). user_month_graph - нарисовать график за месяц. Аргументом передаётся имя пользователя (базы). user_update_rrd.php - основной скрипт. user_week_graph - нарисовать график за неделю. Аргументом передаётся имя пользователя (базы). Скрипт писался под свои специфические настройки, но думаю общий принцип пригодится. Графики будут выглядеть как тут, только будет чёткое разделение Ukraine&World, а не Total&World. Будут вопросы - с удовольствием отвечу.
Kucher2 Опубліковано: February 17, 2010 at 21:36 Автор Опубліковано: February 17, 2010 at 21:36 Блин... у меня в онлайне уже больше 50-ти человек бывает. Файлы качнул, спасибо. Гляну завтра. А зачем pf? Это ж для каждого надо правила держать. Есть же готовые цифры в файлах юзеров. Проблема только в их корректной обработке. И вообще, Если эта штука так грузит машину - может ну её? Или сунуть скрипты в очередь с низким приоритетом, пусть себе малюются когда машине делать нечего... а потом готовые графики разом копируются... Вот что rrdtool делает хорошо и автоматически - снимает данные и сохраняет. Может и правда разобраться и самому строить графики? Надо подумать. Жаль, совсем не знаю английского.
Queeq Опубліковано: February 18, 2010 at 07:25 Опубліковано: February 18, 2010 at 07:25 С PFом сложилось исторически, т.к. изначально я снимал с него только общие графики загрузки. Плюс я вижу фактический график, тогда как при съёме с биллинга он может быть неточным (в связи с ошибками конфигурации либо сбоями). Тем более PF всё равно используется для выпускания в инет и не надо писать правила специально для снятия статистики - они есть изначально. Может быть и не стоит графики рисовать каждые 5 минут (как это у меня), но мне приятнее заходить и сразу видеть весь комплект юзерских графиков, чем ждать, пока они все отрисуются.
Рекомендованные сообщения
Создайте аккаунт или войдите в него для комментирования
Вы должны быть пользователем, чтобы оставить комментарий
Создать аккаунт
Зарегистрируйтесь для получения аккаунта. Это просто!
Зарегистрировать аккаунтВхід
Уже зарегистрированы? Войдите здесь.
Войти сейчас