♾ Własna integracja - 5. Logowanie / logi

Logowanie / logi

Kiedy dodajemy własną integrację pomocne jest dodanie logów w który będziemy widzieli co wpisał użytkownik, co zwrócił serwis z którym się integrujemy itp. W ostatniej części tego wprowadzenia do dodania własnej integracji opiszemy jak uruchomić program linijka po linijce w trybie wyszukiwania błędów (debug mode). Ale na tą chwilę naszą jedyną informacją o tym co się dzieje w programie “pod spodem” będą logi.

Dodajmy takie 4 linijki do naszego pliku __init__.py

Wyjaśnimy punkty:

  1. Importuje moduł logowania Pythona, który jest używany w całym Asystencie domowym przez wszystkie integracje i przez core
  2. Tworzymy alias logowania
  3. Dodajemy wpis do logów z priorytetem info i informacją o rozpoczęciu konfiguracji encji na podstawie wpisu konfiguracyjnego
  4. Dodajemy wpis do logów z priorytetem warning i informacją o usunięciu integracji

Możliwe poziomy logowania to:
_LOGGER.debug(msg)
_LOGGER.info(msg)
_LOGGER.warning(msg)
_LOGGER.error(msg)
_LOGGER.critical(msg)
_LOGGER.exception(msg)

Od poziomu warning wyświetlamy logi w aplikacji, resta jest dostępna tylko w konsoli.

Jak zwykle zapisujemy nasz kod i dodajemy zmiany do repozytorium git, pobeiramy na bramkę:

cd ~AIS/custom_components/ais_hello
git pull

restartujemy serwis ais

pm2 restart ais

Dodajemy/usuwamy integracjię i jednocześnie sprawdzamy logi:

w konsoli mamy info i warning, a w aplikacji tylko warning:

Podbne wpisy możemy dodać do pliku sensor.py

_LOGGER.warning(str(config_entry.data))

config_entry.data to parametry konfiguracji

1 polubienie