LogBull Ruby
A Ruby library for sending logs to LogBull - a simple log collection system.
⚠️ Early Development Notice
This is an early placeholder release to reserve the gem name. The full implementation is coming soon.
For production use, please check back later or watch this repository for updates.
Planned Features
- Simple API: Easy-to-use logging interface
- Async sending: Non-blocking log transmission with automatic batching
- Context support: Attach persistent context to logs
- Thread-safe: Safe for concurrent use
- Multiple integrations: Support for popular Ruby logging frameworks
Installation
Add this line to your application's Gemfile:
gem 'logbull'And then execute:
bundle installOr install it yourself as:
gem install logbullQuick Start (Planned API)
require 'logbull'
# Initialize logger
config = LogBull::Config.new(
project_id: 'YOUR_PROJECT_ID',
host: 'http://localhost:4005',
api_key: 'YOUR_API_KEY', # optional
log_level: :info
)
logger = LogBull::Logger.new(config)
# Log messages
logger.info('User logged in', { user_id: '12345', username: 'john_doe' })
logger.error('Database error', { error: 'Connection timeout', database: 'users_db' })
# Shutdown
logger.shutdownDevelopment Status
This gem is currently in early development. The API shown above is planned but not yet fully implemented.
Contributing
We welcome contributions! Please feel free to submit issues and pull requests to the GitHub repository.
Related Projects
- LogBull Server - The main LogBull server
- LogBull Go - Go client library (production ready)
- LogBull Python - Python client library
- LogBull JavaScript - JavaScript/TypeScript client library
License
Apache 2.0 License - see LICENSE file for details.