У меня есть графитовая установка (версия 0.9.9), где я создаю метрики на множестве небольших систем.
Например, у меня есть 2 установки базы данных postgresql (postgresql-1 и postgresql-2), где вторая является подчиненной репликацией первой. Первая база данных используется для повседневного использования, а вторая — это резервная база данных, используемая в основном системами отчетности и отладки запросов.
Я думаю, что следующий пример - это то, что вы хотите сделать. Образ представляет собой количество подключений к обеим базам данных. Синяя линия соответствует первому, зеленая — второму, а красная — сумме обоих рядов, что дает общее количество подключений.
database.postgresql-1.connection.ALL.value # blue line
database.postgresql-2.connection.ALL.value # green line
sumSeries(database.postgresql-*.connection.ALL.value) # red line
Ваша проблема в том, что ваши серии имеют разные уровни пути (я старался избегать этого в именах своих серий, так как это действительно вызывает проблемы). Я не вижу другого выхода, кроме как написать что-то вроде этого:
дано
stats_count.A.B.TestMetric
stats_count.A.TestMetric
stats.A.B.TestMetric
stats.A.B.TestMetric
sum stats_count.**. Метрики TestMetric с использованием
sumSeries(stats_count.*.TestMetric, stats_count.*.*.TestMetric)
Graphite все еще нуждается во многих улучшениях, и, к сожалению, разработка идет довольно медленно (например, версия 0.9.10 является последним выпуском, имеет проблемы с установкой и выпущена 1 год назад). Я действительно рассматриваю возможность разветвления/вклада в этот проект
person
Bruno Penteado
schedule
12.06.2013