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 • Equipo 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?

Juega un momento antes de irte

NUESTROS SERVICIOS

Cómo podemos ayudarte

Inteligencia artificial

Agentes de IA, chatbots y asistentes inteligentes que automatizan tareas y atienden a tus clientes 24/7 para mejorar la eficiencia de tu negocio.

Más info

Desarrollo de software

Aplicaciones web, móviles y de escritorio, intranets, e-commerce, SaaS y plataformas de gestión diseñadas para las necesidades concretas de tu empresa.

Más info

Servicios cloud

Migración, infraestructura, hosting gestionado, alta disponibilidad y seguridad en Microsoft Azure y Amazon Web Services para que tu negocio escale sin límites.

Más info

Ciberseguridad y pentesting

Auditorías de seguridad, test de intrusión (pentesting) y protección de aplicaciones, datos e infraestructura on-premise y cloud, con hacking ético y cumplimiento normativo.

Más info

Business Intelligence

Cuadros de mando y análisis de datos con Power BI: integramos tus fuentes, diseñamos dashboards y KPIs y convertimos tus datos en decisiones.

Más info

Automatización de procesos

Automatizamos tareas repetitivas y conectamos tus aplicaciones con n8n, Power Automate, Make y RPA, eliminando trabajo manual y aumentando la productividad.

Más info

Formación para empresas

Formamos a tus equipos en tecnología con criterio: desarrollo web, bases de datos, Git, buenas prácticas y seguridad, automatización con n8n, inteligencia artificial para empresas y creación de soluciones de IA con Azure AI Foundry.

Más info

Auditoría de código

Auditamos el código que creas tú, tu equipo o una IA: te decimos qué está bien y qué mejorar, lo securizamos y lo dejamos listo para producción, web o app.

Más info

Generación de imágenes con IA

Creamos por ti las imágenes que necesita tu negocio con inteligencia artificial: producto, redes, publicidad, ilustración y avatares. Tú nos dices qué quieres y te lo entregamos listo para usar.

Más info

Generación de vídeos con IA

Creamos por ti vídeos con inteligencia artificial: promocionales, para redes, presentadores virtuales, doblaje y animaciones. Nos cuentas la idea y te lo entregamos montado y listo para publicar.

Más info

Avatares conversacionales con IA

Creamos avatares conversacionales con IA —humanos digitales con cara y voz— que atienden a tus clientes y equipos con el conocimiento de tu empresa, en tu web, monitores interactivos, WhatsApp o Teams.

Más info

Marketing Online e IA

Google Ads, Meta Ads, LinkedIn Ads y posicionamiento en motores de IA (GEO/AEO): captamos clientes y hacemos que tu marca aparezca donde te buscan, también en ChatGPT, Gemini y Perplexity.

Más info

¿Tienes un proyecto en mente?

Cuéntanos tu visión y la convertimos en una solución de software. Sea cual sea el alcance, hacemos realidad tu idea.

Live Chat