ProCloud Yandex
22.06.2023
читать 8 минут

Сбор и анализ логов с Fluentd

/upload/iblock/68b/fzkgzs3tmk3ferpwi14lilyricafwewy/fluentd.jpeg

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

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

Общая информация

ПО Fluentd считается одним из наиболее популярных сегодня. Оно появилось в 2011 году. При написании программы использовался код Ruby. Софт динамично развивается, постоянно появляются новые версии. Им пользуются многие крупные корпорации, которые работают почти по всему миру.

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

  • низкие требования к железу;
  • универсальный формат логирования;
  • простая архитектура;
  • возможность интегрировать в другие языки программирования.

Данная программа распространяется по лицензии Apache 2.0. На официальном сайте есть вся необходимая информация об этом софте. Также ее можно найти на тематических порталах.

Установка

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

$ wget http://packages.treasuredata.com/2/ubuntu/trusty/pool/contrib/t/td-agent/td-agent_2.0.4-0_amd64.deb $ sudo dpkg -i td-agent_2.0.4-0_amd64.deb

После завершения установки запустим софт:

$ /etc/init.d/td-agent restart

Конфигурирование

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

Чтобы анализ логов сервера происходил правильно, необходимо задать настройки. Они состоят из нескольких блоков:

  • source – источник;
  • match – куда требуется передавать информацию;
  • include – тип файлов;
  • system – настройки системы.

Стоит рассмотреть особенности настроек данного софта подробнее.

Source: откуда брать данные

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

Полную информацию можно прочитать на официальном сайте.

Важно. Для корректной работы требуется использовать плагины. Допускается одновременное применение плагинов для приема http-сообщений и TCP пакетов.

Match: что делать с данными

После того, как программа приняла логи, она их должна анализировать, чтобы понимать, что именно с ними делать дальше. Стандартные плагины вывода – match и forward.

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

Include: объединяем конфигурационные файлы

В блоке include программа позволяет переносить информацию между конфигурационными файлами, а также объединять ее. Допускается указание пути к одному или сразу к нескольким файлам. Для этого нужно указать маску или URL.

System: устанавливаем дополнительные настройки

Здесь системный администратор может задать дополнительные настройки. Так, допускается задать уровень логирования, возможность удалять повторяющиеся логи и так далее.

Поддерживаемые типы данных

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

  • строка;
  • целое число;
  • число с плавающей точкой;
  • размер файла;
  • временной показатель;
  • массивы и объекты JSON.

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

Плагины Fluentd: расширяем возможности

Сегодня используется 5 типов плагинов: ввода, вывода, буферизации, форм и парсинга. Стоит подробнее рассмотреть их особенности.

Плагины ввода

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

Плагины вывода

К таким можно отнести следующее:

  • плагины без буферизации, которые сразу прописывают сведения и не занимают места в буфере;
  • с буферизацией, которые разделяют события на различные группы и осуществляют запись по очереди (здесь есть несколько возможностей настройки лимитов – по количеству событий, посещений);
  • с разделением по времени – это подвид второго вида плагинов, который работает исключительно по временной шкале.

Можно использовать одновременно несколько плагинов в проекте.

Плагины буферизации

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

Плагины форматирования

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

Плагины парсинга

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

Важно. Невозможно описать все плагины fluentd в одной статье. Данную информацию можно найти в Интернете. Лучше использовать официальный сайт, чтобы получить список всех доступных на текущий момент плагинов. К ним относятся docker fluentd, и многие другие.

Общие параметры для всех плагинов

Каждый плагин имеет определенные параметры, которые актуальны для всех. К ним относятся:

  • тип;
  • id;
  • уровень логирования.

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

Вывод данных и интеграция с другими решениями

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

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

Список сервисов постоянно расширяется, поэтому актуальную информацию можно получить только на официальном портале. Также там есть инструкции по использованию софта с другим ПО.

Заключение

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

Новости
13 сентября 202413.09.2024
читать 2 минутычитать 2 мин
Дайджест обновлений продуктов
18 апреля 202418.04.2024
читать 2 минутычитать 2 мин
Дайджест обновлений продуктов Q1
5 апреля 202405.04.2024
читать 1 минутучитать 1 мин
ProCloud CPO Диана Беда в рейтинге ИТ-лидеров от Global CIO