Componentes
Los componentes representan los servicios, sistemas e infraestructura que quieres rastrear y mostrar.

Vista General
Los componentes son la base de ReliaPulse. Representan cualquier cosa que quieras:
- Mostrar en tu página de estado pública
- Monitorear para disponibilidad
- Rastrear métricas de uptime
- Asociar con incidentes
Tipos de Componentes
ReliaPulse usa un modelo de componentes polimórfico con tres tipos:
Tipo SERVICE
Control de estado manual - Mejor para agrupaciones lógicas o servicios que no monitoreas directamente.
Componentes SERVICE:
├── No tienen health checks automatizados
├── El estado se establece manualmente o mediante incidentes
├── Excelentes para agrupar otros componentes
└── Pueden contener subcomponentesCasos de uso:
- Grupos de componentes (ej., "Servicios Backend", "Infraestructura")
- Servicios de terceros que no puedes monitorear
- Servicios monitoreados por herramientas externas
Tipo ENDPOINT
Health checks HTTP - Mejor para APIs, sitios web y cualquier endpoint HTTP.
Componentes ENDPOINT:
├── Health checks HTTP automatizados
├── Intervalos de check configurables
├── Condiciones personalizadas (código de estado, tiempo de respuesta, JSON path)
├── Auto-crear incidentes en fallos
└── Rastrear tiempo de respuesta y métricas de uptimeOpciones de configuración:
- URL: El endpoint a verificar
- Método: GET, POST, PUT, DELETE, etc.
- Headers: Headers de solicitud personalizados
- Body: Cuerpo de solicitud para POST/PUT
- Intervalo de Check: Con qué frecuencia verificar (15s a 24h)
- Timeout: Timeout de solicitud en milisegundos
- Condiciones: Qué define "saludable"
Tipo METRIC
Métricas externas - Mejor para métricas de infraestructura de Datadog, Prometheus, etc.
Componentes METRIC:
├── Obtener métricas de integraciones
├── Establecer umbrales de advertencia/crítico
├── Mostrar valores en la página de estado
└── Auto-actualizar estado basado en umbralesOpciones de configuración:
- Integración: Qué integración usar
- Query: Consulta de métricas (ej.,
avg:cpu_usage{*}) - Intervalo de Polling: Con qué frecuencia obtener
- Umbral de Advertencia: Valor que dispara advertencia
- Umbral Crítico: Valor que dispara crítico
Crear Componentes
Vía Dashboard
- Navega a Dashboard > Componentes
- Haz clic en "Añadir Componente"
- Completa el formulario:
- Nombre: Nombre a mostrar (ej., "Servidor API")
- Tipo: SERVICE, ENDPOINT, o METRIC
- Descripción: Descripción opcional
- Padre: Componente padre opcional para jerarquía
- Configura opciones específicas del tipo
- Haz clic en "Crear"
Vía API
# Crear un componente SERVICE
curl -X POST http://localhost:3000/api/v1/components \
-H "Authorization: Bearer sk_live_xxx" \
-H "Content-Type: application/json" \
-d '{
"name": "Servicios Backend",
"type": "SERVICE",
"description": "Infraestructura core del backend"
}'
# Crear un componente ENDPOINT
curl -X POST http://localhost:3000/api/v1/components \
-H "Authorization: Bearer sk_live_xxx" \
-H "Content-Type: application/json" \
-d '{
"name": "Health Check de API",
"type": "ENDPOINT",
"url": "https://api.example.com/health",
"method": "GET",
"checkInterval": 60,
"expectedStatus": 200,
"parentComponentId": "parent-id-aqui"
}'Jerarquía de Componentes
Los componentes pueden organizarse en una jerarquía padre-hijo para mejor organización:
├── Infraestructura (SERVICE)
│ ├── AWS US-East (SERVICE)
│ │ ├── Base de Datos Principal (ENDPOINT)
│ │ └── Cluster de Cache (METRIC)
│ └── AWS EU-West (SERVICE)
│ └── Base de Datos Secundaria (ENDPOINT)
└── Aplicaciones (SERVICE)
├── App Web (ENDPOINT)
└── API Móvil (ENDPOINT)Beneficios de la Jerarquía
- Organización visual: Agrupación clara en páginas de estado
- Estado heredado: El estado del padre refleja el peor estado de los hijos
- Operaciones en lote: Afectar múltiples componentes a la vez
Configurar Jerarquía
- Crea componentes padres primero (típicamente tipo SERVICE)
- Al crear componentes hijos, selecciona el padre en el campo "Componente Padre"
- Los componentes pueden anidarse hasta 3 niveles de profundidad
Estado de Componentes
| Estado | Color | Descripción |
|---|---|---|
| Operacional | 🟢 Verde | Todo funcionando normalmente |
| Rendimiento Degradado | 🟡 Amarillo | Más lento de lo normal |
| Interrupción Parcial | 🟠 Naranja | Algunas características no disponibles |
| Interrupción Mayor | 🔴 Rojo | Servicio completamente caído |
| En Mantenimiento | 🔵 Azul | Mantenimiento planificado |
Actualizar Estado
Actualización manual:
- Edita el componente
- Cambia el campo de estado
- Guarda
Vía incidente:
- Crea un incidente
- Selecciona componentes afectados
- Elige nivel de impacto para cada uno
Automático (ENDPOINT):
- Fallos en health checks actualizan automáticamente el estado
- La recuperación restaura a Operacional
Iconos Personalizados
Muestra iconos personalizados para componentes:
- Edita el componente
- Ingresa una URL de Icono (debe ser públicamente accesible)
- Activa "Mostrar en Página de Estado" para mostrar en páginas públicas
- Guarda
Usa iconos SVG para mejor calidad. Tamaño recomendado: 24x24 o 32x32 píxeles.
Clonar Componentes
Crea copias de componentes existentes:
- Abre el componente que quieres clonar
- Haz clic en el botón "Clonar" (o usa el menú)
- El clon se crea con:
- Sufijo "(Copia)" en el nombre
- Deshabilitado por defecto (revisar antes de habilitar)
- Todas las configuraciones copiadas
Vía API:
curl -X POST http://localhost:3000/api/v1/components/{id}/clone \
-H "Authorization: Bearer sk_live_xxx"Silenciar Componentes
Silencia componentes ENDPOINT para suprimir alertas mientras sigues monitoreando:
- Edita el componente
- Activa "Silenciado"
- Guarda
Cuando está silenciado:
- Los health checks continúan ejecutándose
- El estado sigue actualizándose
- No se envían notificaciones
- No se disparan alertas on-call
- Aparece una insignia "Silenciado" en el dashboard
Usa el silenciado durante problemas conocidos o cuando quieres silenciar alertas temporalmente sin perder datos de monitoreo.
Filtrar Componentes
La página de componentes soporta varios filtros:
- Filtro de tipo: Mostrar solo SERVICE, ENDPOINT, o METRIC
- Filtro de estado: Mostrar solo estados específicos
- Búsqueda: Encontrar por nombre o descripción
- Grupos: Filtrar por componente padre
Eliminar Componentes
- Abre el componente
- Haz clic en "Eliminar"
- Confirma la eliminación
Eliminar un componente también elimina:
- Todos los subcomponentes
- Datos históricos de uptime
- Datos de métricas asociados
Esta acción no se puede deshacer.
Mejores Prácticas
Convenciones de Nombres
- Usa nombres claros, orientados al usuario
- Evita nombres de código internos
- Sé consistente entre componentes similares
Organización
- Crea grupos SERVICE para categorización lógica
- Mantén la jerarquía superficial (2-3 niveles máximo)
- Agrupa por impacto al usuario, no por arquitectura interna
Monitoreo
- Establece intervalos de check apropiados (no muy frecuentes)
- Usa condiciones significativas
- Configura auto-incidentes para servicios críticos
Documentación Relacionada
- Monitores - Configurar condiciones de health check
- Métricas - Configurar métricas externas
- Páginas de Estado - Mostrar componentes en páginas públicas