Beautiful log monitoring for any application, powered by fluent-bit and Next.js.
- π Zero Configuration: Just pipe your logs to
mrelic - π·οΈ Auto Service Detection: Service name from directory name
- π Beautiful Web UI: Modern, responsive log viewer
- π Smart Search: Filter logs by level, service, message content
- π Real-time Updates: See logs as they arrive
- πΎ Persistent Storage: SQLite database for log history
- π³ Docker Native: Everything runs in containers
The fastest way to get started:
./scripts/quick-start.shThis will:
- Build the Docker image
- Start the mrelic server
- Set up the
mreliccommand - Show you how to use it
If you prefer to set things up manually:
docker build -f Dockerfile.mrelic -t repo/mrelic .# Basic setup (port 5959, database at ~/Documents/mrelic.db)
docker run -d --name mrelic-server -p 5959:5959 -v ~/Documents:/data repo/mrelic
# Custom port and database location
docker run -d --name mrelic-server -p 8080:8080 -v ~/Documents:/data repo/mrelic --port 8080 --db /data/custom.db./scripts/build-mrelic.shOnce set up, you can use mrelic with any application:
# Go application
cd my-go-service
mrelic go run main.go
go run main.go | mrelic
# Node.js application
cd my-node-service
mrelic npm start
npm start | mrelic
# Python application
cd my-python-service
mrelic python app.py
python app.py | mrelic
# Any application that outputs logs
cd any-service
./my-app | mrelicVisit the web interface on http://localhost:5959
- Service Detection: The
mreliccommand automatically detects your service name from the current directory - Dynamic Configuration: It creates a fluent-bit config file with your service name
- Log Processing: Fluent-bit processes your logs and sends them to the prettylogs server
- Web Interface: View and analyze your logs at http://localhost:5959
MRELIC_HOST: Server host (default: localhost)MRELIC_PORT: Server port (default: 5959)PORT: Web interface port (default: 5959)DB_PATH: Database file path (default: ~/Documents/mrelic.db)
docker run -d --name mrelic-server -p 5959:5959 \
-v /path/to/your/data:/data \
repo/mrelic --db /data/logs.dbdocker run -d --name mrelic-server -p 8080:8080 \
repo/mrelic --port 8080# View server logs
docker logs mrelic-server
# Stop server
docker stop mrelic-server
# Start server
docker start mrelic-server
# Restart server
docker restart mrelic-server
# Remove server (keeps data if using volumes)
docker rm mrelic-serverdocker logs mrelic-server- Check if container is running:
docker ps - Check port mapping:
docker port mrelic-server - Test connection:
curl http://localhost:5959/api/health
Make sure you ran the setup script or manually created the command as shown above.
Each service automatically gets its own configuration based on the directory name:
cd payments-service
go run main.go | mrelic # Shows as "payments-service"
cd user-service
python app.py | mrelic # Shows as "user-service"You can override the service name by setting the directory name or using a custom approach in your application.
Need help? Check the logs with docker logs mrelic-server or visit the web interface at http://localhost:5959
