{
    "version": "https:\/\/jsonfeed.org\/version\/1",
    "title": "Блог об аналитике, визуализации данных, data science и BI, заметки с тегом: alert",
    "home_page_url": "http:\/\/test.leftjoin.ru\/tags\/alert\/",
    "feed_url": "http:\/\/test.leftjoin.ru\/tags\/alert\/json\/",
    "icon": "http:\/\/test.leftjoin.ru\/user\/userpic@2x.jpg",
    "author": {
        "name": "Николай Валиотти",
        "url": "http:\/\/test.leftjoin.ru\/",
        "avatar": "http:\/\/test.leftjoin.ru\/user\/userpic@2x.jpg"
    },
    "items": [
        {
            "id": "20",
            "url": "http:\/\/test.leftjoin.ru\/all\/redash-alerts\/",
            "title": "Настройка алертов в Redash",
            "content_html": "<p>В <a href=\"http:\/\/test.leftjoin.ru\/all\/redash-polnocennaya-on-demand-analitika\/\">Redash<\/a> реализован удобный функционал построения алертов. Под алертами подразумеваются оповещения, возникающие при изменении какого-то конкретного показателя. При этом степень изменения пользователь задает самостоятельно вручную в интерфейсе. Алерты можно настроить на почту или в канал \/ личные сообщения Slack.<\/p>\n<p>Вспомним как собрать данные, используя <a href=\"http:\/\/test.leftjoin.ru\/all\/stroim-funnel-report-v-redash\/\">Google Analytics<\/a>, и для этих данных настроим оповещения, используя внутреннюю БД Redash (<i>query-results<\/i>). В качестве основания для оповещения нас будет интересовать падение числа пользователей на сайте за вчерашний день более, чем на 30%.<\/p>\n<h2>Построение запроса к Google Analytics<\/h2>\n<pre class=\"e2-text-code\"><code>{\r\n    &quot;ids&quot;: &quot;ga:128886640&quot;,\r\n    &quot;start_date&quot;: &quot;30daysAgo&quot;,\r\n    &quot;end_date&quot;: &quot;yesterday&quot;,\r\n    &quot;metrics&quot;: &quot;ga:users&quot;, \r\n    &quot;dimensions&quot;: &quot;ga:date&quot;\r\n}<\/code><\/pre><p>В результате выполнения данного запроса мы получим число пользователей за последние 30 дней.<\/p>\n<div class=\"e2-text-picture\">\n<img src=\"http:\/\/test.leftjoin.ru\/pictures\/ga-query@2x.png\" width=\"175\" height=\"391\" alt=\"\" \/>\n<\/div>\n<h2>Включаем хранение query results<\/h2>\n<p>Одной из основных <i>фишек<\/i> redash считается возможность обращения к результатам выполнения запроса, которые хранятся во внутренней СУБД SQLite.<br \/>\nДля того, чтобы включить хранение результатов необходимо перейти в <i>Data Sources<\/i> и включить <i>query-results (beta)<\/i>.<\/p>\n<p>Теперь простой командой:<\/p>\n<pre class=\"e2-text-code\"><code>select * from query_37<\/code><\/pre><p>Мы получим аналогичный результат, что дает и предыдущий запрос к GA, но с возможностью использования языка SQL для обработки полученного сета данных.<\/p>\n<h2>Строим запрос для оценки изменений в числе пользователей<\/h2>\n<p>Для того, чтобы настроить оповещение необходимо в начале написать запрос, которые выдаст целевой показатель для проверки, в нашем случае — рост или падение числа пользователей на сайте.<br \/>\nНапишем запрос, который обращается ко внутренней СУБД Redash:<\/p>\n<pre class=\"e2-text-code\"><code>SELECT sum(CASE WHEN date(ga_date)=DATE('now', '-1 day') THEN ga_users ELSE NULL END) AS yesterday,\r\nsum(CASE WHEN date(ga_date)=DATE('now', '-2 day') THEN ga_users ELSE NULL END) AS before_yesterday,\r\n(sum(CASE WHEN date(ga_date)=DATE('now', '-1 day') THEN ga_users ELSE NULL END)*1.0\/\r\nsum(CASE WHEN date(ga_date)=DATE('now', '-2 day') THEN ga_users ELSE NULL END)*1.0-1)*100 AS difference\r\nFROM query_37<\/code><\/pre><p>В запросе выше мы считаем число пользователей за вчера и за позавчера, а также оцениваем изменение числа пользователей в процентах.<br \/>\nВ текущем примере получили следующую таблицу данных, которую дальше будем использовать при настройке алерта:<\/p>\n<div class=\"e2-text-picture\">\n<img src=\"http:\/\/test.leftjoin.ru\/pictures\/alert-table@2x.png\" width=\"299\" height=\"102\" alt=\"\" \/>\n<\/div>\n<p>Теперь, чтобы мы могли получать алерты, необходимо настроить выполнение запросом по расписанию (регулярное обновление результатов \/ <i>scheduled query<\/i> в терминах redash).<\/p>\n<div class=\"e2-text-picture\">\n<img src=\"http:\/\/test.leftjoin.ru\/pictures\/refresh-schedule@2x.png\" width=\"351\" height=\"76\" alt=\"\" \/>\n<\/div>\n<p>Поставим обновление на 10 утра каждого дня:<\/p>\n<div class=\"e2-text-picture\">\n<img src=\"http:\/\/test.leftjoin.ru\/pictures\/refresh-10@2x.png\" width=\"324\" height=\"172\" alt=\"\" \/>\n<\/div>\n<h2>Настраиваем оповещение<\/h2>\n<p>Переходим в меню <i>Create<\/i> — <i>Alert<\/i>. Вводим название запроса, в моем случае — это «<i>Alert on users<\/i>».<br \/>\nДалее, можем поменять отображаемое название нотификации или оставить то, что предлагается системой.<\/p>\n<p>Выбираем целевую метрику, в рассматриваемом примере — <i>difference<\/i>. Ниже в операторе сравненения (<i>Op<\/i>) выбираем <i>less then<\/i> и устанавливаем значение <i>-30<\/i>.<\/p>\n<div class=\"e2-text-picture\">\n<img src=\"http:\/\/test.leftjoin.ru\/pictures\/target-value@2x.png\" width=\"781\" height=\"341\" alt=\"\" \/>\n<\/div>\n<p>В блоке справа на странице необходимо выбрать куда именно будет отправляться алерт. Подробно о настройке пути следования алерта можно прочитать на <a href=\"https:\/\/redash.io\/help\/user-guide\/alerts\/creating-new-alert-destination\">официальном сайте Redash<\/a>.<\/p>\n<p>Теперь алерт появился на странице со списков алертов и по умолчанию находится в статусе <i>OK<\/i>.<\/p>\n<p>Как только показатель превысит заданный нами уровень статус изменится на <i>TRIGGERED<\/i>, а оповещение отправится на почту \/ в Slack.<\/p>\n<p>Больше по теме<\/p>\n<ul>\n<li><a href=\"https:\/\/redash.io\/help\/user-guide\/alerts\/setting-up-an-alert\">Настройка алертов на странице Redash<\/a><\/li>\n<li><a href=\"https:\/\/redash.io\/help\/user-guide\/alerts\/creating-new-alert-destination#Slack\">Добавление Slack в качестве адреса для уведомлений<\/a><\/li>\n<\/ul>\n",
            "date_published": "2019-12-03T10:55:11+03:00",
            "date_modified": "2020-05-12T17:31:43+03:00",
            "image": "http:\/\/test.leftjoin.ru\/pictures\/ga-query@2x.png",
            "_date_published_rfc2822": "Tue, 03 Dec 2019 10:55:11 +0300",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "20",
            "_e2_data": {
                "is_favourite": false,
                "links_required": [
                    "system\/library\/highlight\/highlight.js",
                    "system\/library\/highlight\/highlight.css",
                    "system\/library\/highlight\/highlight.js",
                    "system\/library\/highlight\/highlight.css",
                    "system\/library\/highlight\/highlight.js",
                    "system\/library\/highlight\/highlight.css"
                ],
                "og_images": [
                    "http:\/\/test.leftjoin.ru\/pictures\/ga-query@2x.png",
                    "http:\/\/test.leftjoin.ru\/pictures\/alert-table@2x.png",
                    "http:\/\/test.leftjoin.ru\/pictures\/refresh-schedule@2x.png",
                    "http:\/\/test.leftjoin.ru\/pictures\/refresh-10@2x.png",
                    "http:\/\/test.leftjoin.ru\/pictures\/target-value@2x.png"
                ]
            }
        }
    ],
    "_e2_version": 3365,
    "_e2_ua_string": "E2 (v3365; Aegea)"
}