Как стать автором
Обновить

Комментарии 36

Хоть бы прокомментировали, что за ссылка. Я так понимаю, пакет визуализации данных, который покрывает то, о чем я написал?
Что есть из готового я не смотрел: не те цели были. Цель ставилась в первую очередь — протащить данные из датчика/контроллера на сервер, а затем вывести их в удобоваримом виде.
Одна из самых крутых штук в Graphite — это его функциональность по «даунсэмплингу» исторических данных. На базе Graphite можно строить компактные хранилища исторических данных на многие годы назад. Например, измерения текущей температуры за последние сутки хранятся с «разрешением» в 1 минуту, данные за прошлый месяц — с «разрешением» в 1 час (т.е. берутся 60 измерений, вычисляется среднее/максимальное/минимальное значение), а за всё остальное время — с «разрешением» в, например, 4 часа.
Наблюдая, каким образом растет объем данных (и в теле отдаваемой страницы), уже появилась идея реализовать подобный алгоритм.
Плюс циклическая база данных (RRD, round robin database). Для графиков — самое оно.
Интересно будет посмотреть!
эта фича не Graphite, а самой rrd
Строго говоря, RRD как продукт в Graphite уже не используется. Там есть свои, со всем причитающимся, — Whisper и Ceres. Про второй не скажу, а первый — концептуально RRD, верно.
RRD — это ведь, по сути, характеристика базы данных:
база данных, объём хранимых данных которой не меняется со временем, поскольку количество записей постоянно, в процессе сохранения данных они используются циклически


Whisper — RRD, Ceres — уже нет:
In contrast with Whisper, Ceres is not a fixed-size database and is designed to better support sparse data of arbitrary fixed-size resolutions. This allows Graphite to distribute individual time-series across multiple servers or mounts.
А есть какое-нибудь чтиво о внутреннем устройстве Ceres'а, окромя исходников?
К сожалению, я не видел ничего подобного. Сам всё хочу добраться до него, попробовать да посмотреть, как оно там реализовано, но всё руки не доходят — есть более важные задачи :(
В графите «из коробки» оно есть, значит можно сказать, что это фича графита :)
Вот неплохой доклад про графит от наших любимых и уважаемых коллег: events.yandex.ru/lib/talks/1122/ (презентация: www.slideshare.net/yandex/graphite-26755017). Если и правда интересно. Там слишком много нюансов, чтобы в одном коротком комментарии все их писать.

Если в двух словах: описываемое в статье решение, возможно, хорошо показывает себя в процессе разработки и сразу после запуска. Но через месяц (или даже через год, как повезёт) этим совершенно невозможно будет пользоваться. А уж поддерживать и расширять функционал — так и подавно. Графит (и прочие решения) решает эти проблемы и позволяет сосредоточится на других, более важных и интересных моментах. Впрочем, как «pet project» в качестве небольшого проекта для получения опыта в ключе «как делать ни в коем случае не надо» описываемое в статье решение вполне себе ок.
Понятное, что во многих случаях лучше скомбинировать готовые решения. Эта статься описывает скорее рыбу, то как можно реализовать на самом нижнем уровне все составные части. Главный недостаток системы, который надо решить — нормальная долговременная работа.

Да, а графит (и скорее всего большое количество прочих готовых решений) я и вовсе не смог бы запустить в имеющихся требованиях, поддержка Python на сервере отсутствует, так же как и поддержка базы данных.
Графит хорош на малых нагрузках, но с несколькими десятками хостов, пишущих одновременно свои метрики, мне пришлось выносить его в рамдиск, иначе тупо нагружал сервер до предела и не успевал писать. Плюс там куча раздрая в отношении чего и как деплоить, То megacarbon предложат, то просто carbon-cache, плюс теперь говорят что база whisper устарела, попробуйте новую. Короче у меня отрицательные впечатления.
Я пару лет назад общался с парнями из Disqus, у них тоже куча хостов (точную цифру не помню), графит пишет на SSD, суммарный объём дисков графита тогда был около 5 терабайт. Вопрос лишь в том, как его «готовить». С деплоем тоже проблем особых нет — один раз собирается соответствующий пакет (RPM, например) и всё, ставится за пять секунд одной командой.

В целом да, согласен, графит, порой, жутко бесит, есть узкие места и проблемы, но практически все они преодолимы, да и проявляются только на очень больших проектах, когда совершенно отчётливо понимаешь, что, где, как и зачем. Мой посыл в том, что графит совершенно однозначно лучше решения, описанного в статье, даже в таких простых проектах :)
Дело как раз в том, что пока читаешь о фичах — все круто. Начинаешь ставить и тут косяки как начинают переть со всех щелей. Если разворачивать например Ganglia, такого количества гемороя там нет. Может быть сейчас подтянули, но когда я разворачивал Graphite у себя, не было даже внятной доки как это поставить, масштабировать и настраивать. Пришлось перечитать кучу блогов и даже поспрашивать в irc.
Я планирую в ближайшее время попробовать influxdb на своей инсталляции, выглядит многообещающе.
Вот тут соглашусь со всем написанным :)
Все ссылки в Файлах 404.
Прошу прощения. Ссылки исправлены.
Мой пример скрещивания ардуинки и грифинчика

Расскажите как вы CORS побороли? У меня дуэт Grafana + InfluxDB работал пару дней, потом ВНЕЗАПНО перестал ссылаясь на CORS.
А это не Кибана?
графана
Тоже подобное сделал, но вот не понял можно ли как-то графики выносить отдельно из Графити, есть ли простые варианты?
Можно отдельный график взять с дашбоарда, но при этом вверху будет доступно меню управления.
Обещают, что в будущем сделают возможность отключения меню в графике.
Умеют ли HighCharts или Graphite делать горизонтальные и вертикальные выделенные секторы, пример вертикального, в данном случае это график домашней температуры с указание периодов включенного котла. Этот пример сделан на dxChart.
В примерах к Highcharts подобного картинке нет. Думаю, подобные полосы в нем можно получить, если вывести 2ой график с состояниями 0-1 с заполнением.
Что за котел если не секрет?
У меня Протермы пантера и скат, никак не могу научиться снимать с них нагрузку в киловатах. Простое вкл\выкл это уже что-то, но значения в киловаттах сильно круче.
Ох Как удачно выложили. Лень было искать что-то для отображения лога температуры. А тут готовые решения. Сделал за 10 минут себе смотрелку. Спасибо за подсказку!
Есть хороший бесплатный сервис — thingspeak.com
Расширяется плагинами, есть настройка внешнего вида графиков, пред/пост-обработка данных, экспорт/импорт данных, настройка публичности каналов и много другого.
Да, отличный сервис!
Я себе несколько комплектов мониторинга сделал на базе китайских роутеров + датчики, все заводится с пол-пинка.
Поставил в вегетарии, дома и на базовой станции на побережье.
ThingSpeak можно использовать отправляя данные как на их сервера, так и подняв свой полностью — исходники на Github.
Еще одна достаточно хорошая фича — графики можно брать и встраивать в свои страницы, все очень просто, вот пример.
В общем, для новичков в мониторинге и когда нужен быстрый старт ThingSpeak самое то.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации