Как использовать инструментальные панели и визуализации Kibana

Вступление

Kibana 4 - это платформа для аналитики и визуализации, основанная на Elasticsearch, чтобы дать вам лучшее понимание ваших данных. В этом руководстве мы познакомим вас с Kibana и покажем, как использовать его интерфейс для фильтрации и визуализации сообщений журнала, собранных в стеке Elasticsearch ELK. Мы рассмотрим основные компоненты интерфейса и покажем, как создавать поисковые запросы, визуализации и информационные панели.

Предпосылки

Это руководство является третьей частью серии * Централизованное ведение журнала с Logstash и Kibana *.

Предполагается, что у вас есть рабочая настройка ELK. В примерах предполагается, что вы собираете системные журналы и журналы доступа Nginx. Если вы не собираете журналы такого типа, вы сможете изменить демонстрации для работы с собственными сообщениями журнала.

Если вы хотите точно следовать представленному руководству, выполните следующие настройки, выполнив первые два руководства из этой серии:

Когда вы будете готовы двигаться дальше, давайте посмотрим на обзор интерфейса Kibana.

Обзор интерфейса Kibana

Интерфейс Kibana разделен на четыре основных раздела:

  • Обнаружить

  • Визуализируйте

  • Приборная доска

  • настройки

Мы рассмотрим основы каждого раздела в указанном порядке и продемонстрируем, как можно использовать каждый элемент интерфейса.

Кибана Откройте для себя

При первом подключении к Kibana 4 вы попадете на страницу «Обнаружение». По умолчанию на этой странице отображаются все последние полученные журналы стека ELK. Здесь вы можете отфильтровать и найти определенные сообщения журнала на основе * поисковых запросов *, а затем сузить результаты поиска до определенного временного диапазона с помощью * фильтра времени *.

Вот разбивка элементов интерфейса Kibana Discover:

  • * Панель поиска: * Прямо под главным меню навигации. Используйте это для поиска определенных полей и / или целых сообщений

  • * Фильтр времени: * Вверху справа (значок часов). Используйте это для фильтрации журналов по различным относительным и абсолютным временным диапазонам

  • * Поле выбора: * Слева, под строкой поиска. Выберите поля, чтобы изменить, какие из них отображаются в Log View

  • * Гистограмма даты: * Гистограмма под строкой поиска. По умолчанию отображается количество всех журналов в зависимости от времени (по оси X), сопоставленных с помощью фильтра поиска и времени. Вы можете нажимать на столбцы или перетаскивать, чтобы сузить временной фильтр

  • * Просмотр журнала: * Внизу справа. Используйте это для просмотра отдельных сообщений журнала и отображения данных журнала, отфильтрованных по fields. Если поля не выбраны, отображаются все сообщения журнала

Эта анимация демонстрирует некоторые из основных функций страницы Discover:

изображение: https: //assets.digitalocean.com/articles/elk/kibana/1-discover.gif [Как использовать Kibana Discover]

Вот пошаговое описание того, что выполняется:

  1. Выбрано поле «Тип», которое ограничивает то, что отображается для каждой записи журнала (справа внизу) - по умолчанию отображается все сообщение журнала.

  2. Поиск + type:" nginx-access "+, который соответствует только журналам доступа Nginx

  3. Расширен новейший журнал доступа Nginx, чтобы рассмотреть его более подробно

Обратите внимание, что результаты ограничены «Последние 15 минут». Если вы не получаете никаких результатов, убедитесь, что в указанный период времени были созданы журналы, соответствующие вашему поисковому запросу.

Сообщения журнала, которые собираются и фильтруются, зависят от ваших конфигураций Logstash и Logstash Forwarder. В нашем примере мы собираем журналы доступа syslog и Nginx и фильтруем их по «типу». Если вы собираете сообщения журнала, но не фильтруете данные в отдельные поля, запрос к ним будет более сложным, поскольку вы не сможете запрашивать определенные поля.

Синтаксис поиска

Поиск обеспечивает простой и эффективный способ выбора определенного набора сообщений журнала. Синтаксис поиска довольно понятен и допускает логические операторы, подстановочные знаки и фильтрацию полей. Например, если вы хотите найти журналы доступа Nginx, созданные пользователями Google Chrome, вы можете выполнить поиск + type:" nginx-access "AND agent:" chrome "+. Вы также можете выполнять поиск по определенным узлам или диапазонам IP-адресов клиентов или любым другим данным, содержащимся в ваших журналах.

Создав поисковый запрос, который вы хотите сохранить, вы можете сделать это, щелкнув значок * Сохранить поиск *, а затем кнопку * Сохранить *, как показано в этой анимации:

