π Observo is a complete self-hosted log monitoring and analytics platform that provides real-time log aggregation, storage, and visualization.
curl -sSL https://raw.githubusercontent.com/daddycoder007/Observo/main/get-observo.sh | bash
cd observo
./quick-start.sh# Create directory and download files
mkdir observo && cd observo
curl -o docker-compose.yml https://raw.githubusercontent.com/daddycoder007/Observo/main/docker-compose.yml
curl -o quick-start.sh https://raw.githubusercontent.com/daddycoder007/Observo/main/quick-start.sh
chmod +x quick-start.sh
# Start Observo
./quick-start.sh# Download and run
curl -o docker-compose.yml https://raw.githubusercontent.com/daddycoder007/Observo/main/docker-compose.yml
docker-compose up -dβββββββββββββββ βββββββββββββββ βββββββββββββββ βββββββββββββββ
β Log Files βββββΆβ Log Agent βββββΆβ Kafka βββββΆβ Server β
βββββββββββββββ βββββββββββββββ βββββββββββββββ βββββββββββββββ
β
βΌ
βββββββββββββββ βββββββββββββββ βββββββββββββββ βββββββββββββββ
β Dashboard ββββββ Web UI ββββββ REST API ββββββ MongoDB β
βββββββββββββββ βββββββββββββββ βββββββββββββββ βββββββββββββββ
Install the log agent to start monitoring your log files:
npm install -g @observo/log-agentCreate a configuration file:
kafka:
brokers: localhost:9092
clientId: my-log-agent
files:
- path: /var/log/myapp.log
topic: myapp-logs
tag: output
- path: /var/log/error.log
topic: myapp-logs
tag: errorStart monitoring:
observo-agent config.yaml- Image:
observo/server:latest - Port: 3000
- Features: Kafka consumer, MongoDB storage, REST API, WebSocket
- Image:
observo/dashboard:latest - Port: 80
- Features: React-based web interface, real-time logs, analytics
# MongoDB Configuration
MONGO_ROOT_USERNAME=admin
MONGO_ROOT_PASSWORD=password123
MONGO_DATABASE=observo
MONGO_PORT=27017
# Kafka Configuration
KAFKA_TOPIC_PREFIX=observo-logs
KAFKA_PORT=9092
# Server Configuration
SERVER_PORT=3000
DASHBOARD_PORT=80
# Kafka Topics
KAFKA_TOPICS=observo-logs.output,observo-logs.error,observo-logs.accessAll images are automatically published to Docker Hub:
- daddycoder007/observo-server:
docker pull daddycoder007/observo-server:latest - daddycoder007/observo-dashboard:
docker pull daddycoder007/observo-dashboard:latest
latest- Latest stable versionv1.0.0- Specific versionmain- Latest from main branch
After starting Observo:
- Dashboard: http://localhost
- API: http://localhost:3000/api
- MongoDB: localhost:27017
- Kafka: localhost:9092
# Start Observo
./quick-start.sh
# Stop Observo
./stop.sh
# View logs
./logs.sh
# Update to latest version
docker-compose pull
docker-compose up -dGET /api/logs?page=1&limit=50&level=errorGET /api/logs/stats?startDate=2024-01-01&endDate=2024-01-31GET /api/analytics?startDate=2024-01-01&endDate=2024-01-31- Change default passwords in
.env - Use environment variables for sensitive data
- Configure firewall rules
- Enable HTTPS (use reverse proxy)
- Use Kafka authentication if needed
MONGO_ROOT_USERNAME=observo_admin
MONGO_ROOT_PASSWORD=your_secure_password_here
KAFKA_TOPIC_PREFIX=your-company-logs- Fork the repository
- Create a feature branch
- Make your changes
- Add tests if applicable
- Submit a pull request
MIT License - see LICENSE file for details.
- π Documentation
- π Issues
- π¬ Discussions