Server Monitoring System v2 - Enhanced Architecture

New Project Structure

Server_Monitorizare_v2/
├── app/
│   ├── __init__.py              # Flask app factory
│   ├── models/                  # Database models
│   │   ├── __init__.py
│   │   ├── device.py           # Device model
│   │   ├── log.py              # Log model with message aliases
│   │   └── file.py             # File uploads model
│   ├── api/                     # REST API endpoints
│   │   ├── __init__.py
│   │   ├── logs.py             # Log endpoints
│   │   ├── devices.py          # Device management
│   │   ├── files.py            # File upload handling
│   │   └── ansible.py          # SSH/Ansible endpoints
│   ├── services/                # Business logic layer
│   │   ├── __init__.py
│   │   ├── log_service.py      # Log processing & compression
│   │   ├── device_service.py   # Device management
│   │   ├── ansible_service.py  # SSH/Ansible operations
│   │   └── file_service.py     # File processing
│   ├── web/                     # Web interface
│   │   ├── __init__.py
│   │   ├── main.py             # Main dashboard routes
│   │   ├── devices.py          # Device management UI
│   │   └── ansible.py          # Ansible web interface
│   └── utils/                   # Utility functions
│       ├── __init__.py
│       ├── database.py         # DB utilities
│       ├── ssh_utils.py        # SSH helpers
│       └── compression.py      # Message compression
├── config/
│   ├── config.py               # Configuration management
│   └── database_config.py      # Database settings
├── templates/
│   ├── base.html               # Base template
│   ├── dashboard.html          # Enhanced dashboard
│   ├── ansible/                # Ansible interface templates
│   │   ├── inventory.html
│   │   ├── playbooks.html
│   │   └── execution.html
│   └── devices/                # Device management templates
├── ansible/
│   ├── playbooks/              # Ansible playbooks
│   ├── inventory/              # Dynamic inventory
│   └── roles/                  # Custom roles
├── migrations/                 # Database migrations
├── data/
│   ├── uploads/                # File uploads storage
│   └── backups/                # Database backups
└── main.py                     # Application entry point

Key Improvements

1. Better Database Structure

  • Normalized database schema with separate tables
  • Message aliases and compression
  • File upload tracking
  • Device metadata storage

2. Modular Architecture

  • Separation of concerns (API, Web, Services, Models)
  • Pluggable components
  • Better testability

3. Enhanced Message Processing

  • Message compression and aliases
  • Efficient storage with references
  • Client message size reduction

4. SSH/Ansible Integration

  • Web-based Ansible interface
  • Dynamic inventory management
  • Playbook execution tracking
  • SSH key management
Description
aplicatia actualizata pentru serverul de monitorizare raspberry pi
Readme 325 KiB
Languages
HTML 56%
Python 42.7%
Shell 1.3%