графана конвертирует ps_cputime в процент - PullRequest
0 голосов
/ 08 февраля 2019

Я пытаюсь построить memcached данные в InfluxDB + Grafana, и я обнаружил, что ps_cputime находится в microsecond.

Как мне преобразовать его в понятный человеку формат, чтобы его было легко понять.

influenxdb:

> select * from memcached_syst limit 10;
name: memcached_syst
time                host                                         type       value
----                ----                                         ----       -----
1549595956627272659 ostack-infra-01_memcached_container-167ecaa7 ps_cputime 15853819249
1549596016550515653 ostack-infra-01_memcached_container-167ecaa7 ps_cputime 15853923573
1549596076550356985 ostack-infra-01_memcached_container-167ecaa7 ps_cputime 15854047878
1549596136550415911 ostack-infra-01_memcached_container-167ecaa7 ps_cputime 15854165969
1549596196550481720 ostack-infra-01_memcached_container-167ecaa7 ps_cputime 15854288341
1549596256550522792 ostack-infra-01_memcached_container-167ecaa7 ps_cputime 15854387422

Запрос Grafana:

SELECT mean("value") FROM "memcached_syst"  WHERE ("host" =~ /^$host$/ AND "type"='ps_cputime' ) AND $timeFilter GROUP BY time($interval) fill(null)

Что я могу сделать здесь, чтобы сделать это в процентах?

Ответы [ 2 ]

0 голосов
/ 09 февраля 2019

Вы можете конвертировать микросекунды в часы и отображать результат.Формула для перевода в часы - микросекунды / 3600000000

  Select (column_name/3600000000)      as time_in_hrs from table_name;

Спасибо

0 голосов
/ 09 февраля 2019

Вам нужно использовать NON_NEGATIVE_DERIVATIVE, результат будет в процентах:

SELECT NON_NEGATIVE_DERIVATIVE("value", 1s) / 1000
FROM "memcached_syst"
WHERE ("host" =~ /^$host$/ AND "type"='ps_cputime' ) AND $timeFilter
GROUP BY time($interval) fill(null)

Этот запрос может нуждаться в некоторой настройке, например, нормализация по количеству ядер.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...