Настройка алертов в Redash - LEFT JOIN

Свяжитесь с нами в любой удобной для вас форме

Менеджер

Написать в телеграмм

Онлайн
Телеграмм
или
Заполните форму

1 минута чтения

*

3 декабря 2019 г.

Настройка алертов в Redash

В Redash реализован удобный функционал построения алертов. Под алертами подразумеваются оповещения, возникающие при изменении какого-то конкретного показателя. При этом степень изменения пользователь задает самостоятельно вручную в интерфейсе. Алерты можно настроить на почту или в канал / личные сообщения Slack.

Вспомним как собрать данные, используя Google Analytics, и для этих данных настроим оповещения, используя внутреннюю БД Redash (query-results). В качестве основания для оповещения нас будет интересовать падение числа пользователей на сайте за вчерашний день более, чем на 30%.

Построение запроса к Google Analytics



{
    «ids»: «ga:128886640»,
    «start_date»: «30daysAgo»,
    «end_date»: «yesterday»,
    «metrics»: «ga:users», 
    «dimensions»: «ga:date»
}

Включаем хранение query results

Одной из основных фишек redash считается возможность обращения к результатам выполнения запроса, которые хранятся во внутренней СУБД SQLite.

Для того, чтобы включить хранение результатов необходимо перейти в Data Sources и включить query-results (beta).

Теперь простой командой:

select * from query_37

Мы получим аналогичный результат, что дает и предыдущий запрос к GA, но с возможностью использования языка SQL для обработки полученного сета данных.

Строим запрос для оценки изменений в числе пользователей

Для того, чтобы настроить оповещение необходимо в начале написать запрос, которые выдаст целевой показатель для проверки, в нашем случае — рост или падение числа пользователей на сайте.
Напишем запрос, который обращается ко внутренней СУБД Redash:



SELECT sum(CASE WHEN date(ga_date)=DATE(‘now’, ‘-1 day’) THEN ga_users ELSE NULL END) AS yesterday,
sum(CASE WHEN date(ga_date)=DATE(‘now’, ‘-2 day’) THEN ga_users ELSE NULL END) AS before_yesterday,
(sum(CASE WHEN date(ga_date)=DATE(‘now’, ‘-1 day’) THEN ga_users ELSE NULL END)*1.0/
sum(CASE WHEN date(ga_date)=DATE(‘now’, ‘-2 day’) THEN ga_users ELSE NULL END)*1.0-1)*100 AS difference
FROM query_37

В запросе выше мы считаем число пользователей за вчера и за позавчера, а также оцениваем изменение числа пользователей в процентах.
В текущем примере получили следующую таблицу данных, которую дальше будем использовать при настройке алерта:


alert-table@2x.png

Теперь, чтобы мы могли получать алерты, необходимо настроить выполнение запросом по расписанию (регулярное обновление результатов / scheduled query/ в терминах redash).

refresh-schedule@2x.png

Поставим обновление на 10 утра каждого дня:

refresh-10@2x.png

Настраиваем оповещение

Переходим в меню CreateAlert. Вводим название запроса, в моем случае — это «Alert on users«.

Далее, можем поменять отображаемое название нотификации или оставить то, что предлагается системой.

Выбираем целевую метрику, в рассматриваемом примере — difference. Ниже в операторе сравненения (Op) выбираем less then и устанавливаем значение -30.

target-value@2x.png

В блоке справа на странице необходимо выбрать куда именно будет отправляться алерт. Подробно о настройке пути следования алерта можно прочитать на официальном сайте Redash.

Теперь алерт появился на странице со списков алертов и по умолчанию находится в статусе OK.

Как только показатель превысит заданный нами уровень статус изменится на TRIGGERED, а оповещение отправится на почту / в Slack.

Больше по теме

* Настройка алертов на странице Redash
* Добавление Slack в качестве адреса для уведомлений

213 просмотров

Добавить комментарий

[ Рекомендации ]

Читайте также

1 минута чтения

*

20 ноября 2020

Обзор дашборда в SAP Analytics Cloud

1 минута чтения

*

16 мая 2022

Обзор дашборда в Superset

1 минута чтения

*

16 марта 2021

Обзор дашборда Yandex DataLens

[ Дальше ]