Monitorizar Home Assistant con System Monitor

Una vez tenemos nuestro Home Assistant funcionando vamos a crear el primer panel lovelace, cuando el sistema está recién instalado es interesante poder monitorizar los recursos para saber cómo está nuestra CPU, si estamos usando toda la memoria, temperatura y muy importante si nos queda espacio en el disco o tarjeta SD.

System Monitor

Aunque HA cuenta con un montón de integraciones, para monitorizarlo no necesitamos añadir ninguna ya que System Monitor viene integrado, solo tenemos que configurar los sensores que queremos usar.

https://www.home-assistant.io/integrations/systemmonitor/

Las  configuraciones en HA se guardan en el fichero configuration.yaml

Home Assistant configuration.yaml
Home Assistant configuration.yaml

Si nos conectamos con el usuario PI este debe de ser el propietario o tener permisos para poder modificarlo, puedes darle permisos con el comando chown:

sudo chown pi:pi -R /docker

Activar los Sensores de Monitorización

Hay varias formar de añadir sensores en Home Assistant:

1.- La más sencilla es añadir los sensores que queremos activar directamente en el fichero “configuration.yaml”, esta opción no me gusta porque si vamos añadiendo todo aquí al final puede ser un poco caos.

2.- Crear una carpeta para los sensores, dentro crear un fichero con los sensores que queremos monitorizar y referenciar esta carpeta desde el fichero “configuration.yaml

Crear la carpeta sensores

Dentro de la carpeta de configuración de Home Assistant creamos una carpeta “custom”, si has instalado homeassistant siguiendo la guia Instalar Home Assistan Core, la configuración se encuentra en la carpeta /docker/homeassistant

Crear nueva carpeta custom
Crear nueva carpeta custom

En esta carpeta añadiremos todo lo que creemos manualmente, sensores, sensores binarios,,,etc, así que para mantener el orden dentro crearemos la carpeta “sensor”

Crear nueva carpeta sensor
Crear nueva carpeta sensor

Crear el fichero de sensores

Dentro de la carpeta “sensor” creamos un fichero “centro_domotica.yaml” y añadimos las siguientes líneas.

- platform: systemmonitor
  resources:
   - type: disk_use
     arg: /
   - type: disk_free
     arg: / 
   - type: disk_use_percent
   - type: swap_use
   - type: swap_use_percent
   - type: memory_free
   - type: memory_use
   - type: memory_use_percent
   - type: processor_use
   - type: processor_temperature
   - type: load_1m
   - type: load_5m
   - type: load_15m
   - type: last_boot

Referenciar la carpeta sensor

Ahora abrimos el fichero “configuration.yaml” y añadimos la referencia que hará que Home Assistant identifique como sensores todo lo que encuentre dentro de la carpeta “sensor” que hemos creado.

# Custom setup
sensor: !include_dir_merge_list custom/sensor

Quedando como se ve en la imagen:

Home Assistant configuration.yaml referencia a custom sensor
Home Assistant configuration.yaml referencia a custom sensor

Reiniciamos Home Assistant

En “Configuración – Controles del Servidor”, pulsamos “Reiniciar”

Home Assistant reiniciar
Home Assistant reiniciar

Crear un nuevo Panel Lovelace

Ahora vamos a crear un nuevo panel para presentar las cosas un poco mejor, para ello pinchamos en los tres puntos de la parte derecha del menú superior, pulsamos en “Editar panel de control”, aparece una ventana preguntando si queremos tomar el control.

Tomar control panel lovelace
Tomar control panel lovelace

Marcamos “Empezar con un panel de control vacío” y le damos a “Tomar el control”

El nuevo panel de control aparece vacío, si pulsamos en el lápiz podemos cambiar el nombre a “Sistema” por ejemplo.

Home Assistant panel de control vacio
Home Assistant panel de control vacio

Pulsamos en el botón “+ AÑADIR TARJETA” y seleccionamos la opción “Manual” y en configuración de la tarjeta pegamos las siguientes líneas y guardamos:

type: entities
entities:
  - entity: sensor.last_boot
  - type: section
  - entity: sensor.disk_use
  - entity: sensor.disk_free
  - entity: sensor.swap_use
  - entity: sensor.swap_use_percent
  - type: section
  - entity: sensor.memory_use
  - entity: sensor.memory_free
  - type: section
  - entity: sensor.load_1m
  - entity: sensor.load_5m
  - entity: sensor.load_15m
  - type: section
  - entity: sensor.processor_use
  - entity: sensor.processor_temperature

Repetimos el proceso creamos una nueva tarjeta de tipo “Manual” y añadimos:

type: horizontal-stack
cards:
  - type: gauge
    entity: sensor.processor_use
    min: 0
    max: 100
    needle: true
    severity:
      green: 0
      yellow: 60
      red: 80
  - type: gauge
    entity: sensor.memory_use_percent
    min: 0
    max: 100
    needle: true
    severity:
      green: 0
      yellow: 60
      red: 80
  - type: gauge
    entity: sensor.disk_use_percent
    min: 0
    max: 100
    needle: true
    severity:
      green: 0
      yellow: 60
      red: 80

Finalmente salimos del modo de edición pulsando la “X” de la barra superior, y nuestro Dashboard ahora tiene una mejor presentación.

Home Assistant crear nuevo dashboard
Home Assistant crear nuevo dashboard

Se va a eliminar la configuración YAML de System Monitor

ACTUALIZACIÓN: A partir de la versión 2024.1.0 se ha añadido la integración de System Monitor en Home assistant.

A partir de esta versión ya no es necesario realizar la configuración manualmente, si ya habías realizado la configuración te saldrá el siguiente mensaje que no es muy claro, pero que básicamente lo que dice es que ya no es necesaria la configuración manual.

Se va a eliminar la configuración yaml de System Monitor
Se va a eliminar la configuración yaml de System Monitor

Para que no siga apareciendo este mensaje simplemente tenemos que eliminar de la carpeta custom/sensor el fichero de configuración que habiamos creado

No es necesario, pero también podemos eliminar del fichero “configuration.yaml” la línea que incluye la referencia a “custom/sensor” en el caso de que no tengamos más ficheros.

Finalmente reiniciamos HA, y podremos comprobar como el error ha desaparecido y Sytem Monitor sigue funcionando ya que ahora viene incorporado de serie como integración.

La entidad no es numérica: sensor.procesor_use

Con el desarrollo de la integración de System Monitor, en las primeras versiones de HA 2024 puede aparecer el error “La entidad no es numérica: sensor…..”, este bug se ha corregido en versiones superiores, por lo que la solución es tan sencilla como actualizar HA.

2 comentarios en «Monitorizar Home Assistant con System Monitor»

  1. Esta muy bien explicado, y mola mucho tu pagina web, todos los temas son muy interesantes, sería posible monitorizar la raspi, desde un nuc, en el que esta homeassistant, la rapberry tiene portainer y algun que otro programa pero el HA esta en un nuc. Saludos

    Responder

Deja un comentario