Я использую Grafana (v2.1.3) для визуализации показателей. Метрики взяты из графита, собранного collectd. Целевой граф должен отображать дисковое пространство в процентах для несколько узлов, например. позволяет сказать, что папка/данных, поэтому метрика, которая представляет собой свободное пространство в байтах:Получите свободное место на диске в процентах для нескольких узлов, используя Grafana
collectd.$node.df-data.df_complex-free
метрик, которые представляют собой общее пространство является суммой:
collectd.$node.df-data.*
Итак, я следующий конфиг:
Series A: collectd.$node.df-data.df_complex-free (Invisible)
Series B: collectd.$node.df-data.* (Invisible)
Series C: alias(asPercent(#A, sumSeries(#B)), 'Free space')
Здесь $ node - это переменная, выбранная из раскрывающегося списка (All, node1, node2, node3 и т. Д.). Он работает как ожидалось, когда выбран один конкретный узел, но не тот Выбрана опция (например, если процент на один узел равен ~ 95%, тогда при выборе All выбрано 24%).
Другой вариант (будет, вероятно, более предпочтительным:
Series A: collectd.$node.df-data.df_complex-free
Series B: groupByNode(collectd.$node.df-data.*, 1, 'sum')
Series C: scale(divideSeries(#A, #B), 100)
Опять же для одного узла, это хорошо, но как только «Все узлы» выбран вариант, то отображается следующее сообщение об ошибке:
divideSeries второй аргумент должен ссылаться ровно в 1-й серии
Любые идеи? Я считаю, что должно быть простое решение.
Спасибо за ответ. Эта простая конфигурация разрешает все связанные с процентом проблемы. –