problema tempo arreglado
This commit is contained in:
@@ -22,9 +22,9 @@ storage:
|
|||||||
trace:
|
trace:
|
||||||
backend: local
|
backend: local
|
||||||
local:
|
local:
|
||||||
path: /tmp/tempo/traces
|
path: /var/tempo/traces
|
||||||
wal:
|
wal:
|
||||||
path: /tmp/tempo/wal
|
path: /var/tempo/wal
|
||||||
pool:
|
pool:
|
||||||
max_workers: 100
|
max_workers: 100
|
||||||
queue_depth: 10000
|
queue_depth: 10000
|
||||||
|
|||||||
+1
-1
@@ -41,7 +41,7 @@ services:
|
|||||||
- "3200:3200" # Solo puerto de consulta, sin endpoints de recepción
|
- "3200:3200" # Solo puerto de consulta, sin endpoints de recepción
|
||||||
volumes:
|
volumes:
|
||||||
- ./config/tempo/tempo.yaml:/etc/tempo/tempo.yaml
|
- ./config/tempo/tempo.yaml:/etc/tempo/tempo.yaml
|
||||||
- tempo_data:/tmp/tempo
|
- tempo_data:/var/tempo
|
||||||
command:
|
command:
|
||||||
- -config.file=/etc/tempo/tempo.yaml
|
- -config.file=/etc/tempo/tempo.yaml
|
||||||
networks:
|
networks:
|
||||||
|
|||||||
@@ -1,159 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
# Script de inicialización para Suite de Monitoreo
|
|
||||||
# Configura permisos y estructura de directorios para Prometheus, Loki, Tempo y Grafana
|
|
||||||
|
|
||||||
set -e # Salir si hay errores
|
|
||||||
|
|
||||||
echo "🚀 Iniciando configuración de Suite de Monitoreo..."
|
|
||||||
|
|
||||||
# Colores para output
|
|
||||||
RED='\033[0;31m'
|
|
||||||
GREEN='\033[0;32m'
|
|
||||||
YELLOW='\033[1;33m'
|
|
||||||
BLUE='\033[0;34m'
|
|
||||||
NC='\033[0m' # No Color
|
|
||||||
|
|
||||||
# Función para imprimir mensajes
|
|
||||||
print_status() {
|
|
||||||
echo -e "${BLUE}[INFO]${NC} $1"
|
|
||||||
}
|
|
||||||
|
|
||||||
print_success() {
|
|
||||||
echo -e "${GREEN}[ÉXITO]${NC} $1"
|
|
||||||
}
|
|
||||||
|
|
||||||
print_warning() {
|
|
||||||
echo -e "${YELLOW}[ADVERTENCIA]${NC} $1"
|
|
||||||
}
|
|
||||||
|
|
||||||
print_error() {
|
|
||||||
echo -e "${RED}[ERROR]${NC} $1"
|
|
||||||
}
|
|
||||||
|
|
||||||
# Verificar que estamos en el directorio correcto
|
|
||||||
if [ ! -f "docker-compose.yml" ]; then
|
|
||||||
print_error "No se encontró docker-compose.yml. Ejecuta este script desde el directorio del proyecto."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Parar contenedores existentes si están corriendo
|
|
||||||
print_status "Parando contenedores existentes..."
|
|
||||||
docker-compose down 2>/dev/null || true
|
|
||||||
|
|
||||||
# Eliminar directorio data existente
|
|
||||||
if [ -d "data" ]; then
|
|
||||||
print_status "Eliminando directorio data existente..."
|
|
||||||
rm -rf data/
|
|
||||||
print_success "Directorio data eliminado"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Crear estructura de directorios
|
|
||||||
print_status "Creando estructura de directorios..."
|
|
||||||
mkdir -p data/{prometheus,loki,tempo,grafana}
|
|
||||||
|
|
||||||
# Crear subdirectorios específicos necesarios
|
|
||||||
mkdir -p data/loki/{chunks,wal,rules}
|
|
||||||
mkdir -p data/tempo/traces
|
|
||||||
mkdir -p data/prometheus/{data,wal}
|
|
||||||
mkdir -p data/grafana/{data,logs,plugins}
|
|
||||||
|
|
||||||
print_success "Estructura de directorios creada"
|
|
||||||
|
|
||||||
# Configurar permisos
|
|
||||||
print_status "Configurando permisos..."
|
|
||||||
|
|
||||||
# Dar permisos amplios temporalmente para permitir que los contenedores configuren sus propios permisos
|
|
||||||
chmod -R 777 data/
|
|
||||||
|
|
||||||
print_success "Permisos configurados"
|
|
||||||
|
|
||||||
# Verificar que Docker esté disponible
|
|
||||||
if ! command -v docker &> /dev/null; then
|
|
||||||
print_error "Docker no está instalado o no está en el PATH"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
if ! command -v docker-compose &> /dev/null; then
|
|
||||||
print_error "Docker Compose no está instalado o no está en el PATH"
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Verificar que Docker esté corriendo
|
|
||||||
if ! docker info &> /dev/null; then
|
|
||||||
print_error "Docker no está corriendo. Inicia Docker e intenta de nuevo."
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Iniciar servicios
|
|
||||||
print_status "Iniciando servicios..."
|
|
||||||
docker-compose up -d
|
|
||||||
|
|
||||||
print_success "Servicios iniciados"
|
|
||||||
|
|
||||||
# Esperar a que los servicios estén listos
|
|
||||||
print_status "Esperando a que los servicios estén listos..."
|
|
||||||
sleep 5
|
|
||||||
|
|
||||||
# Verificar estado de los servicios
|
|
||||||
print_status "Verificando estado de los servicios..."
|
|
||||||
|
|
||||||
# Función para verificar si un servicio está saludable
|
|
||||||
check_service() {
|
|
||||||
local service_name=$1
|
|
||||||
local port=$2
|
|
||||||
local container_name=$3
|
|
||||||
|
|
||||||
if docker ps | grep -q "$container_name.*Up"; then
|
|
||||||
print_success "$service_name está ejecutándose correctamente"
|
|
||||||
return 0
|
|
||||||
else
|
|
||||||
print_warning "$service_name podría tener problemas"
|
|
||||||
echo "Logs de $service_name:"
|
|
||||||
docker logs "$container_name" --tail 5
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# Verificar cada servicio
|
|
||||||
check_service "Prometheus" "9090" "prometheus"
|
|
||||||
check_service "Loki" "3100" "loki"
|
|
||||||
check_service "Tempo" "3200" "tempo"
|
|
||||||
check_service "Grafana" "3500" "grafana"
|
|
||||||
check_service "Alloy" "12345" "alloy"
|
|
||||||
|
|
||||||
echo ""
|
|
||||||
echo "🎉 ¡Configuración completada!"
|
|
||||||
echo ""
|
|
||||||
echo -e "${GREEN}Servicios disponibles:${NC}"
|
|
||||||
echo -e " 📊 Grafana Dashboard: ${BLUE}http://localhost:3500${NC} (admin/admin123)"
|
|
||||||
echo -e " 📈 Prometheus: ${BLUE}http://localhost:9090${NC}"
|
|
||||||
echo -e " 📋 Loki: ${BLUE}http://localhost:3100${NC}"
|
|
||||||
echo -e " 🔍 Tempo: ${BLUE}http://localhost:3200${NC}"
|
|
||||||
echo -e " 🤖 Alloy UI: ${BLUE}http://localhost:12345${NC}"
|
|
||||||
echo ""
|
|
||||||
echo -e "${GREEN}🚪 Alloy - Única puerta de entrada para datos:${NC}"
|
|
||||||
echo -e "${YELLOW}📊 Envío de métricas:${NC}"
|
|
||||||
echo -e " • Remote Write: ${BLUE}http://localhost:9999/api/v1/write${NC}"
|
|
||||||
echo -e " • Prometheus compatible: ${BLUE}http://localhost:9999/metrics${NC}"
|
|
||||||
echo ""
|
|
||||||
echo -e "${YELLOW}📋 Envío de logs:${NC}"
|
|
||||||
echo -e " • HTTP API: ${BLUE}http://localhost:3101/loki/api/v1/push${NC}"
|
|
||||||
echo -e " • Syslog TCP: ${BLUE}localhost:1514${NC}"
|
|
||||||
echo ""
|
|
||||||
echo -e "${YELLOW}🔍 Envío de trazas:${NC}"
|
|
||||||
echo -e " • OTLP gRPC: ${BLUE}http://localhost:4317${NC}"
|
|
||||||
echo -e " • OTLP HTTP: ${BLUE}http://localhost:4318/v1/traces${NC}"
|
|
||||||
echo -e " • Jaeger gRPC: ${BLUE}localhost:14250${NC}"
|
|
||||||
echo -e " • Jaeger HTTP: ${BLUE}http://localhost:14268/api/traces${NC}"
|
|
||||||
echo -e " • Jaeger UDP: ${BLUE}localhost:6831${NC}"
|
|
||||||
echo -e " • Zipkin: ${BLUE}http://localhost:9411/api/v2/spans${NC}"
|
|
||||||
echo ""
|
|
||||||
echo -e "${YELLOW}Comandos útiles:${NC}"
|
|
||||||
echo -e " Ver logs: ${BLUE}docker-compose logs [servicio]${NC}"
|
|
||||||
echo -e " Parar servicios: ${BLUE}docker-compose down${NC}"
|
|
||||||
echo -e " Reiniciar servicios: ${BLUE}docker-compose restart${NC}"
|
|
||||||
echo -e " Estado de servicios: ${BLUE}docker-compose ps${NC}"
|
|
||||||
echo ""
|
|
||||||
echo -e "${GREEN}✨ Configuración centralizada: Alloy recolecta todo y distribuye a Prometheus, Loki y Tempo${NC}"
|
|
||||||
echo ""
|
|
||||||
Reference in New Issue
Block a user