Как просмотреть строки журнала в группе / сеансе в пользовательском интерфейсе Discover Kibana? - PullRequest
0 голосов
/ 05 ноября 2018

Я использую elasticsearch + kibana + logstash + filebeat последний 6.4.1 для сбора и анализа веб-журналов. Столбцы моего журнала похожи:

timestamp, http_method, request_uri, http_status, host, user_agent, client_ip, client_port

Я настроил ELK для показа моих логов в Кибане. Но теперь я хочу видеть свои логи в сессиях. Я надеюсь, что строки журнала могут быть сгруппированы по сеансам и показаны на странице Discover Кибаны. В моем сценарии строки журнала с одинаковым (host, client_ip) принадлежат одному сеансу.

Я надеюсь, что пользовательский интерфейс Discover с сеансом / группировкой может показать все сеансы. И я все еще вижу строки журнала внутри одного сеанса, когда нажимаю на него.

Возможно ли это сделать? Или как лучше это сделать? Спасибо.

Ответы [ 2 ]

0 голосов
/ 08 ноября 2018

как подсказал @sleepyhead, Discover не для цели, которую вы ищете. Вы можете создать Datatable из Visualize в Kibana (что, я думаю, вы уже сделали).

Далее, в разделе Совокупности сегментов вы можете выбрать Разделенные строки и перейти к Terms Агрегации. Выберите желаемое поле (хост) там. Затем добавьте вложенное ведро и снова выберите Разделить строки , затем Terms Агрегирование и выберите другое поле (client_ip).

Это создаст одну строку в вашей таблице данных для каждого уникального набора обоих полей (host, client_ip), что вам и нужно, насколько я понял ваш вопрос и комментарий.

По умолчанию будет только один столбец (Количество), но, очевидно, вы можете добавить больше столбцов, добавив Метрические агрегаты .

0 голосов
/ 05 ноября 2018

Discover показывает записи журнала в виде необработанных документов по мере их сохранения, вы можете сохранить поиск в Discover, даже не фильтруя ничего. С помощью Vizualize вы можете создавать виджеты, которые могут объединять данные, такие как сеансы. Я обычно делаю один или два «визуальных компоновщика» для временных шкал и таблицу данных для (request_uri, host, user_agent, client_ip) и круговую диаграмму для http_status. С помощью этих визуальных элементов вы можете создать панель инструментов и включить результаты поиска из обнаружения. На этой панели инструментов вы можете искать и фильтровать, и если вы добавите поиск из обнаружения, на панели инструментов будут показаны необработанные данные для каждого из них. Я использую Discover только после добавления новых индексов.

https://www.elastic.co/guide/en/kibana/current/visualize.html

https://www.elastic.co/guide/en/kibana/current/dashboard.html

Если вы действительно хотите, чтобы индекс содержал host / client_ip в качестве агрегата, вы должны сгруппировать данные, прежде чем сохранять их вasticsearch. Панель инструментов звучит как лучшая идея.

РЕДАКТИРОВАТЬ: Как описал Валид Али, визуализация может выглядеть следующим образом

enter image description here

...