изображение: https: //assets.digitalocean.com/articles/elk/kibana/2-save-search.gif [Как сохранить поиск в Кибане]

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

Мы сохраним поиск + type:" nginx-access "+ как "type nginx access" и используем его для создания визуализации.

Кибана визуализировать

На странице визуализации Kibana вы можете создавать, изменять и просматривать свои собственные визуализации. Существует несколько различных типов визуализаций: от Vertical bar и Pie диаграмм до Tile maps (для отображения данных на карте) и Data tables. Визуализациями также можно поделиться с другими пользователями, которые имеют доступ к вашему экземпляру Kibana.

Если вы впервые используете визуализации Kibana, вы должны перезагрузить список полей, прежде чем продолжить. Инструкции для этого приведены в подразделе * Обновить данные поля *, расположенном по адресу Kibana. Настройки раздел.

Создать вертикальную гистограмму

Чтобы создать визуализацию, сначала щелкните элемент меню * Визуализация *.

Решите, какой тип визуализации вы хотите, и выберите его. Мы создадим * вертикальную гистограмму *, которая является хорошей отправной точкой.

Теперь вы должны выбрать источник поиска. Вы можете создать новый поиск или использовать сохраненный поиск. Мы пойдем с последним методом и выберем * type nginx access * search, который мы создали ранее.

Сначала график предварительного просмотра с правой стороны будет представлять собой сплошную полосу (при условии, что в результате поиска были найдены сообщения журнала), поскольку он состоит только из оси Y «Count». То есть он просто отображает количество журналов, которые были найдены по указанному поисковому запросу.

Чтобы сделать визуализацию более полезной, давайте добавим к ней новые * корзины *.

Сначала добавьте сегмент * X-axis *, затем щелкните раскрывающееся меню * Aggregation * и выберите «Гистограмма даты». Если вы нажмете кнопку * Применить *, одиночная полоса разделится на несколько полос вдоль оси X. Теперь счетчик отображается в виде нескольких столбцов, разделенных на интервалы времени (которые можно изменить, выбрав интервал из раскрывающегося списка) - аналогично тому, что вы увидите на странице «Обнаружение».

Если мы хотим сделать график немного более интересным, мы можем нажать кнопку * Add Sub Aggregation *. Выберите тип ковша * Split Bars *. Щелкните раскрывающееся меню * Sub Aggregation * и выберите «Значимые условия», затем щелкните раскрывающееся меню * Field * и выберите «clientip.raw», затем щелкните поле * Size * и введите «10». Нажмите кнопку * Применить *, чтобы создать новый график.

Вот скриншот того, что вы должны увидеть на этом этапе:

изображение: https: //assets.digitalocean.com/articles/elk/kibana/visualize-nginx-access.png [Настройки визуализации Kibana]

Если визуализируемые журналы были сгенерированы несколькими IP-адресами (т.е. к вашему сайту обращаются несколько человек), вы увидите, что каждая полоса будет разделена на цветные сегменты. Каждый цветной сегмент представляет количество журналов, сгенерированных по определенному IP-адресу (т.е. конкретного посетителя вашего сайта), и на графике будет отображаться до 10 различных сегментов (из-за настройки размера). Вы можете навести курсор мыши и щелкнуть любой из элементов на графике, чтобы перейти к конкретным сообщениям журнала.

Когда вы будете готовы сохранить визуализацию, щелкните значок * Сохранить визуализацию * рядом с верхом, затем назовите его и нажмите кнопку * Сохранить *.

Создать другую визуализацию

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

Например, вы можете создать круговую диаграмму из ваших 5 самых популярных типов журналов. Для этого нажмите * Визуализировать , затем выберите * Круговая диаграмма *. Затем используйте * новый поиск * и оставьте поиск как «» (т.е. все ваши логи). Затем выберите * Split Slices * bucket. Щелкните раскрывающийся список * Aggregation * и выберите «Значимые условия», щелкните раскрывающийся список * Field * и выберите «type.raw», затем щелкните поле * Size * и введите «5». Теперь нажмите кнопку * Применить * и сохраните визуализацию как «Топ 5».

Вот скриншот настроек, которые были только что описаны:

изображение: https: //assets.digitalocean.com/articles/elk/kibana/pie-settings.png [Настройки круговой диаграммы]

Поскольку в нашем примере мы собираем только системные журналы и журналы доступа Nginx, на круговой диаграмме будет только два среза.

Когда вы закончите создавать визуализации, давайте перейдем к созданию панели управления Kibana.

Kibana Dashboard

