EXTEND - примеры
За основу каждого из примеров использования правила EXTEND взяты взаимоисключающие поля include и exclude.
Пример 1: расширение таблицы данных всеми новыми метриками, кроме указанных.
Цель: сэкономить сетевой трафик.
Пошаговое руководство:
Шаг 1: в секции Мониторинг настроить тип проверки HTTP-запрос
Пусть достаточно знать лишь Status Code
(код состояния) и Response Time
(скорость ответа). Если пренебречь обновлением метрики body
(тело ответа) и флажком "Присылать тело ответа", то можно существенно сэкономить сетевой трафик.
Пример 2: совмещение include и exclude
Цель: отобразить в таблице метрики, по которым данные отсутствуют.
Пусть в секции Мониторинга настроена проверка, по всем метрикам которой собрать данные не удалось. Это может произойти при передаче данных по протоколу, не подразумевающему гарантированный ответ от сервера - UDP. Метрики, по которым данные отсутствуют, автоматически удаляются из таблицы данных.
Например, в рамках проекта "Умный дом" контролируются датчики движения и открытия двери. На сервер поступили данные только с датчика движения motion
и отобразились в таблице данных. Чтобы метрика door
не удалилась, необходимо расширить таблицу актуальных значений метрикой с указателем на устаревшие данные (last_) last_door
и записать в неё последние пришедшие данные.
[
{
"actions": [
{
"type": "extend",
"include": [
"last_door"
]
},
{
"type": "set",
"field": "last_door",
"value": "current.door"
},
{
"type": "extend",
"exclude": [
"last_door"
]
}
]
}
]