NEXT·LEVEL BAR

Barra de telemetría embebible · v1.0 · puerto 9999

Arriba de esta página está la barra funcionando: es exactamente lo que verás en tus proyectos. Muestra CPU, RAM, temperatura, red y disco de los tres equipos, más el estado del RAID del NAS, y se pone en alerta sola cuando algo pasa de un umbral.

Cómo ponerla en un proyecto

Pega esta línea antes de </body> (o en el <head>) de cualquier sitio:

<script src="URL_BASE/bar-grafico.js" defer></script>

Ese es el estilo gráfico (anillos, medidores y tendencia). Para el clásico en texto, cambia bar-grafico.js por bar.js.

Eso es todo. No hay que instalar nada ni tocar el CSS del sitio: la barra vive dentro de un Shadow DOM, así que ni el sitio la afecta ni ella afecta al sitio.

Importante: usa una dirección que el navegador del visitante pueda alcanzar. Para sitios que abres por Tailscale, usa la IP del tailnet o la ruta pública del funnel; localhost solo funciona si el sitio se ve desde el propio Mac mini.

Opciones

AtributoValoresPara qué
data-postop · bottomArriba (por defecto) o abajo.
data-mountpush · overEmpuja el contenido del sitio o se superpone.
data-refreshms (mín. 2000)Cada cuánto se actualiza. Por defecto 5000.
data-compact1Versión mínima: solo CPU, RAM y temperatura.
<script src="URL_BASE/bar-grafico.js"
        data-pos="bottom" data-refresh="10000" defer></script>

Umbrales de alerta

Aviso
CPU/RAM 85% · disco 85% · Mac 80 °C · NAS 60 °C · disco RAID 45 °C
Crítico
CPU/RAM 95% · disco 93% · Mac 92 °C · NAS 70 °C · disco RAID 52 °C · equipo caído · RAID degradado

En aviso el bloque del equipo se tiñe de ámbar; en crítico se pone rojo y parpadea, y el motivo aparece escrito a la derecha de la barra.

Cómo funciona

Una sola fuente
Lee del monitor NAS (8787). No abre conexiones propias a los equipos.
Cache compartida
Aunque diez sitios muestren la barra, el origen recibe una consulta cada 2,5 s.
Sin gasto en segundo plano
Si la pestaña no está visible, deja de consultar hasta que vuelvas a ella.

Rutas

RutaQué devuelve
/bar.jsEl script embebible (CORS abierto).
/api/barJSON compacto con los 3 equipos y sus alertas ya calculadas.
/api/healthEstado del servicio y de su origen de datos.