Log Бык - это система сбора логов с акцентом на простоту использования. Она может быть развернута с помощью .sh скрипта, через Docker и через Docker Compose. Проект полностью с открытым исходным кодом под лицензией Apache 2.0.Log Бык - это система сбора логов с акцентом на простоту использования. Она может быть развернута с помощью .sh скрипта, через Docker и через Docker Compose. Проект полностью с открытым исходным кодом под лицензией Apache 2.0.

ELK, Loki и Graylog были избыточны, поэтому я создал Log Bull

2025/10/16 23:31
5м. чтение
Для обратной связи или замечаний по поводу данного контента, свяжитесь с нами по адресу crypto.news@mexc.com

Около пяти лет я сталкивался с задачей сбора логов, обычно из малых и средних кодовых баз. Отправка логов из кода не проблема: Java и Go имеют библиотеки для этого практически из коробки. Но развертывание чего-то для их сбора - это головная боль. Я понимаю, что это решаемая задача (даже до ChatGPT, а теперь тем более). Тем не менее, все системы логирования в первую очередь ориентированы на мир крупных предприятий и их требования, а не на маленькие команды или отдельных разработчиков с несколькими палками, клеем и дедлайном "вчера".

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

Поэтому около года назад я решил создать свою собственную систему сбора логов. Такую, которая была бы максимально проста в использовании и запуске. Она развертывалась бы на сервере одной командой, без какой-либо конфигурации или ненужных вкладок в интерфейсе. Так появился Log Bull, и теперь он с открытым исходным кодом: система сбора логов для разработчиков со средними проектами.

Содержание:

  • О проекте
  • Как развернуть Log Bull?
  • Как отправлять логи?
  • Как просматривать логи?
  • Заключение

О проекте

Log Bull - это система сбора логов с акцентом на простоту использования (минимальная конфигурация, минимум функций, нулевая конфигурация при запуске). Проект полностью с открытым исходным кодом под лицензией Apache 2.0. Моим главным приоритетом было создать решение, которое позволило бы младшему разработчику легко разобраться, как запустить систему, как отправлять в нее логи и как их просматривать примерно за 15 минут.

Ключевые особенности проекта:

  • Развертывается одной командой через .sh скрипт или Docker команду.
  • Вы можете создавать несколько изолированных проектов для сбора логов (и добавлять к ним пользователей).
  • Чрезвычайно простой интерфейс с минимальной конфигурацией, и вообще без необходимости конфигурации при запуске (zero-config).
  • Библиотеки для Python, Java, Go, JavaScript (TS \ NodeJS), PHP, C#. Планируются Rust и Ruby.
  • Бесплатный, с открытым исходным кодом и самостоятельным хостингом.
  • Нет необходимости знать LogQL, Kibana DSL или другие языки запросов для поиска логов.

https://www.youtube.com/watch?v=8H8jF8nVzJE&embedable=true

Проект разработан на Go и построен на OpenSearch.

Веб-сайт проекта - https://logbull.com

GitHub проекта - https://github.com/logbull/logbull

P.S. Если вы найдете проект полезным и у вас есть аккаунт GitHub, пожалуйста, поставьте ему звезду ⭐️. Первые звезды собирать сложно. Я был бы крайне благодарен за вашу поддержку!

Как развернуть Log Bull?

Есть три способа развернуть проект: через .sh скрипт (что я рекомендую), через Docker и через Docker Compose.

Метод 1: Установка через скрипт

Скрипт установит Docker, разместит проект в папке /opt/logbull и настроит автозапуск при перезагрузке системы. Команда установки:

sudo apt-get install -y curl && \ sudo curl -sSL https://raw.githubusercontent.com/logbull/logbull/main/install-logbull.sh \ | sudo bash 

Метод 2: Запуск через Docker Compose

Создайте файл docker-compose.yml со следующим содержимым:

services:   logbull:     container_name: logbull     image: logbull/logbull:latest     ports:       - "4005:4005"     volumes:       - ./logbull-/logbull-data     restart: unless-stopped     healthcheck:       test: ["CMD", "curl", "-f", "http://localhost:4005/api/v1/system/health"]       interval: 5s       timeout: 5s       retries: 30 

И выполните команду docker compose up -d. Система запустится на порту 4005.

Метод 3: Запуск через Docker команду

Выполните следующую команду в терминале (система также запустится на порту 4005):

docker run -d \   --name logbull \   -p 4005:4005 \   -v ./logbull-/logbull-data \   --restart unless-stopped \   --health-cmd="curl -f http://localhost:4005/api/v1/system/health || exit 1" \   --health-interval=5s \   --health-retries=30 \   logbull/logbull:latest 

