Адрес фактического центра электронной коммерции SpringBoot (40k+star):GitHub.com/macro-positive/…
Резюме
Система сбора журналов ELK, которую мы создали ранее, в основном используется для сбора журналов приложений SpringBoot. Принцип заключается в том, что приложение использует плагин Logstash для передачи логов в Logstash по TCP, чтобы сохранить их в Elasticsearch. Но есть много журналов промежуточного ПО, которые хранятся непосредственно в файлах, таких какNginx
,Elasticsearch
иMySQL
, в настоящее время нам нужен портер для переноса журнала в Elasticsearch. Filebeat является таким портером журнала. В этой статье подробно будет представлен метод его использования, в надежде помочь всем.
Введение в Filebeat
Filebeat — это облегченный сборщик журналов, который можно использовать для пересылки и объединения журналов и файлов. Filebeat имеет множество встроенных модулей (Nginx, MySQL, Redis, Elasticsearch, Logstash и т. д.), которые могут значительно упростить процесс сбора, анализа и визуализации для распространенных форматов журналов с помощью всего одной команды.
Установка и настройка Filebeat
Перед установкой Filebeat нам нужно сначала установить Elasticsearch и Kibana для конкретной справки."Вы все равно ходите на сервер собирать логи, разве не восхитительно настроить систему сбора логов! 》, обратите внимание на использование версии 7.6.2.
- Давайте сначала загрузим установочный пакет Filebeat, адрес загрузки:woohoo.elastic.co/capable/download…
- После завершения загрузки извлеките его в указанную директорию, обратите внимание на три места, указанные на рисунке;
- Kibana уже предоставила учебник для Filebeat по сбору различных журналов.Давайте сначала перейдем на домашнюю страницу и посетим адрес:http://localhost:5601/app/kibana#/home
- нажмите
Add log data
кнопку, вы можете обнаружить, что поддерживаемое промежуточное программное обеспечение по-прежнему очень богато, охватывая распространенные;
- Нажмите на учебник по сбору журналов Nginx, чтобы увидеть, очень ли он подробный;
- Далее мы приступим к настройке Filebeat, настроим адреса подключения Elasticsearch и Kibana и изменим файлы конфигурации в каталоге установки Filebeat.
filebeat.yml
Вот и все, модификации следующие.
output.elasticsearch:
hosts: ["localhost:9200"]
setup.kibana:
host: "localhost:5601"
Собирать журналы Nginx
Давайте используем Nginx, чтобы попрактиковаться и испытать функцию сбора журналов Filebeat.
- Используйте следующую команду, чтобы открыть модуль сбора журналов Nginx в Filebeat;
filebeat modules enable nginx
- После открытия введите
modules.d
каталог, вы найдетеnginx.yml
изdisable
Если суффикс пропал, значит, он был включен;
- Изменить следующий
nginx.yml
файл, настроить Nginxaccess
иerror
путь журнала;
# Module: nginx
# Docs: https://www.elastic.co/guide/en/beats/filebeat/7.6/filebeat-module-nginx.html
- module: nginx
access:
enabled: true
var.paths: ["I:/developer/env/nginx-1.8.1/logs/access.log"]
error:
enabled: true
var.paths: ["I:/developer/env/nginx-1.8.1/logs/error.log"]
- Поскольку модуль сбора журналов Nginx включен, нам нужно настроить Filebeat с помощью следующих команд;
filebeat setup
- Запустите службу Filebeat с помощью следующей команды;
filebeat -e
- Мы можем проверить, были ли данные успешно собраны, через страницу руководства Nginx в Kibana, которую мы использовали ранее;
- нажмите
Nginx logs dashboard
кнопка для просмотра собранных журналов Nginx, сначала просмотрите обзорный журнал;
- Просмотрите подробный лог еще раз, и вам не придется идти на сервер, чтобы ловить логи Nginx!
Собирать логи Elasticsearch
Далее попробуем снова собрать журналы Elasticsearch.
- Используйте следующую команду, чтобы включить модуль сбора журналов Filebeat Elasticsearch;
filebeat modules enable elasticsearch
- Изменить следующий
elasticsearch.yml
Настроить, настроить путь журнала Elasticsearch;
# Module: elasticsearch
# Docs: https://www.elastic.co/guide/en/beats/filebeat/7.6/filebeat-module-elasticsearch.html
- module: elasticsearch
server:
enabled: true
var.paths: ["I:/developer/env/elasticsearch-7.6.2/logs/elasticsearch.log"]
slowlog:
enabled: true
var.paths: ["I:/developer/env/elasticsearch-7.6.2/logs/elasticsearch_index_indexing_slowlog.log","I:/developer/env/elasticsearch-7.6.2/logs/elasticsearch_index_search_slowlog.log"]
deprecation:
enabled: true
var.paths: ["I:/developer/env/elasticsearch-7.6.2/logs/elasticsearch_deprecation.log"]
- Настроить и запустить сервис Filebeat;
filebeat setup
filebeat -e
- существует
Discover
Просмотрите журналы Elasticsearch на странице.
Собирать логи MySQL
Затем попробуйте собрать журналы MySQL.
- Используйте следующую команду, чтобы открыть модуль сбора журналов MySQL в Filebeat;
filebeat modules enable mysql
- Изменить следующий
mysql.yml
Настройте, настройте путь журнала MySQL, в основном журнал ошибок и журнал медленных запросов;
# Module: mysql
# Docs: https://www.elastic.co/guide/en/beats/filebeat/7.6/filebeat-module-mysql.html
- module: mysql
error:
enabled: true
var.paths: ["C:/ProgramData/MySQL/MySQL Server 5.7/Data/DESKTOP-5NIMJ19.err"]
slowlog:
enabled: true
var.paths: ["C:/ProgramData/MySQL/MySQL Server 5.7/Data/DESKTOP-5NIMJ19-slow.log"]
- Настроить и запустить сервис Filebeat;
filebeat setup
filebeat -e
- нажмите
MySQL logs dashboard
кнопка для просмотра собранных логов MySQL;
- Просмотр сведений журнала, собранных MySQL.
Суммировать
В этой статье в основном рассказывается об использовании Filebeat для сбора файловых журналов Nginx, Elasticsearch и MySQL. Использование сбора журналов другого промежуточного программного обеспечения в основном такое же. Удобно ли использовать Filebeat для сбора журналов промежуточного программного обеспечения!
Эта статьяGitHubGitHub.com/macro-positive/…Он был записан, приветствую всех на Star!