الملفات
Ubuntu bc848175c7
فشلت بعض الفحوصات
CI/CD - Build & Deploy to Ghaymah Cloud / build-and-test (push) Has been cancelled
CI/CD - Build & Deploy to Ghaymah Cloud / deploy-staging (push) Has been cancelled
CI/CD - Build & Deploy to Ghaymah Cloud / deploy-production (push) Has been cancelled
Update Q3 CI/CD and Q5 monitor documentation with screenshots
2026-07-28 14:32:16 +00:00
..

Mithal Monitor

A Flask-based monitoring application that periodically collects website metrics and exposes them through REST APIs.

The application is containerized with Docker and deployed on Ghaymah Cloud.


Features

  • Monitor website availability
  • Measure DNS lookup time
  • Measure HTTP latency
  • Measure search latency
  • Check SSL certificate expiration
  • Store collected metrics
  • REST API for health checks and metrics
  • Dockerized deployment
  • Deployed on Ghaymah

Tech Stack

  • Python
  • Flask
  • SQLite
  • Docker
  • Gunicorn
  • Ghaymah Cloud

API Endpoints

Health Check

GET /health

Example Response:

{
  "status": "healthy"
}

Metrics

GET /api/metrics

Example Response:

[
  {
    "timestamp": "2026-07-28 12:11:50",
    "uptime": true,
    "status_code": 200,
    "latency_ms": 34.03,
    "dns_ms": 2.38,
    "search_latency_ms": 108.42,
    "ssl_days_left": 49,
    "ssl_expiry": "2026-09-15"
  }
]

Running Locally

Clone the repository:

git clone <repo-url>
cd Q5-Mithal-Monitor

Install dependencies:

pip install -r requirements.txt

Run the application:

python app.py

The application will be available on:

http://localhost:5000

Docker

Build the image:

docker build -t mithal-monitor .

Run the container:

docker run -p 80:80 mithal-monitor

Deployment

The application is deployed on Ghaymah Cloud.

Deployment URL:

https://mithal-monitor-74639f9fbe38.hosted.ghaymah.systems

Health Endpoint:

https://mithal-monitor-74639f9fbe38.hosted.ghaymah.systems/health

Metrics Endpoint:

https://mithal-monitor-74639f9fbe38.hosted.ghaymah.systems/api/metrics

Monitoring Dashboard

The deployed Mithal Monitor application provides a dashboard for monitoring website availability and performance metrics.

The dashboard displays:

  • Current service status
  • HTTP response latency
  • DNS lookup time
  • Search latency
  • SSL certificate expiration status
  • Historical monitoring data
  • Recent monitoring records

Dashboard Preview

Mithal Monitor Dashboard


Project Structure

q5-mithal-monitor/

├── app.py
├── monitor.py
├── monitor-data.json
├── requirements.txt
├── Dockerfile
├── templates/
├── images/
│   └── mointor-dashboard.jpg
└── README.md

Author

Mohammed Hamdy