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:
- Importuje moduł logowania Pythona, który jest używany w całym Asystencie domowym przez wszystkie integracje i przez core
- Tworzymy alias logowania
- Dodajemy wpis do logów z priorytetem info i informacją o rozpoczęciu konfiguracji encji na podstawie wpisu konfiguracyjnego
- 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