home-assistant.io/source/_components/sensor.systemmonitor.markdown
ntalekt 5d28e8266b added note: type names differ from entity names (#3746)
* added note: type names differ from entity names

* Minor changes
2017-10-24 11:16:38 +02:00

101 lines
3.6 KiB
Markdown

---
layout: page
title: "System Monitor"
description: "Instructions how to monitor the Home Assistant host."
date: 2015-03-23 19:59
sidebar: true
comments: false
sharing: true
footer: true
logo: system_monitor.png
ha_category: System Monitor
ha_release: pre 0.7
ha_iot_class: "Local Push"
---
The `systemmonitor` sensor platform allows you to monitor disk usage, memory usage, CPU usage, and running processes. This platform has superseded the process component which is now considered deprecated.
To add this platform to your installation, add the following to your `configuration.yaml` file:
```yaml
# Example configuration.yaml entry
sensor:
- platform: systemmonitor
resources:
- type: disk_use_percent
arg: /home
- type: memory_free
```
Configuration variables:
- **resources** array (*Required*): Contains all entries to display.
- **type** (*Required*): The type of the information to display, please check the table below for details.
- **arg** (*Optional*): Argument to use, please check the table below for details.
The table contains types and their argument to use in your `configuration.yaml` file.
| Type (`type:`) | Argument (`arg:`) |
| :------------------ |:--------------------------|
| disk_use_percent | Path, eg. `/` |
| disk_use | Path, eg. `/` |
| disk_free | Path, eg. `/` |
| memory_use_percent | |
| memory_use | |
| memory_free | |
| swap_use_percent | |
| swap_use | |
| swap_free | |
| load_1m | |
| load_5m | |
| load_15m | |
| network_in | Interface, eg. `eth0` |
| network_out | Interface, eg. `eth0` |
| packets_in | Interface, eg. `eth0` |
| packets_out | Interface, eg. `eth0` |
| ipv4_address | Interface, eg. `eth0` |
| ipv6_address | Interface, eg. `eth0` |
| processor_use | |
| process | Binary, e.g. `octave-cli` |
| last_boot | |
| since_last_boot | |
**Note**: Some `type:` names used in the `configuration.yaml` file differ from the entity names.
| Sensor type | Entity ID |
| :------------------ |:-------------------------|
| memory_free | sensor.ram_available |
| memory_use_percent | sensor.ram_used |
| processor_use | sensor.cpu_used |
## {% linkable_title Linux specific %}
To retrieve all available network interfaces on a Linux System, execute the `ifconfig` command.
```bash
$ ifconfig -a | sed 's/[ \t].*//;/^$/d'
```
## {% linkable_title Windows specific %}
When running this platform on Microsoft Windows, Typically, the default interface would be called `Local Area Connection`, so your configuration might look like:
```yaml
sensor:
- platform: systemmonitor
resources:
- type: network_in
arg: 'Local Area Connection'
```
If you need to use some other interface, open a command line prompt and type `ipconfig` to list all interface names. For example a wireless connection output from `ifconfig` might look like:
```bash
Wireless LAN adapter Wireless Network Connection:
Media State . . . . . . . . . . . : Media disconnected
Connection-specific DNS Suffix . :
```
Where the name is `Wireless Network Connection`