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