Недавно я рассказывал о нашем опыте подружить webitel с elasticsearch. И вот мы запустили в тестовом режиме сервис аналитики по звонкам для всех пользователей webitel on-demand. В основе все та же связка elasticsearch и kibana. Сегодня я хочу более подробней рассказать, что это такое.
Пройдя авторизацию (все данные можете запросить у поддержки), для Вас открывается простой Dashboard
:
На нем Вы увидите общее количество звонков, звонки по направлениям, топ 5 пользователей, параметры длительности — простые вещи, которые могут послужить примером для дальнейших более сложных вещей.
Но, давайте для начало несколько слов о верхнем меню в Kibana
:
- Discover — здесь самый допытливый пользователь найдет полный список JSON документов, которые мы перенесли из статистики в elasticsearch.
- Visualize — это конструктор для построения визуализации. О нем стоит рассказать более подробно, что я и сделаю ниже.
- Dashboard — а это доска, на которой мы размещаем всю нужную визуализацию.
Visualize
Построим какой-то красивый график… к примеру, кто из сотрудников сколько совершает звонков. Для этого нам нужно знать, какие переменные из статистики использовать. В JSON документах присутствуют все переменные канала из FreeSWITCH
, для удобства, часть мы вынесли и описали. Для нашего графика понадобится User ID
.
Я выберу вертикальный график:
/kovalyshyn.pp.ua/wp-content/uploads/2015/08/graph_Y.png» alt=»Y» />
То, что будет творится внутри графика, называется агрегация, и мы выбираем поле User ID
. Ограничим наш выбор TOP 5:
Теперь нажимаем зеленый треугольник и любуемся:
Упс-с, ничего! Здесь — вопрос во временном фильтре. По умолчанию он установлен на последние 15 минут, давайте расширим на последние 7 дней:
Обновляем график:
Сохраним визуализацию:
Давайте еще создадим что-то посложнее 🙂 В этот раз выберу я Area Chart и создам вот такую визуализацию:
- Устанавливаю фильтр
Bridged: false
— это означает, что соединение не произошло. - Первая агрегация по дате — тут все понятно.
- Следующая — по диапазонам, длительность звонка от 0 до 30 сек, от 30 до 60 и дольше 60 секунд.
- И третья агрегация — по направлениям звонка.
Что показывает этот график? Количество звонков без соединения в разрезе направлений и сколько времени был в ожидание.
Dashboard
А теперь вынесем все эти графики на новый Dashboard
:
Добавим созданные нами визуализации и сохраним dashboard:
Прелесть Dashboard в том, что фильтрация общая для всех графиков.
Что же, теперь Ваша очередь создавать интересные графики — инструмент для этого мы уже Вам предоставили 😉