Как построить разные временные данные по оси X в Grafana

У меня есть два релиза данных в разные промежутки времени. Но я хочу нанести эти два релиза на графану с одинаковым интервалом времени. Можно ли подделать временной интервал и построить график? . Поскольку по умолчанию для оси X требуется временной ряд. Поэтому я не могу использовать другие параметры.

Пожалуйста, предложите по этому поводу.


person VST    schedule 06.03.2017    source источник
comment
Какую базу данных временных рядов вы используете? Приток? Графит? Что-то другое?   -  person Daniel Lee    schedule 06.03.2017
comment
Я использую приток. Поиск во многих ссылках, grafana 4.0 поддерживает не временные ряды по оси x (github .com / grafana / grafana / pull / 5917). Но я установил 4.1, даже если я не выбрал ось x как не временной ряд   -  person VST    schedule 06.03.2017


Ответы (3)


Вы имеете в виду опцию X-Axis Mode на панели Graph?

Параметр режима оси X

person Daniel Lee    schedule 07.03.2017
comment
Нет, я хочу, чтобы показатели ЦП для двух разных временных рядов отображались на одной панели. Пример метрики ЦП выпуска 1 (6 месяцев назад) с метрикой ЦП версии 2 (текущее время) должен отображаться на той же панели. - person VST; 09.03.2017
comment
Ага, вы хотите знать, как изменить время вашего запроса. В Grafana есть переопределение временного сдвига панели: docs.grafana.org/ ссылка / временной диапазон /. Это не совсем то, что вам нужно, но у вас может быть две панели на одной панели инструментов, одна для текущего времени, а другая для 6 месяцев назад. Я проверю, есть ли в InfluxDB функция временного сдвига, чтобы вы могли делать это для каждого запроса. - person Daniel Lee; 09.03.2017
comment
Привет, большое спасибо. это то, что я хочу, я знаю, что переопределение сдвига времени панели. Но ищу на одной панели ?. - person VST; 10.03.2017
comment
Не уверен, что можно в InfluxDB. В Graphite и Prometheus есть функции временного сдвига / смещения, но я не могу найти их в документации InfluxDB. Похоже, они включены в дорожную карту Influxdb - github.com/influxdata/influxdb/issues/5930 Есть две проблемы для переменных отставания и опережения. Извините, может быть, у кого-то есть лучшее представление о том, как это сделать с InfluxDB. - person Daniel Lee; 10.03.2017

Я создал такие графики, хотя это потребовало некоторой работы.

Для начала, InfluxDB еще не поддерживает timeShift, как подробно описано здесь:

https://github.com/influxdata/influxdb/issues/142

Поэтому я использовал отдельный HTTP-сервер, названный прокси-сервером Infxdb-Timeshift:

https://github.com/maxsivanov/influxdb-timeshift-proxy

Мой стек выглядел так:

Grafana Dashboard --> influxdb-timeshift-proxy --> InfluxDB

Вот описания двух "->" на схеме выше:

  • Значок -> слева: я создал источник данных Grafana, чтобы указать на порт tcp для infxdb-timeshift-proxy.
  • Значок -> справа: конфигурация запуска «Influxdb-timeshift-proxy» указывает на сервер InfluxDB.

При этом, чтобы сдвиг времени произошел, SQL-подобные операторы InfluxDB нуждаются в тщательно отформатированном поле 'alias', например:

"SELECT mean( "meanAT" ) AS shift_855296_seconds" blah blah sql blah.

Подробную информацию о синтаксисе см. На странице github infxdb-timeshift-proxy выше.

С помощью панели управления Grafana, чтобы получить две строки (также известные как ряды) на графике временных рядов, я настраиваю два оператора sql. Вышеупомянутый представляет собой один SQL из теста 9-10 дней назад, тогда я бы ВЫБРАЛ другой тест (мой базовый план, который я провел сегодня) со сдвигом во времени 0:

"SELECT mean( "meanAT" ) AS shift_0_seconds" blah blah sql blah.

Итак, это отвечает на ваш вопрос, но его использование ограничено - потому что какой-то бедняк должен вычислить разницу между временем тестирования, а затем набрать результат (shift_855296_seconds) в SQL на панели инструментов.

Почему? потому что по умолчанию панели мониторинга Grafana выполняют операторы SQL, которые (в основном) жестко сконфигурированы в панели мониторинга.

Чтобы Grafana выполняла SQL, где псевдоним сдвига генерируется динамически, я написал панель инструментов Grafana Scripted на javascript. Вот общие инструкции для скриптовых дашбордов:

http://docs.grafana.org/reference/scripting/

К вашему сведению, панели мониторинга Grafana плохо документированы, а «среда разработки» для отладки в лучшем случае примитивна, и мне не удалось заставить работать javascript «require» (который включает сторонние библиотеки). Но на доске обсуждений Grafana есть ограниченная помощь, и она действительно работает - возможно создание очень красивой панели инструментов с переключением времени на лету.

URL-адреса http для запуска / отображения «скриптовой информационной панели» можно легко встроить в другую созданную вами информационную панель. Просто добавьте URL своей скриптовой панели инструментов в «Текстовую панель», используя уценку:

http://docs.grafana.org/features/panels/text/

В конечном счете, InfxDB-timeshift-proxy - временное решение. Я не пробовал, но похоже, что Kapacitor также можно использовать для переключения во времени, как описано здесь:

https://docs.influxdata.com/kapacitor/v1.3/nodes/shift_node/

- Эрик

person Erik Ostermueller    schedule 14.09.2017

Не уверен, правильно ли я понял ваш вопрос. Если вы хотите просто отметить свой выпуск - вы можете использовать аннотации - http://docs.grafana.org/reference/annotations/#influxdb-annotations.

Если вы хотите отображать информационную панель только для определенного периода - вы можете закодировать это в URL-адресе с помощью параметров 'from' и 'to' - https://[your-dashboard-url]?From=1488868669245&to=1488873058626 Но да, нет способа разместить параметр на оси X в текущей Grafana.

person deniszh    schedule 07.03.2017