Monitoreo de Salud
Define sondas de salud para tus servicios y recibe alertas cuando algo falle.
Tipos de Sondas
| Tipo | Formato del Objetivo | Que Verifica |
|---|---|---|
http | URL | Codigo de estado HTTP, cuerpo de respuesta, latencia |
port | host:port | Conectividad TCP |
command | Comando shell | El codigo de salida coincide con el esperado (por defecto: 0) |
file | Ruta de archivo | El archivo existe y no es mas antiguo que max_age_secs |
Configuracion
config.toml
[health]
enabled = true
tick_interval_secs = 30
result_retention_days = 7
[[health.probes]]
name = "API Server"
probe_type = "http"
target = "https://api.example.com/health"
schedule = "every 5m"
consecutive_failures_alert = 3
latency_threshold_ms = 2000
alert_session_ids = ["123456789"]
[[health.probes]]
name = "Database"
probe_type = "port"
target = "localhost:5432"
schedule = "every 1m"Opciones de Sondas HTTP
| Key | Type | Default | Description |
|---|---|---|---|
timeout_secs | integer | 10 | Tiempo de espera de la solicitud en segundos |
expected_status | integer | 200 | Codigo de estado HTTP esperado |
expected_body | string | null | Subcadena esperada en el cuerpo de la respuesta |
method | string | "GET" | Metodo HTTP |
headers | object | {} | Cabeceras HTTP personalizadas |
Alertas
Cuando una sonda falla consecutive_failures_alert veces consecutivas, se envia una alerta a todos los IDs de sesion en alert_session_ids.
Tareas en Segundo Plano
- Bucle de verificacion — se ejecuta cada
tick_interval_secs(por defecto 30), ejecuta las sondas pendientes - Limpieza — se ejecuta a las 3:40 AM UTC, elimina resultados antiguos
Sondas Dinamicas
Las sondas tambien se pueden crear en tiempo de ejecucion por el agente via la herramienta
health_probe.