Я хочу создать графическую панель в Grafana, которая показывает 10 самых высоких потребителей ЦП и показывает их соответствующую историю за любой выбранный временной интервал. Я думаю, что последняя часть - сложная часть.
У меня пока есть это:
SELECT TOP("median_Percent_Processor_Time", 10) as "usage", host FROM (
SELECT median("Percent_Processor_Time") AS "median_Percent_Processor_Time" FROM "telegraf_monitoring"."autogen"."win_cpu" WHERE time > now() - 5s GROUP BY time(:interval:), "host" FILL(none)
)
Это дает следующую таблицу:
time | usage | host
12/17/18 02:38:36PM | 88.4503173828125 | CNVDWSO202
12/17/18 02:38:36PM | 60.55384826660156 | CNVDSerr01
12/17/18 02:38:36PM | 46.807456970214844 | NVsABAr01
12/17/18 02:38:36PM | 27.402353286743164 | NVDARCH02
12/17/18 02:38:36PM | 21.320478439331055 | NVDABAr05
12/17/18 02:38:36PM | 5.546620845794678 | NVDALMBOE
12/17/18 02:38:36PM | 3.654918909072876 | NVDLeNCXE01
12/17/18 02:38:36PM | 47.08285903930664 | NVDOKTARAD01
Таблица полезна, но это всего лишь один момент времени. Мне нужно впоследствии запросить и извлечь данные временных рядов из этого измерения win_cpu для этих 10 хостов. Значения хостов являются динамическими, у меня нет возможности предсказать, что будет отображаться, и из-за этого я не могу связать вместе OR
операторы, а Influx не поддерживает IN
, насколько я могу видеть.