A comprehensive monitoring system designed for climate infrastructure and ML pipelines. Track service health, collect metrics, monitor pipelines, and manage alerts - all in one place.
- Real-time service status tracking
- Resource utilization metrics (CPU, Memory, Disk)
- Response time monitoring
- Error rate tracking
- Pipeline execution tracking
- Training metrics collection
- Data processing status
- Model performance monitoring
- Multi-severity alert system
- Telegram notifications
- Alert acknowledgment
- Custom alert rules
- System performance metrics
- Custom metric support
- Time-series data storage
- Metric visualization
- Backend: Django 4.2, Django REST Framework
- Task Queue: Celery 5.3
- Cache/Message Broker: Redis 5.0
- Database: SQLite (development), PostgreSQL (production)
- Monitoring: Built-in metrics collection
- Notifications: Telegram integration
- Clone the repository:
git clone https://github.com/your-org/climate-system-monitor.git
cd climate-system-monitor
- Create and activate virtual environment:
python -m venv env
source env/bin/activate # Linux/Mac
- Install dependencies:
pip install -r requirements.txt
- Set up environment variables:
cp .env.example .env
# Edit .env with your configuration
- Run migrations:
python manage.py migrate
- Start the development server:
python manage.py runserver
Install the official Python client:
pip install climate-monitor-client
Quick start:
from climate_monitor import SystemMonitorClient
monitor = SystemMonitorClient(
base_url='http://your-monitor-host:8000',
service_name='your-service'
)
# Update service status
monitor.update_status('up')
# Start collecting metrics
monitor.start_metric_collection(interval=60)
See Python Client Documentation for more details.
Access the monitoring dashboard at http://your-host:8000/dashboard/
Features:
- Service health overview
- Real-time metrics visualization
- Pipeline status tracking
- Alert management interface
Contributions are welcome! Please read our Contributing Guidelines before submitting a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- monitoring
- climate-tech
- machine-learning
- devops
- django
- python
- metrics
- observability
- pipeline-monitoring
- alert-management
- system-monitoring
- real-time-monitoring
- telegram-bot
- climate-infrastructure
- ml-ops
- Create an issue for bug reports or feature requests
- Join our Discord community
- Follow us on Twitter
Thanks goes to these wonderful people:
- Thanks to all contributors who have helped shape this project
- Special thanks to the climate tech community for feedback and support
- Built with ❤️ for the climate tech community