Введение
Эффективное управление журналами критически важно для мониторинга и обслуживания приложений в современном мире, где всё вращается вокруг данных. OpenSearch, поисковая и аналитическая система с открытым исходным кодом, предлагает мощные возможности сбора и анализа журналов. Объединив её с FluentBit, лёгким инструментом для отправки журналов, мы можем отправлять журналы Python в OpenSearch для мониторинга и анализа в режиме реального времени. Это руководство поможет вам настроить эту мощную комбинацию.
Такая конфигурация полезна разработчикам и системным администраторам, которым необходимо отслеживать работу приложений Python в режиме реального времени. Отправляя отчёты из приложений Python в OpenSearch, вы можете анализировать отчёты, создавать информационные панели, настраивать оповещения и получать ценную информацию о производительности и поведении вашего приложения. Этот подход масштабируется и подходит как для небольших проектов, так и для крупномасштабных производственных сред.
Предпосылки
- Установлен Python: убедитесь, что на вашем сервере или локальной машине установлен Python.
- Кластер OpenSearch: вам необходим доступ к кластеру OpenSearch. Вы можете создать новый кластер или использовать существующий.
- FluentBit установлен: FluentBit должен быть установлен на сервере или машине, где будет запускаться ваша программа Python.
Шаг 1 — Установка Python
Сначала обновите репозиторий и установите Python. Выполните следующие команды:
sudo apt update
sudo apt install python3Чтобы проверить установку Python, выполните:
python3 --version
Шаг 2 — Настройка ведения журнала Python
Настройте программу Python для записи сообщений в файл. Вот базовая схема:
import logging
# Configure logging
logging.basicConfig(
filename='app.log',
level=logging.INFO,
format='%(asctime)s - %(levelname)s - %(message)s'
)
# Sample log message
logging.info('This is a test log message.')Эта конфигурация записывает сообщения журнала в app.log с меткой времени, уровнем журнала и форматом сообщения.
Шаг 3 — Создание кластера OpenSearch
Если у вас нет кластера OpenSearch, вы можете создать его с помощью инструмента командной строки DigitalOcean doctl. Выполните следующую команду:
doctl databases create opensearch-doks --engine opensearch --region your-region --size db-s-1vcpu-2gb --num-nodes 1
Измените регион на нужный. Вы также можете создать кластер вручную через панель управления DigitalOcean. Подробную информацию о том, как это сделать, см. в этом руководстве по созданию кластеров OpenSearch через панель управления.
Шаг 4 — Установка FluentBit
Чтобы установить FluentBit, используйте следующую команду:
curl https://raw.githubusercontent.com/fluent/fluent-bit/master/install.sh | sh
Шаг 5 — Настройка FluentBit
Создайте файл конфигурации fluent-bit.conf, чтобы определить, как Fluent Bit должен читать отчёты и отправлять их в OpenSearch. Вот пример конфигурации:
[SERVICE]
Flush 1
Daemon Off
Log_Level info
[INPUT]
Name tail
Path /path/to/your/log/file.log
Tag python_logs
Refresh_Interval 5
[OUTPUT]
Name opensearch
Match python_logs
Host your-opensearch-host
Port 25060
HTTP_User your-username
HTTP_Passwd your-password
Index your-index-name
tls On
Suppress_Type_Name On- Путь: укажите путь к вашему app.log.
- Хост: Замените на ваш хост OpenSearch.
- HTTP_User: Ваше имя пользователя OpenSearch.
- HTTP_Passwd: Ваш пароль OpenSearch.
- Индекс: Имя каталога, в котором хранятся журналы.
Шаг 6 — Запустите FluentBeat
Запустите FluentBit с файлом конфигурации:
/opt/fluent-bit/bin/fluent-bit -c fluent-bit.conf
Шаг 7 — Просмотр отчетов в OpenSearch
Чтобы убедиться, что отчёты поступают правильно, проверьте панель управления OpenSearch. Вы должны увидеть отчёты, отправленные FluentBeat.
Шаг 8 — Создайте шаблон индекса на панелях мониторинга OpenSearch
- Войдите в панель управления OpenSearch, используя свое имя пользователя и пароль.
- Откройте левое меню и в разделе «Управление» выберите «Управление индексами».
- В меню «Индексы» выберите «Создать индекс».
- Введите имя индекса, настройте другие необходимые параметры и нажмите «Создать».
Результат
Выполнив эти шаги, вы настроили систему для отправки журналов Python в OpenSearch с помощью Fluent Bit. Эта настройка позволяет эффективно управлять журналами и анализировать их, а также эффективно обслуживать и контролировать ваши приложения. OpenSearch и Fluent Bit предоставляют вам мощное решение для анализа и мониторинга журналов в реальном времени, разработанное для удовлетворения потребностей любого приложения на Python.