На странице панели инструментов Kibana вы можете создавать, изменять и просматривать свои собственные панели мониторинга. С помощью панели мониторинга вы можете объединить несколько визуализаций на одной странице, а затем отфильтровать их, предоставив поисковый запрос или выбрав фильтры, щелкнув элементы в визуализации. Панели мониторинга полезны, когда вы хотите получить обзор ваших журналов и сделать корреляции между различными визуализациями и журналами.

Создать панель инструментов

Чтобы создать панель управления Kibana, сначала щелкните элемент меню * Dashboard *.

Если вы ранее не создавали панель мониторинга, вы увидите в основном пустую страницу с надписью «Готовы начать?». Если вы не видите этот экран (т.е. на панели инструментов уже есть визуализации), нажмите на значок * Новая панель инструментов * (справа от панели поиска), чтобы попасть туда.

Эта анимация демонстрирует, как можно добавить визуализации на панель инструментов:

изображение: https: //assets.digitalocean.com/articles/elk/kibana/5-create-dashboard.gif [Создать панель управления Kibana]

Вот разбивка шагов, которые выполняются:

  1. Нажмите Добавить значок визуализации

  2. Добавлена ​​круговая диаграмма «Log Count» и гистограмма «Nginx: 10 лучших IP-адресов клиентов»

  3. Свернуто Добавить меню визуализации

  4. Переупорядочил и изменил размеры визуализаций на приборной панели

  5. Щелкните значок Save Dashboard

Выберите имя для своей панели инструментов перед сохранением.

Это должно дать вам хорошее представление о том, как создать панель управления. Идите вперед и создайте любые информационные панели, которые, по вашему мнению, могут вам понадобиться. Далее мы рассмотрим использование инструментальных панелей.

Использовать панель инструментов

Панели мониторинга можно отфильтровать, введя поисковый запрос, изменив временной фильтр или щелкнув элементы в визуализации.

Например, если вы щелкнете по определенному цветному сегменту в гистограмме, Kibana позволит вам отфильтровать значимый термин, который представляет сегмент. Вот пример скриншота применения фильтра к панели инструментов:

изображение: https: //assets.digitalocean.com/articles/elk/kibana/filter-dashboard.png [Фильтровать панель инструментов]

Не забудьте нажать кнопку * Применить сейчас *, чтобы отфильтровать результаты и перерисовать визуализации панели управления. Фильтры могут быть применены и удалены по мере необходимости.

Фильтры поиска и времени работают так же, как и на странице «Обнаружение», за исключением того, что они применяются только к подмножествам данных, представленным на панели мониторинга.

Настройки Кибана

Страница «Настройки Kibana» позволяет вам изменять различные параметры, такие как значения по умолчанию или шаблоны индексов. В этом уроке мы будем просты и сосредоточимся на разделах * Indices * и * Objects *.

Перезагрузить данные поля

Когда вы добавляете новые поля в свои данные Logstash, например, если вы добавите фильтр для нового типа журнала, вам может потребоваться перезагрузить список полей. Необходимо перезагрузить список полей, если вы не можете найти отфильтрованные поля в Kibana, так как эти данные кэшируются только периодически.

Для этого щелкните пункт меню * Настройки *, затем нажмите «logstash- *» (в разделе * Шаблоны указателей *):

изображение: https: //assets.digitalocean.com/articles/elk/kibana/reload-field-list.png [Обновить список полей]

Затем нажмите желтую кнопку * Обновить список полей *. Нажмите кнопку * OK * для подтверждения.

Редактировать сохраненные объекты

Раздел «Объекты» позволяет редактировать, просматривать и удалять любые сохраненные панели мониторинга, поиски и визуализации.

Чтобы попасть туда, нажмите на пункт меню * Настройки *, затем подменю * Объекты *.

Здесь вы можете выбрать из вкладок, чтобы найти объекты, которые вы хотите редактировать, просматривать или удалять:

изображение: https: //assets.digitalocean.com/articles/elk/kibana/settings-objects.png [Редактировать сохраненные объекты]

На скриншоте мы выбрали дубликат визуализации. Его можно отредактировать, просмотреть или удалить, нажав соответствующую кнопку.

Заключение

Если вы следовали этому руководству, у вас должно быть хорошее понимание того, как использовать Kibana 4. Вы должны знать, как искать сообщения журнала и создавать визуализации и информационные панели.

Обязательно ознакомьтесь со следующим учебником из этой серии, https://www.digitalocean.com/community/tutorials/how-to-map-user-location-with-geoip-and-elk-elasticsearch-logstash-and- kibana [Как сопоставить местоположение пользователя с GeoIP и ELK]

Если у вас есть какие-либо вопросы или предложения, пожалуйста, оставьте комментарий!