Как отправлять логи?

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

Я настоятельно рекомендую ознакомиться с примерами на веб-сайте, потому что там есть интерактивная панель для выбора языка:

Code examples picler

Возьмем Python в качестве примера. Сначала вам нужно установить библиотеку (хотя вы также можете отправлять через HTTP; есть примеры для cURL):

pip install logbull 

Затем отправляйте из кода:

import time from logbull import LogBullLogger  # Initialize logger logger = LogBullLogger(     host="http://LOGBULL_HOST",     project_id="LOGBULL_PROJECT_ID", )  # Log messages (printed to console AND sent to LogBull) logger.info("User logged in successfully", fields={     "user_id": "12345",     "username": "john_doe",     "ip": "192.168.1.100" })  # With context session_logger = logger.with_context({     "session_id": "sess_abc123",     "user_id": "user_456" })  session_logger.info("Processing request", fields={     "action": "purchase" })  # Ensure all logs are sent before exiting logger.flush() time.sleep(5) 

Как просматривать логи?

Все логи отображаются сразу на главном экране. Вы можете:

  • Уменьшить размер сообщений (обрезав строку до ~50-100 символов).

  • Развернуть список отправленных полей (user_id, order_id и т.д.).

  • Нажать на поле и добавить его в фильтр. Поиск логов с условиями:

    Logs search with conditions

    Regular logs view

    Viewing messages text only (you can cut extra fields):

Вы также можете собирать группы условий (например, сообщение включает определенный текст, но исключает конкретный IP-адрес сервера).

Заключение

Я надеюсь, что моя система сбора логов будет полезна тем разработчикам, которые не хотят или не могут (из-за ограниченных ресурсов проекта) реализовать "тяжеловесные" решения, такие как ELK. Я уже использую Log Bull в производственных проектах, и все идет хорошо. Я приветствую отзывы, предложения по улучшению и проблемы на GitHub.

Возможности рынка
Логотип OpenLedger
OpenLedger Курс (OPEN)
$0.18389
$0.18389$0.18389
+2.05%
USD
График цены OpenLedger (OPEN) в реальном времени
Отказ от ответственности: Статьи, размещенные на этом веб-сайте, взяты из общедоступных источников и предоставляются исключительно в информационных целях. Они не обязательно отражают точку зрения MEXC. Все права принадлежат первоисточникам. Если вы считаете, что какой-либо контент нарушает права третьих лиц, пожалуйста, обратитесь по адресу crypto.news@mexc.com для его удаления. MEXC не дает никаких гарантий в отношении точности, полноты или своевременности контента и не несет ответственности за любые действия, предпринятые на основе предоставленной информации. Контент не является финансовой, юридической или иной профессиональной консультацией и не должен рассматриваться как рекомендация или одобрение со стороны MEXC.

Вам также может быть интересно

Трейдеры Polymarket обвинены в инсайдерской торговле по ставке на США и Иран

Трейдеры Polymarket обвинены в инсайдерской торговле по ставке на США и Иран

Публикация «Трейдеры Polymarket обвиняются в инсайдерской торговле по ставке США-Иран» появилась на BitcoinEthereumNews.com. Три недавно созданных кошелька получили совокупную прибыль в размере 484 $,
Поделиться
BitcoinEthereumNews2026/04/09 07:31
Иран называет переговоры «неразумными» после предполагаемых нарушений США согласованных рамок

Иран называет переговоры «неразумными» после предполагаемых нарушений США согласованных рамок

Статья «Иран называет переговоры "неразумными" после предполагаемых нарушений согласованной структуры со стороны США» появилась на BitcoinEthereumNews.com. Иран еще больше усилил сомнения
Поделиться
BitcoinEthereumNews2026/04/09 07:43
Что произойдет с Биткоином и альткоинами, если между Ираном и США будет достигнуто постоянное прекращение огня?

Что произойдет с Биткоином и альткоинами, если между Ираном и США будет достигнуто постоянное прекращение огня?

Криптоаналитик Михаэль ван де Поппе оценил последние события вокруг Bitcoin и поделился уровнем, который необходимо удержать для роста. Продолжить чтение: What Would
Поделиться
Bitcoinsistemi2026/04/09 07:57

30 000$ в PRL + 15 000 USDT

30 000$ в PRL + 15 000 USDT30 000$ в PRL + 15 000 USDT

Вносите депозит и торгуйте PRL для роста наград!