System monitor

The System monitor integrationIntegrations connect and integrate Home Assistant with your devices, services, and more. [Learn more] allows you to monitor disk usage, memory usage, network usage, CPU usage, and running processes.

Configuration

To add the System monitor integration to your Home Assistant instance, use this My button:

Manual configuration steps

If the above My button doesn’t work, you can also perform the following steps manually:

  • Browse to your Home Assistant instance.

  • Go to Settings > Devices & Services.

  • In the bottom right corner, select the Add Integration button.

  • From the list, select System monitor.

  • Follow the instructions on screen to complete the setup.

Sensors

Note

All entities are disabled by default, you need to enable the entities that you wish to use.

All sensors are also marked as diagnostic and won’t be automatically added to automatic dashboards.

Disks

One sensor per found disk/mount point will be created

  • Disk free
  • Disk use
  • Disk usage (percent)

Network

One sensor per found network interface will be created

  • IPv4 address
  • IPv6 address
  • Network in
  • Network out
  • Packets in
  • Packets out
  • Network throughput in
  • Network throughput out

Other

  • Last boot
  • Load (15m)
  • Load (5m)
  • Load (1m)
  • Memory free
  • Memory use
  • Memory usage (percent)
  • Processor use
  • Processor temperature
  • Swap free
  • Swap use
  • Swap usage (percent)

Add process binary sensor

The process binary sensor needs to be configured by the config entry options. Go to Settings > Devices & services, select the System Monitor integration and select Configure.

You can select from the pre-populated list (current running processes) or manually enter the process name, to which a binary sensor will be created per selected process.

Disk usage

Note

The disk usage sensors do not support monitoring folder/directory sizes. Instead, it is only targeting “disks” (more specifically mount points on Linux).

Example output from the Linux df -H command


$ df -H
Filesystem      Size  Used Avail Use% Mounted on
/dev/root        29G   12G   16G  42% /
devtmpfs        805M     0  805M   0% /dev
tmpfs           934M     0  934M   0% /dev/shm
/dev/mmcblk0p1  253M   54M  199M  22% /boot

Processor temperature

  • If no hardware sensor data is available (e.g., because the integration runs in a virtualized environment), the sensor entity will not be created.
  • The unit of measurement (Celsius vs. Fahrenheit) will be chosen based on the system configuration.
  • Only the very first processor related hardware sensor is read, i.e. no individual core temperatures are available (even if the hardware sensor provides that level of detail).