Add field from calculation

Тема дорожной карты · Grafana

Трансформация Add field from calculation в Grafana позволяет создавать новый вычисляемый столбец в фрейме данных, применяя математическое или логическое выражение к существующим полям, — так можно дополнять результаты запросов вычисленными значениями без изменения запроса к источнику данных. Вы выбираете режим: Reduce row (применяет агрегацию вроде sum или mean ко всем полям строки), Binary operation (объединяет два поля оператором +, -, *, /) или Unary operation (применяет функцию вроде abs или log к одному полю), — и Grafana вычисляет выражение для каждой строки, возвращённой запросом. Типичный пример использования — вычисление процента ошибок: если фрейм данных содержит столбцы error_count и total_count, трансформация Add field from calculation создаёт новое поле error_rate как error_count / total_count * 100. Полученное вычисляемое поле появляется рядом с исходными полями в панели и может быть переименовано, отформатировано с единицей измерения или оформлено с пороговыми значениями через переопределения полей. Эта трансформация органично сочетается с Group by и Merge в одном конвейере, позволяя реализовывать сложную многошаговую обработку данных прямо в редакторе панели Grafana.

Как это работает

Add field from calculation работают после запроса, до визуализации: Join by field, Reduce (агрегация per series), Filter by name/value, Rename fields, Concatenate fields, Calculate (математика между series). Полезны для: комбинирования запросов из разных источников, вычисления ratio, переименования generic-labels, нормализации между data sources. Применяются в Transform-вкладке панели; порядок трансформаций важен.

Когда применять

Трансформации — когда query language не может сделать нужное (например, join метрики с CMDB-lookup таблицей из SQL-datasource). Reduce — для коллапса длинного time-series в одно число для Stat-панели. Лимит цепочки трансформаций 2-3 шага; больше — переструктурируйте запрос.

Типичные ошибки

Ловушки Add field from calculation: огромные цепочки трансформаций прячут, что показывается (отладочный кошмар); трансформации на больших series (медленная client-side обработка); трансформации для фикса плохих данных вместо фикса на источнике.

Связанные понятия

Полезные ресурсы