Мониторим время загрузки Home Assistant

Как в анекдоте про автолюбителя, которому машина помогает быстрее смотаться на сервис и в шиномонтаж, Home Assistant становится просто незаменим, когда возникает потребность мониторинга скорости загрузки Home Assistant.

Для этого воспользуемся кастомным компонентом от коллеги AlexxIT который известен огромным вкладом в улучшение жизни сообщества домашних автоматизаторов, в частности, его перу (клавиатуре?) принадлежит интеграция HA с умной колонкой Яндекс.Станция и кастомная прошивка для Xiaomi Gateway 3.

Но сегодня мы возьмем другой компонент под названием StartTime, который делает одну вещь и делает ее хорошо: вычисляет фактическое время загрузки Home Assistant. Возможности применения ограничены вашей фантазией, от анализа причин полуторачасового запуска HA на неторопливых одноплатниках вроде Raspberry Pi до автоматического уведомления об увеличившемся времени загрузки. Ведь как известно, чем раньше мы об этом узнаем, тем точнее сможем разобраться как следует и наказать кого попало.

Компонент можно установить вручную, либо воспользоваться репозиторием HACS. Открыв его переходим в раздел Integrations, и нажимаем кнопку EXPLORE & ADD REPOSITORIES, а в появившемся окне набираем Start для того, чтобы найти и установить компонент “Start Time”.

После перезагрузки HA необходимо добавить в configuration.yaml единственную строчку и перезагрузить Home Assistant:

1
start_time:

После перезагрузки в разделе Developer Tools появится новый сенсор start_time. bloКроме, собственно, суммарного времени загрузки в секции атрибутов можно увидеть, сколько времени занимает загрузка того или иного компонента HA. Но сразу предупрежу, что отключение одного из компонентов вряд ли драматическим образом повлияет на время загрузки HA, т.к. компоненты загружаются параллельно. Единственное исключение - когда время загрузки одного компонента превышает время загрузки всего HA, тогда скорость загрузки действительно может уменьшиться.

В моем случае время загрузки в большинстве случаев укладывается в 24 секунды. Добавим простую автоматизацию, которая будет предупреждать нас, если время загрузки HA превысит 30 секунд.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
alias: Slow startup alert
description: ''
trigger:
  - platform: homeassistant
    event: start
condition:
  - condition: numeric_state
    entity_id: sensor.start_time
    above: '30'
action:
  - service: notify.my_telegram
    data:
      message: 'Startup time is slower than usual: {{states("sensor.start_time")}} sec.'
mode: single

На сегодня все, теперь можно спать спокойно. Только не забыть установить режим “не беспокоить” на телефоне, чтобы не устраивать ночных бений.

updatedupdated2021-03-162021-03-16
Our coments are powered by remark42, self-hosted, privacy-focused open source comment engine, which doesn't spy on users.

Since we know nothing about you, consider subscribing to the comments' Telegram channel to keep track of comments on this site.