Monitoreo en Go con Prometheus, Grafana y CI/CD

Guía completa para construir un microservicio en Go con health y metrics, dockerización, Prometheus, Grafana y CI/CD con GitHub Actions para desplegar y monitorear en producción.

8 sept 2025 • 4 min de lectura • Equip Q2BSTUDIO

Inteligencia-Artificial-

En este tutorial rehacemos y traducimos al español un proyecto completo para crear un microservicio en Go con estilo de producción que puedas desplegar, observar y enviar a producción mediante CI CD. Incluye endpoints de salud y métricas, empaquetado en Docker, monitoreo con Prometheus y visualización en Grafana, además de una canalización en GitHub Actions. Desde Q2BSTUDIO, empresa de desarrollo de software a medida, aplicaciones a medida y especialistas en inteligencia artificial, ciberseguridad y servicios cloud, compartimos esta guía práctica para acelerar la puesta en producción de tus servicios.

Por qué este proyecto: adquirir habilidades reales en contenerización, observabilidad, CI CD y documentación; mostrar en entrevistas que controlas construir enviar monitorizar; y mantenerlo ligero con un servicio en Go con rutas health y metrics fácil de extender.

Qué vamos a construir: un servicio Go con GET /health que devuelve {status:OK} y GET /metrics con métricas Prometheus incluido un contador personalizado y un histograma de latencia; una imagen Docker publicada en DockerHub; un stack de Prometheus y Grafana para recolectar y visualizar; y un pipeline de GitHub Actions que prueba, construye y publica la imagen.

Requisitos previos: Docker y Docker Compose; cuenta de GitHub para CI CD; cuenta de DockerHub para publicar; y Go 1.24.x.

Pruébalo ahora con la imagen pública. Si haces fork sustituye negin007 por tu usuario de DockerHub. Comandos: docker pull negin007/mini-monitoring-app:latest y luego docker run -d -p 8080:8080 negin007/mini-monitoring-app:latest. Valida con curl https://localhost:8080/health y curl https://localhost:8080/metrics.

Estructura del proyecto recomendada: mini-monitoring-app con main.go, go.mod, Dockerfile, .dockerignore, docker-compose.yml, prometheus.yml, carpeta .github con workflows ci.yml y un README.md.

Paso 1 Escribe el servicio en Go: un main.go mínimo que expone los endpoints health y metrics con el handler de Prometheus. Mantén el servidor escuchando en el puerto 8080 y usa el registrador por defecto de Prometheus.

Paso 2 Instrumentación: expón dos métricas personalizadas. Counter health_requests_total para el conteo creciente de chequeos de salud y Histogram response_latency_seconds para medir latencias por buckets. Con el histograma podrás calcular percentiles como P95 en Prometheus usando esta consulta: histogram_quantile(0.95, sum(rate(response_latency_seconds_bucket[1m])) by (le)). rate X[1m] calcula la tasa por segundo en la última ventana de 1 minuto, sum by le agrega por bucket le significa menor o igual, e histogram_quantile obtiene el percentil 95.

Paso 3 Dockeriza el servicio con un Dockerfile multietapa para compilar binario estático y reducir tamaño de la imagen. Construye y prueba en local con docker build -t tuusuario/mini-monitoring-app:local . y docker run -p 8080:8080 tuusuario/mini-monitoring-app:local.

Paso 4 Valida los endpoints en local. Deberías ver {status:UP} en el endpoint de salud y en metrics las series de Prometheus incluyendo las personalizadas y las de Go runtime.

Paso 5 Añade el stack de monitoreo Prometheus y Grafana con docker-compose. En prometheus.yml configura global scrape_interval 5s y un job mini-monitoring-app con targets app:8080. Con docker-compose up -d levantas app, Prometheus en https://localhost:9090 y Grafana en https://localhost:3000 con credenciales admin admin. En Prometheus verifica en Status Targets que el servicio está en scrape up.

Paso 6 Crea un dashboard en Grafana. Panel tipo Stat para health_requests_total total de health checks y un panel de serie temporal para la latencia P95 usando la consulta histogram_quantile 0.95 sum rate response_latency_seconds_bucket 1m by le. Puedes complementar con paneles de throughput y error rate si añades más métricas.

Paso 7 CI CD con GitHub Actions en .github workflows ci.yml. El flujo ejecuta pruebas de Go, construye la imagen Docker y la publica en DockerHub. Configura los secretos DOCKERHUB_USERNAME y DOCKERHUB_TOKEN con permisos de lectura y escritura.

Consejos de producción: fija tags inmutables además de latest por ejemplo v1.0.x usa healthchecks en Docker Compose y en Kubernetes liveness y readiness añade etiquetas de métricas con dimensiones clave como método y ruta limita el cardinality de etiquetas define dashboards base para latencia P50 P95 P99 tasa de peticiones y errores y usa alertas en Prometheus para SLOs.

