06Métricas y detalle del servidor
Acceso al detalle
Al hacer click sobre una tarjeta de servidor, la aplicación navega a /dashboard/servers/[id], donde se concentra toda la información operativa del equipo. Esta pantalla agrupa cinco bloques: cabecera con metadatos, panel de métricas en vivo, panel de diagnóstico, panel de macros y panel de historial.

Lectura de métricas
Cada barra de métrica utiliza la paleta de salud canónica: verde para valores saludables, amarillo para advertencias, rojo para situaciones críticas. La actualización ocurre en dos canales paralelos:
- Snapshot inmediato: al abrir el detalle, el navegador solicita al backend la métrica actual vía REST (
GET /api/servers/:id/metrics). La respuesta llega en uno a tres segundos. - Stream automático: cada ciclo del cron de monitoreo, el backend escribe nuevas métricas en la base de datos compartida; la suscripción del navegador re-renderiza la barra sin intervención.
El cálculo de cada métrica se realiza con comandos estándar de Unix:
| [H] Métrica | Comando | Postprocesado |
|---|---|---|
| CPU % | top -bn1 | extracción del idle y resta a 100 |
| RAM % | free -m | cociente used / total |
| Disco % | df -h / | columna Use% |
| Uptime | uptime -p | cadena en español |
Forzar actualización
El botón refrescar junto a las métricas dispara la lectura inmediata vía REST. Es útil tras un cambio operativo (reinicio, escalamiento) cuando no se desea esperar al ciclo de cron.
Historial de métricas
El panel de historial muestra una serie de tiempo con los últimos puntos almacenados (configurable: 1h, 6h, 24h). Las series se cargan vía REST (GET /api/metrics/:serverId?hours=N) y se grafican con un componente liviano que respeta la paleta de salud.
Terminal SSH interactivo
Desde la cabecera, el botón terminal abre una pantalla a página completa que conecta el navegador con el servidor a través de un WebSocket contra el backend. El backend, a su vez, mantiene un canal SSH shell interactivo y reenvía los bytes en ambos sentidos.

Nota. El idle timeout es de treinta minutos; tras ese tiempo sin actividad el canal se cierra automáticamente para liberar conexiones SSH.
Indicadores de estado
En la cabecera, junto al nombre, aparece una etiqueta con uno de cuatro estados posibles:
- Activo: la última métrica fue capturada hace menos de cinco minutos.
- Inactivo: no se obtuvieron métricas en el último ciclo.
- Error: el último intento devolvió un error SSH específico (autenticación, timeout, host no resuelve).
- Sin probar: el servidor fue creado pero aún no se ejecutó el primer ciclo de monitoreo.