Log Bull - це система збору логів з акцентом на простоту використання. Її можна розгорнути за допомогою .sh скрипту, через Docker та через Docker Compose. Проєкт є повністю відкритим кодом під ліцензією Apache 2.0.Log Bull - це система збору логів з акцентом на простоту використання. Її можна розгорнути за допомогою .sh скрипту, через Docker та через Docker Compose. Проєкт є повністю відкритим кодом під ліцензією Apache 2.0.

ELK, Loki та Graylog були надмірними, тому я створив Log Bull

2025/10/16 23:31

Протягом приблизно п'яти років я стикався із завданням збору логів, зазвичай із кодових баз малого та середнього розміру. Відправка логів з коду не є проблемою: Java та Go мають бібліотеки для цього практично з коробки. Але розгортання чогось для їх збору - це головний біль. Я розумію, що це вирішуване завдання (навіть до ChatGPT, а тепер тим більше). Проте всі системи логування в першу чергу орієнтовані на світ великих підприємств та їхні вимоги, а не на маленькі команди чи окремих розробників з кількома палицями, клеєм та дедлайном "на вчора".

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

Тож близько року тому я вирішив створити власну систему збору логів. Таку, яку максимально легко використовувати та запускати. Вона розгорталася б на сервері однією командою, без будь-яких налаштувань чи зайвих вкладок в інтерфейсі. Так з'явився Log Bull, і тепер він з відкритим кодом: система збору логів для розробників із проєктами середнього розміру.

Зміст:

  • Про проєкт
  • Як розгорнути Log Bull?
  • Як надсилати логи?
  • Як переглядати логи?
  • Висновок

Про проєкт

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

Ключові особливості проєкту:

  • Розгортається однією командою через .sh скрипт або команду Docker.
  • Можна створювати кілька ізольованих проєктів для збору логів (і додавати до них користувачів).
  • Надзвичайно простий інтерфейс з мінімальною конфігурацією, і взагалі без необхідності конфігурації при запуску (нульова конфігурація).
  • Бібліотеки для 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-data:/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-data:/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 символів).

  • Розгорнути список надісланих полів (userid, orderid тощо).

  • Клацнути на поле та додати його до фільтра. Пошук логів з умовами:

    Logs search with conditions

    Regular logs view

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

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

Висновок

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

Ринкові можливості
Логотип Elk Finance
Курс Elk Finance (ELK)
$0.01965
$0.01965$0.01965
0.00%
USD
Графік ціни Elk Finance (ELK) в реальному часі
Відмова від відповідальності: статті, опубліковані на цьому сайті, взяті з відкритих джерел і надаються виключно для інформаційних цілей. Вони не обов'язково відображають погляди MEXC. Всі права залишаються за авторами оригінальних статей. Якщо ви вважаєте, що будь-який контент порушує права третіх осіб, будь ласка, зверніться за адресою [email protected] для його видалення. MEXC не дає жодних гарантій щодо точності, повноти або своєчасності вмісту і не несе відповідальності за будь-які дії, вчинені на основі наданої інформації. Вміст не є фінансовою, юридичною або іншою професійною порадою і не повинен розглядатися як рекомендація або схвалення з боку MEXC.

Вам також може сподобатися

Реєстрація місця проживання в Німеччині: що потрібно знати українцям

Реєстрація місця проживання в Німеччині: що потрібно знати українцям

Реєстрація місця проживання в Німеччині або Anmeldung є не формальністю, а базовим юридичним обов’язком. Вона стосується всіх, хто планує залишатися в країні до
Поділитись
Finance2025/12/17 01:05
Українська defence tech компанія Frontline Robotics відкрила 60 вакансій: яких ІТ-спеціалістів шукає

Українська defence tech компанія Frontline Robotics відкрила 60 вакансій: яких ІТ-спеціалістів шукає

Frontline Robotics — українська defence tech компанія, що розробляє та виготовляє роботизовані системи для Сил безпеки й оборони України — розширює команду. Нар
Поділитись
Dev2025/12/17 00:06
'KPop Demon Hunters' переписує історію музики в анімаційних фільмах

'KPop Demon Hunters' переписує історію музики в анімаційних фільмах

Пост 'KPop Demon Hunters' переписує історію музики анімаційних фільмів з'явився на BitcoinEthereumNews.com. Саундтрек KPop Demon Hunters піднімається на 1 місце в Billboard 200, приєднуючись до невеликої групи альбомів анімаційних фільмів, які очолили чарт. ЛОС-АНДЖЕЛЕС, КАЛІФОРНІЯ – 24 СЕРПНЯ: Кен Джонг виступає під час події Netflix "KPop Demon Hunters" A Sing-Along Event в Regal LA Live 24 серпня 2025 року в Лос-Анджелесі, Каліфорнія. (Фото Гонсало Маррокіна/Getty Images для Netflix) Getty Images для Netflix Анімаційні фільми відомі не лише тим, що вони сімейні, але й винятковими показниками в прокаті та створенням одних із найбільш пам'ятних пісень в історії кіно. Disney та Pixar зробили великий бізнес не лише на створенні блокбастерів, але й на успішних саундтреках і незліченних синглах, які продалися мільйонами, домінували в чартах і вигравали Оскар за найкращу оригінальну пісню. Тепер Sony Animation та Netflix кидають виклик цим гігантам. KPop Demon Hunters, анімаційний фільм Netflix, який виявився найбільш переглянутим на платформі за всю історію, приєднується до ексклюзивного клубу найуспішніших саундтреків до анімаційних фільмів усіх часів, піднявшись на одну позицію в Америці. KPop Demon Hunter досягає 1 місця Саундтрек KPop Demon Hunters покращує свої позиції в Billboard 200 цього тижня, піднявшись з 2 на 1 місце. Цей тиждень знаменує перше перебування альбому на 1 місці в Америці після майже двох місяців очікування на другій позиції позаду таких проєктів, як "I'm the Problem" Моргана Воллена, "Don't Tap the Glass" Тайлера, the Creator, та "Man's Best Friend" Сабріни Карпентер. Останній альбом опускається на 2 місце після відкриття на першому місці лише минулого тижня. Король Лев, Покахонтас і Холодне серце За даними Billboard, KPop Demon Hunters тепер лише сьомий саундтрек до анімаційного фільму, який досяг 1 місця в...
Поділитись
BitcoinEthereumNews2025/09/19 03:35