Files
suite_logs/README.md
T
egutierrez 9966851e75 Add initial project structure and configuration for monitoring suite
- Create .gitignore to exclude Python-generated files and virtual environments
- Add .python-version for Python version management
- Initialize README.md with project description and usage instructions
- Implement alloy.river configuration for Grafana Alloy observability
- Set up grafana.ini for Grafana configuration
- Configure dashboards.yml for automatic dashboard loading in Grafana
- Define datasources.yml for connecting Grafana to Prometheus, Loki, and Tempo
- Establish loki.yaml configuration for Loki logging
- Set up prometheus.yml for Prometheus metrics collection
- Configure tempo.yaml for Tempo tracing
- Create docker-compose.yml for orchestrating services
- Develop init.sh script for initializing project directories and services
- Implement main.py as the entry point for the application
- Define pyproject.toml for project metadata and dependencies
- Update uv.lock for dependency management
2025-10-06 00:52:31 +02:00

147 lines
3.2 KiB
Markdown

# Suite de Monitoreo con Grafana, Prometheus y Mimir
Esta configuracin incluye un stack completo de monitoreo con:
- **Prometheus**: Recoleccin de mtricas
- **Mimir**: Almacenamiento de mtricas a largo plazo
- **Grafana**: Visualizacin y dashboards
## Estructura de Archivos
## Uso
### Iniciar los servicios
```bash
docker-compose up -d
```
### Verificar estado
```bash
docker-compose ps
```
### Ver logs
```bash
# Todos los servicios
docker-compose logs -f
# Servicio especfico
docker-compose logs -f grafana
docker-compose logs -f prometheus
docker-compose logs -f mimir
```
### Detener los servicios
```bash
docker-compose down
```
## Acceso a los Servicios
- **Grafana**: http://localhost:3000
- Usuario: `admin`
- Contrasea: `admin`
- **Prometheus**: http://localhost:9090
- **Mimir**: http://localhost:9009
## Configuracin
### Modificar Configuraciones
Todos los archivos de configuracin estn en la carpeta `config/` y pueden editarse directamente:
1. **Prometheus** (`config/prometheus/prometheus.yml`):
- Agregar nuevos targets de scraping
- Configurar reglas de alertas
- Modificar intervalos de recoleccin
2. **Mimir** (`config/mimir/mimir.yml`):
- Ajustar lmites de series
- Configurar almacenamiento
- Modificar configuracin de cluster
3. **Grafana** (`config/grafana/grafana.ini`):
- Cambiar configuracin de seguridad
- Configurar autenticacin
- Ajustar configuracin de la base de datos
### Aplicar Cambios
Despus de modificar las configuraciones:
```bash
# Reiniciar servicios especficos
docker-compose restart prometheus
docker-compose restart mimir
docker-compose restart grafana
# O reiniciar todo
docker-compose restart
```
### Agregar Fuentes de Datos
Edita `config/grafana/provisioning/datasources/datasources.yml` para agregar nuevas fuentes de datos automticamente.
### Cargar Dashboards
Coloca archivos JSON de dashboards en `data/grafana/dashboards/` y se cargarn automticamente.
## Flujo de Datos
1. **Prometheus** recolecta mtricas de los targets configurados
2. **Prometheus** enva las mtricas a **Mimir** via remote_write
3. **Grafana** consulta tanto **Prometheus** (datos recientes) como **Mimir** (datos histricos)
## Personalizacin
### Agregar Node Exporter
Descomenta las lneas en `config/prometheus/prometheus.yml` y agrega al docker-compose:
```yaml
node-exporter:
image: prom/node-exporter:latest
container_name: node-exporter
ports:
- "9100:9100"
networks:
- monitoring
```
### Agregar Alertmanager
Descomenta las lneas en `config/prometheus/prometheus.yml` y agrega al docker-compose:
```yaml
alertmanager:
image: prom/alertmanager:latest
container_name: alertmanager
ports:
- "9093:9093"
networks:
- monitoring
```
## Troubleshooting
### Verificar conectividad
```bash
# Ping entre contenedores
docker exec prometheus ping mimir
docker exec grafana ping prometheus
```
### Verificar configuracin de Prometheus
```bash
# Verificar sintaxis de configuracin
docker exec prometheus promtool check config /etc/prometheus/prometheus.yml
```
### Verificar configuracin de Mimir
```bash
# Ver configuracin activa
curl http://localhost:9009/config
```