Рубрики
Технологии

Мониторинг с RRD

Если у вас есть какая-то система мониторинга чего-то — наверняка там есть какие-то показатели, которые актуальны здесь и сейчас: для метеостанции — температура, для роутера — трафик, для сервера — нагрузка, и т.д. — в общем, какая-то актуальная величина. Но кроме онлайн-значений — может быть полезен график, например за ближайшие сутки, или за месяц, или за год — чтобы можно было оценивать тренды.

Или наоборот: иногда происходит какое-то событие, достаточно редкое (сбой, или наоборот срабатывание), но хотелось бы понимать, насколько часто, и не меняется ли его частота в разные периоды — ведь это может быть признаком более серьезной проблемы.

Самое очевидное решение — писать данные в базу. Но такая таблица будет постоянно расти, занимать всё больше места, а выборка за прошлый период может отрабатывать довольно долго, особенно если требуется уместить целый год в 900 пикселей графика.

Когда-то и я наступил на эти грабли — когда база на MongoDB распухла так, что не влезла в 32-битный компьютер. Но это другая история.

При этом мало кому нужно точно знать, какая температура была на датчике 26 июля 2016 года в 14:33:15 — чаще достаточно просто усредненных значений. Вот как раз для подобного давным-давно люди придумали RRD — Round-robin database

Читать далее