Skip to content

261dist/observability

Repository files navigation

observability

Stack compartido de observabilidad para la plataforma.

Incluye:

  • Prometheus
  • Loki
  • Promtail
  • Grafana

Este modulo no levanta Kafka ni microservicios. Solo observa servicios que ya estan disponibles.

Archivos

  • docker-compose-dev.yml: observabilidad para dev
  • docker-compose.yml: observabilidad para prod
  • prometheus/prometheus-dev.yml: targets dev por host.docker.internal
  • prometheus/prometheus.yml: targets prod por nombres Docker en ms-net
  • grafana/provisioning: datasources de Grafana

Puertos

Herramienta DEV PROD
Prometheus 19090 29090
Loki 13100 23100
Grafana 13000 23000

Grafana usa:

admin / admin

Redes

En dev, observability usa una red propia:

obs-dev-net

Los servicios dev suelen correr en el host con Maven, por eso Prometheus usa host.docker.internal.

En prod, observability usa la red externa:

ms-net

Esa red la crea infra.

Targets DEV

Prometheus dev scrapea:

  • Gateway: host.docker.internal:7091
  • Producto: host.docker.internal:9091
  • Catalogo: host.docker.internal:8081
  • Kafka exporter: host.docker.internal:41308
  • Orden MS: host.docker.internal:19051
  • Pago MS: host.docker.internal:19061

Targets PROD

Prometheus prod scrapea:

  • Gateway: gateway:7091
  • Producto: producto:9092
  • Catalogo: catalogo:8082
  • Kafka exporter: kafka-exporter:9308
  • Orden MS: orden-ms:9021
  • Pago MS: pago-ms:9031

Logs Centralizados

Promtail lee estas carpetas y envia los logs a Loki con etiqueta service:

  • infra/gateway/logs -> gateway
  • services/catalogo/logs -> catalogo
  • services/producto/logs -> producto
  • services/orden-ms/logs -> orden-ms
  • services/pago-ms/logs -> pago-ms

Levantar DEV

Puedes levantar observability antes o despues de Kafka y los microservicios. Si un target aun no existe, Prometheus lo marcara DOWN hasta que aparezca.

cd C:\ms1\ProyectosMS2026\observability
docker compose -f docker-compose-dev.yml up -d

Accesos:

  • Prometheus: http://localhost:19090
  • Grafana: http://localhost:13000
  • Loki: http://localhost:13100

Levantar PROD

Primero debe existir ms-net, creada por infra:

cd C:\ms1\ProyectosMS2026\infra
docker compose up -d

Luego Kafka y microservicios, si quieres ver sus metricas. Finalmente:

cd C:\ms1\ProyectosMS2026\observability
docker compose up -d

Accesos:

  • Prometheus: http://localhost:29090
  • Grafana: http://localhost:23000
  • Loki: http://localhost:23100

Validaciones

En Prometheus, revisar:

Status -> Targets

Para Kafka:

  • dev: target kafka-exporter-dev
  • prod: target kafka-exporter

Si aparece UP, Grafana ya puede consultar esas metricas desde Prometheus.

Logs

# dev
docker compose -f docker-compose-dev.yml logs -f prometheus
docker compose -f docker-compose-dev.yml logs -f grafana

# prod
docker compose logs -f prometheus
docker compose logs -f grafana

Estado de avance

  • Prometheus dev/prod
  • Grafana dev/prod
  • Loki dev/prod
  • Promtail para logs centralizados
  • Scrape de Gateway, catalogo y producto
  • Scrape de orden-ms y pago-ms
  • Scrape de Kafka Exporter
  • Datasource Grafana provisionado
  • Dashboards versionados por servicio
  • Alertas formales por ambiente

Tag sugerido

git tag -a vs09-kafka -m "eda con vs09-kafka"
git push origin vs09-kafka

About

Stack de observabilidad para los microservicios.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors