Saltar a contenido

Prometheus

Descripción

Prometheus es un sistema de monitoreo y alerta de código abierto que recolecta métricas de diferentes servicios y las almacena en una base de datos de series temporales.

Configuración

prometheus:
  image: prom/prometheus
  container_name: prometheus
  volumes:
    - ./prometheus.yml:/etc/prometheus/prometheus.yml
  command:
    - "--config.file=/etc/prometheus/prometheus.yml"
  ports:
    - "9090:9090"
  networks:
    - sonarnet

Configuración de Targets

El archivo prometheus.yml define los targets a monitorear:

global:
  scrape_interval: 15s

scrape_configs:
  - job_name: 'prometheus'
    static_configs:
      - targets: ['localhost:9090']

  - job_name: 'sonarqube'
    static_configs:
      - targets: ['sonarqube:9000']

  - job_name: 'wiremock'
    static_configs:
      - targets: ['wiremock:8080']

Métricas Clave

SonarQube

  • sonarqube_up: Estado del servicio
  • sonarqube_analysis_count: Número de análisis
  • sonarqube_projects_total: Total de proyectos

WireMock

  • wiremock_requests_total: Total de requests
  • wiremock_response_time: Tiempo de respuesta
  • wiremock_errors_total: Total de errores

Alertas

Configurar alertas en prometheus.yml:

rule_files:
  - "alerts.yml"

alerting:
  alertmanagers:
    - static_configs:
        - targets:
          - alertmanager:9093

Dashboards

Los dashboards se configuran en Grafana y pueden incluir:

  • Métricas de rendimiento
  • Estado de servicios
  • Alertas activas
  • Tendencias históricas