Как я могу выполнить агрегацию по сценарию в Kibana + Elasticsearch?

Допустим, у меня есть журнал событий показов рекламы и кликов по рекламе, хранящийся через Logstash в Elasticsearch и отображаемый в Kibana 4. Я хотел бы рассчитать простую метрику, такую ​​​​как CTR (Click-Through-Rate) событий, а именно:

CTR = #clicks/#displays.

Прежде всего, кто-нибудь знает, возможно ли это сделать в Elasticsearch + Kibana? Я не вижу возможности сделать это в Кибане. Я думал сделать это в необработанном Elasticsearch с помощью объединение по сценарию. Но я не знаю, как это определить в Кибане.

Любые идеи о том, как это сделать, будут очень кстати! Комментарии, объясняющие, что это невозможно сделать, также были бы ценны.


person zarzyk    schedule 20.03.2015    source источник
comment
ты получил решение для этого. Я пытаюсь разделить то же, что и вы, но получаю ошибку.   -  person pavan    schedule 03.07.2016


Ответы (2)


Kibana 4 включает поддержку сценариев Elasticsearch. Вы можете перейти в «Настройки» > «Показатели» (выберите свой шаблон) > «Поля со сценарием» и добавить новое поле со сценарием, которое вычисляет ваш CTR. Взгляните на "поля со сценариями" на эластичный блог для получения дополнительной информации.

person Guido    schedule 05.06.2015

Мне нужно было сделать что-то подобное для клиента, но я не смог сделать это с помощью скриптовых полей, потому что мне нужно было суммировать все значения для каждой агрегации. В итоге я разработал пользовательскую визуализацию (плагин). Это было для Kibana 4.1 и 4.5.1.

Дайте мне знать, если это то, что вы ищете, или если вы хотите попробовать сами, я могу дать вам несколько советов.

person JuanCarniglia    schedule 04.08.2016
comment
Привет, хотел бы получить некоторые указатели на то, как вы это сделали. Я пытаюсь сделать для расчета этого: для каждого ведра => сумма (поле A)/сумма (поле B) - person blinduck; 25.08.2016
comment
Я разработал пользовательский вид. Посмотрите несколько примеров на моем github. Другой вариант - использовать TimeLion (хотя я его не пробовал). - person JuanCarniglia; 27.08.2016
comment
Я пошел с Timelion, это было отличное решение этой проблемы. - person blinduck; 29.08.2016