Pull to refresh
0
0
Send message
По поводу mstats. Несколько показателей в одной команде можно было вычислять и в 7.0. В частности, ваш пример для 7.1 отлично отработал бы и в 7.0.*.

Разница в том, что в 7.0 можно было делать вычисления только по полю _value. Так что если надо было рассчитать статистику по разным метрикам, то приходилось писать что-то вроде такого:

| mstats avg(_value) as value where index=metric_index metric_name=metric1 OR metric_name=metric2 span=1min by metric_name
| timechart span=1min max(value) as value by metric_name


В 7.1 же можно имя метрики сразу писать внутри стат.функции:

| mstats avg(metric1) as metric1, avg(metric2) as metric2 where index=metric_index span=1min

Так что новый функционал тут особо не привнесли, но синтаксически стало приятнее (а использование _value в mstats теперь deprecated).

Главная проблема с метрическими индексами в том, что если повторно отправить в метрический индекс метрику с таким же именем и dimensions, то в индексе будут содержаться оба значения. Очевидно, что это может плохо повлиять на вычисляемые статистики по этим метрикам. Возможными вариантами решения проблемы могли быть либо возможность избирательно удалять данные из метрического индекса (сделать аналог команды delete), либо настройка индекса, которая позволяла бы хранить только последнее значение по имени метрики и dimensions. Но этого пока нет, и приходится очень аккуратно настраивать сбор данных в метрические индексы.

Information

Rating
Does not participate
Registered
Activity