Zastanawialiście się kiedyś ile danych wysyła i odbiera Home Assistant - mnie to trochę zaskoczyło! Od razu pobierzemy kilka innych informacji o naszym sprzęcie, aby móc monitorować lepiej czy potrzebujemy przesiąść się już na coś mocniejszego!
Tak naprawdę sprowadza się do to kilku linijek kodu i wszystko działa od razu. Problemem może być tylko określenie eth0 w niektórych systemach ale to dla osób bardziej zaawansowanych. Dla osób które, korzystają z poradników na mojej stronie, będzie to tylko skopiowanie poniższego kodu.
configuration.yaml
Dodajemy do naszych sensor:
- platform: systemmonitor
resources:
- type: disk_use_percent
arg: '/'
- type: memory_use_percent
- type: processor_use
- type: network_in
arg: eth0
- type: network_out
arg: eth0
- type: last_boot
- type: swap_use_percent
- platform: command_line
name: GPU Temperature
command: "/opt/vc/bin/vcgencmd measure_temp"
unit_of_measurement: "°C"
value_template: '{{ value | replace("temp=", "") | replace("''C", "") }}'
- platform: command_line
name: CPU Temperature
command: "cat /sys/class/thermal/thermal_zone0/temp"
unit_of_measurement: "°C"
value_template: '{{ value | multiply(0.001) | round(1) }}'
Pamiętaj w zależności od urządzenia eth0
może mieć inną nazwę np. na Dell Wyse czy HP T620 jest to enp4s0
lub enp1s0
! A temperatura, też jest trochę inaczej przechowywana, musisz przetestować co u Ciebie działa:
Wchodzimy przez ssh i instalujemy:
sudo apt install lm_sensors
sudo sensors-detect
- potwierdzamy wszystko y (milion razy), dlatego robimy szybciej: yes yes | sensors-detect
sudo sensors
- wyświetla
sudo service module-init-tools restart
- tylko, jeżeli coś wyświetla inaczej
Pierwsze to GPU (Radeon) drugie to CPU (kl...).
Następnie te dane musimy sobie wyświetlić w Home Assistant:
- platform: systemmonitor
resources:
- type: disk_use_percent
arg: '/'
- type: memory_use_percent
- type: processor_use
- type: network_in
arg: enp4s0
- type: network_out
arg: enp4s0
- type: last_boot
- type: swap_use_percent
- platform: command_line
name: CPU Temperature
command: "cat /sys/class/hwmon/hwmon1/temp1_input"
unit_of_measurement: "°C"
value_template: '{{ value | multiply(0.001) | round(1) }}'
- platform: command_line
name: GPU Temperature
command: "cat /sys/class/hwmon/hwmon0/temp1_input"
unit_of_measurement: "°C"
value_template: '{{ value | multiply(0.001) | round(1) }}'
Restart maszyny, dodanie do karty wyświetlania parametrów i gotowe! Tutaj jak to wygląda na RPi4B z 4GB RAM i kartą 32GB.
Jak możecie zobaczyć, aktywne chłodzenie w Rpi4 robi ogromną różnicę względem chłodzenia pasywnego (które nie jest zalecane do tego urządzenia).
Ile MB krąży po sieci?
- 1 MiB = 1024 KiB = 1024*1024 B = 1 048 576 B
- 1 MB = 1000 kB = 1000*1000 B = 1 000 000 B
A wraz ze wzrostem mnożnika rozbieżności są coraz większe. Jednak to nie jest ważne - 1 godzina to 10MB danych wychodzących i połowa tego przychodzących. Jestem ciekaw ile tego idzie na zewnątrz sieci ;)
Podsumowanie
Dajcie znać jak to u Was wygląda temperatura, zajętość RAM i dysku! W komentarzu podajcie jakiego urządzenia używacie w tym: ilość RAM oraz wielkość dysku - jestem ciekaw jak to u Was wygląda!
Źródło:
https://www.home-assistant.io/integrations/systemmonitor/
https://community.home-assistant.io/t/system-monitoring-how-does-your-look/109713
Chcesz wiedzieć więcej? Dołącz do grupy na FB. Będzie nam też miło jak polubisz Fanpage!

Odkurzacz automatyczny Xiaomi Roborock S7
Od: 1872 zł 2295 zł | Powiadom gdy cena spadnie
Model z wibracyjnym i podnoszonym mopem, nową genialną szczotką główną w którą nie wkręcają się włosy oraz sonicznym wykrywaniem dywanów. A gdyby tego było mało - to można dokupić stację automatyczną która opróżnia kurz z odkurzacza.
Dziwi brak reklam? Przeczytaj dlaczego i wesprzyj bloga na |
|