Cómo encaja con tu estrategia cloud y de datos: este patrón es ideal para desplegar en contenedores en servicios cloud AWS y Azure aprovechando pipelines y observabilidad centralizada. Si tu organización busca acelerar el time to market con infra gestionada y observabilidad de clase enterprise, nuestro equipo puede ayudarte a diseñar arquitecturas resilientes, escalables y seguras. Conoce más sobre nuestros servicios cloud AWS y Azure y cómo los integramos con tus flujos de CI CD.

Sobre Q2BSTUDIO: somos una consultora tecnológica especializada en software a medida y aplicaciones a medida, inteligencia artificial e IA para empresas incluidos agentes IA, ciberseguridad y pentesting, servicios de inteligencia de negocio con Power BI, y modernización de datos en la nube. Diseñamos soluciones end to end que combinan observabilidad, automatización de procesos, seguridad y analítica avanzada para transformar tus operaciones. Si buscas un partner para crear plataformas y microservicios listos para producción, descubre nuestro enfoque de software a medida y aplicaciones a medida.

Palabras clave para ayudarte a encontrar este contenido y mejorar tu posicionamiento: aplicaciones a medida, software a medida, inteligencia artificial, ciberseguridad, servicios cloud AWS y Azure, servicios inteligencia de negocio, IA para empresas, agentes IA y Power BI.

Conclusión: con un pequeño servicio en Go, Prometheus y Grafana para observabilidad, y Docker más GitHub Actions para la automatización de CI CD, dispones de una base sólida y escalable para servicios modernos listos para producción. Si quieres llevar este enfoque a tus productos con buenas prácticas, seguridad y analítica desde el primer día, Q2BSTUDIO está listo para ayudarte.

UNA PAUSA?

Juga una estona abans de marxar

ELS NOSTRES SERVEIS

Com et podem ajudar

Intel·ligència artificial

Agents d'IA, chatbots i assistents intel·ligents que automatitzen tasques i atenen els teus clients 24/7 per millorar l'eficiència del teu negoci.

Més info

Desenvolupament de programari

Aplicacions web, mòbils i d'escriptori, intranets, e-commerce, SaaS i plataformes de gestió dissenyades per a les necessitats concretes de la teva empresa.

Més info

Serveis cloud

Migració, infraestructura, hosting gestionat, alta disponibilitat i seguretat en Microsoft Azure i Amazon Web Services perquè el teu negoci escali sense límits.

Més info

Ciberseguretat i pentesting

Auditories de seguretat, test d'intrusió (pentesting) i protecció d'aplicacions, dades i infraestructura on-premise i cloud, amb hacking ètic i compliment normatiu.

Més info

Business Intelligence

Quadres de comandament i anàlisi de dades amb Power BI: integrem les teves fonts, dissenyem dashboards i KPIs i convertim les teves dades en decisions.

Més info

Automatització de processos

Automatitzem tasques repetitives i connectem les teves aplicacions amb n8n, Power Automate, Make i RPA, eliminant treball manual i augmentant la productivitat.

Més info

Formació per a empreses

Formem els teus equips en tecnologia amb criteri: desenvolupament web, bases de dades, Git, bones pràctiques i seguretat, automatització amb n8n, intel·ligència artificial per a empreses i creació de solucions d'IA amb Azure AI Foundry.

Més info

Auditoria de codi

Auditem el codi que creguis tu, el teu equip o una IA: et diem què està bé i què millorar, el securitzem i el deixem llest per a producció, web o app.

Més info

Generació d'imatges amb IA

Creem per tu les imatges que necessita el teu negoci amb intel·ligència artificial: producte, xarxes, publicitat, il·lustració i avatars. Tu ens dius què vols i t'ho lliurem llest per fer servir.

Més info

Generació de vídeos amb IA

Creem per tu vídeos amb intel·ligència artificial: promocionals, per a xarxes, presentadors virtuals, doblatge i animacions. Ens comptes la idea i t'ho lliurem muntat i llest per publicar.

Més info

Avatars conversacionals amb IA

Creem avatars conversacionals amb IA —humans digitals amb cara i veu— que atenen els teus clients i equips amb el coneixement de la teva empresa, a la teva web, monitors interactius, WhatsApp o Teams.

Més info

Màrqueting Online i IA

Google Ads, Meta Ads, LinkedIn Ads i posicionament en motors d'IA (GEO/AEO): captem clients i fem que la teva marca aparegui on et busquen, també a ChatGPT, Gemini i Perplexity.

Més info

Tens un projecte en ment?

Explica'ns la teva visió i la convertim en una solució de programari. Sigui quin sigui l'abast, fem realitat la teva idea.