Proyecto
Microservice Observability Lab
Laboratorio técnico de observabilidad construido sobre una API mínima para mostrar una base clara, reproducible y útil de monitorización, análisis de logs y diagnóstico de degradación del servicio.
Resumen
Laboratorio reproducible de observabilidad sobre una API pequeña con FastAPI, Prometheus y Grafana, orientado a monitorización, logs estructurados y diagnóstico de incidencias.
Stack: Python 3.12, FastAPI, Uvicorn, Prometheus, Grafana, Docker Compose, JSON logging
Qué hace
El proyecto busca trabajar la observabilidad sobre un servicio pequeño sin quedarse en una demo superficial de métricas o dashboards. La idea es disponer de una base sencilla pero útil para instrumentar una API, observar tráfico, latencia y errores, y entender cómo detectar una degradación controlada a partir de señales técnicas correlacionadas.
Cómo está construido
La solución se apoya en una API desarrollada con FastAPI y servida con Uvicorn, con endpoints funcionales, de salud y de métricas. La aplicación genera logs estructurados en JSON y se integra con Prometheus y Grafana dentro de un entorno reproducible levantado con Docker Compose para centralizar recogida de métricas, visualización y análisis básico del comportamiento del servicio.
Qué valida o automatiza
El laboratorio permite introducir latencia artificial para simular una degradación controlada y analizar su impacto sin convertir el escenario en una caída total. A partir de ahí, se pueden correlacionar métricas y logs para observar aumento de tiempos de respuesta, comportamiento de los endpoints y señales de error en un contexto local pensado para diagnóstico técnico y aprendizaje práctico.
Puntos clave
- API mínima instrumentada con endpoints funcionales, /health y /metrics para observabilidad básica.
- Integración reproducible con Prometheus y Grafana para analizar tráfico, latencia y errores.
- Escenario de degradación controlada con latencia artificial para correlacionar métricas y logs.