Backend Engineering & Observability
System Monitoring Application
A monitoring platform built with FastAPI to track endpoint availability, application performance metrics, and threshold violations through a centralized backend service.
Role
Backend Developer
Technologies
The problem
Applications and APIs require continuous visibility into endpoint availability and performance. Without centralized monitoring, failures, degraded response times, and threshold violations may remain unnoticed until they affect users.
The solution
The application provides a centralized monitoring backend capable of performing endpoint health checks, tracking performance metrics, authenticating users, and generating alerts when monitored values exceed configured thresholds.
System Architecture
The backend is implemented with FastAPI and structured into routers, services, schemas, models, and core modules. MySQL stores monitoring data through SQLAlchemy, APScheduler executes scheduled monitoring operations, HTTPX performs HTTP requests against monitored endpoints, and Pydantic validates API data.
Technical challenges
- → Running recurring endpoint checks without coupling scheduled tasks to API requests.
- → Recording monitoring metrics in a structured form suitable for later analysis.
- → Handling unavailable or slow endpoints without breaking the monitoring process.
- → Defining threshold-based alert conditions.
- → Separating API routes, business logic, validation, persistence, and monitoring services.
Key engineering decisions
- → Used FastAPI to provide an asynchronous and strongly typed REST API.
- → Used APScheduler to execute recurring monitoring tasks.
- → Used HTTPX for HTTP health checks and monitored endpoint communication.
- → Used SQLAlchemy to separate persistence logic from the database implementation.
- → Used Pydantic schemas for request and response validation.
- → Structured the application into routers, services, models, schemas, and core modules.
Results
- ✓ Implemented real-time endpoint health monitoring.
- ✓ Added performance metric tracking for monitored applications.
- ✓ Implemented configurable alerts for threshold violations.
- ✓ Added authentication and authorization around monitoring functionality.
- ✓ Built a modular FastAPI backend that can be extended with additional monitoring capabilities.