🐣 Ewa wydana na kanale stabilnym

Pisałem już dzisiaj o tym - nie działa od wczoraj lub przedwczoraj; w ogóle nie można wywołać pogody a większość zapytań Jolka albo nie rozumie albo kwituje, iż nie rozpoznaje radia pogoda miasto. (mówię o Darku bo Ewy jeszcze nie mam)

Nie było z tym wcześniej problemów. Proszę o sugestie. Dziękuję :slight_smile:

1 polubienie

U mnie niestety przestał działać zapis do zewnętrznej bazy danych (postgres na localhscie czy mariaDB na NASie efekt ten sam), test połączenia przechodzi poprawnie jednak zapis jest do RAMu (bramka DEV3, ale to chyba nie ma znaczenia). Po powrocie do 2021.3.4 wszystko jest ok.

Tak u mnie też … Sprawdzamy i damy znać

Napisz proszę także, dlaczego te zwrotne komunikaty głosowe Jolki działają tak losowo. Dziękuję.

@SebiCo

dzięki za info - testujemy poprawkę na to, jak będzie OK to wypuścimy ją jeszcze dzisiaj dla wszystkich
Widzę, że potrafisz instalować pip-em więc jak chcesz to możesz sprawdzić czy jest OK:

pip install ais-dom==2021.3.7b0

image

@sdsi

Pewnie wydaje ci się, że Jolka czyta w Twoich myślach… ale to jeszcze nie jest tak zaawansowane :wink:
Jak coś nie działa to pierwszym krokiem do sukcesu jest umiejętność odpisania problemu, najlepiej z przykładem. Wtedy będziemy w stanie zrozumieć co to są “te zwrotne komunikaty głosowe” i co może być nie tak… Dzięki.

1 polubienie

@jolka dziękuję za komentarz, doceniam :wink:

Podobnie było, że Spotify - wpierw to my źle konfigurowaliśmy, niezgodnie z dokumentacją >>> a tymczasem problem był po prostu gdzie indziej… Nie gniewam się, oczywiście.

Co do pogody - opisałem to już; tutaj >>> i tutaj >>>. Polecam lekturę :wink:

Ale niech będzie - dokumentacja, dokumentacja, dokumentacja >>>. Tak więc “Jolka nie czyta w moich myślach” ale dokumentacji również nie przestrzega, bowiem to co tam jest podane po prostu nie działa (działać przestało; w kwestii pogody).

Dzięki za Twój czas. Pozdrowienia.

1 polubienie

Wygląda na to, że teraz działa testowane na postgres/localhost. Później sprawdzę mariaDB. Dzięki :slight_smile: :metal:

EDIT
MariaDB też jest ok :slight_smile:

3 polubienia

możesz to zrobić lepiej :slight_smile: proszę tu masz opis, krok po kroku:

wszystkie kody masz też w Github, będziemy wdzięczni i chętnie przyjmiemy poprawkę do kodu :+1:

Mała aktualizacja na kanale stabilnym

  • poprawka problemu zapisu zdarzeń do zewnętrznej bazy (nie w pamięci)

:tipping_hand_woman: Normalnie nie wydajemy na kanale stabilnym tak często, ale pojawiła się regresja po zmianach na stronie z “Konfiguracją zapisu zdarzeń systemu”. To poprawka na jeden błąd w tym obszarze.

Po tej aktualizacji ta funkcjonalność będzie już działać zgodnie z założeniami:

O co chodzi z tym zapisem zdarzeń - dlaczego nie włączymy tego domyślnie tak jak HA?

Stałe zapisywanie zdarzeń może wpływać na czas reakcji systemu oraz na żywotność nośnika pamięci. Staramy się ograniczyć możliwe problemy z tak zwanym “sztormem zdarzeń w systemie” poprzez odpowiednie ustawienie częstotliwości zapisu (commit_interval na wyższą wartość) oraz poprzez uniemożliwienie zapisu bezpośrednio na dysku w urządzeniu.

Zdajemy sobie sprawę, że baza w pliku zapisywana na karcie SD lub na urządzeniu USB też nie jest idealnym rozwiązaniem i łatwo może ulec uszkodzeniu. Jest to dość znany problem w systemie Home Assistant (który jest podstawą platformy automatyzacji w naszym systemie).

Dlatego, jeżeli ktoś generuje dużo zdarzeń w systemie i chce je rejestrować, to zalecamy zapisywać dane w innym miejscu (np. w bazie danych działającej na innej maszynie). Po to właśnie jest ta funkcjonalność - żeby można było skonfigurować zapis zdarzeń z bramki w zdalnej bazie.

Pamiętajcie, że aktualizacja może trwać długo

nie ma powodu żeby ją przerywać… to nie pomaga. Podczas aktualizacji system działa, radio gra, zwykle wystarczy nie przerywać a wszystko będzie dobrze :wink:

image

Czekam Cierpliwie od 50 minut :slight_smile: niestety system nie działa bo HA jeszcze nie wstał ;-(

Chyba coś się zapętliło u mnie:
Zigbee2MQTT:info - żyje bo eventy schodzą ale co chwilę jak poniżej:
[homeassistant.bootstrap] Waiting on integrations to complete setup: recorder

do teraz HA jeszcze nie uruchomił się.
U mnie recorder w związku z bugiem dot. zapisu do zewnętrznej bazy był skonfigurowany w configuration.yaml może to przyczyna… poczekam jeszcze i pokombinuję :wink:

Połącz się z putty do Jolki i zobacz w logi: “pm2 logs ais”
Poprawki w recorders mogą trwać długo.

Spoko, spoko przecież monitoruję logi :wink: Inaczej bym tego nie napisał.
Długo ale godzina to za długo… Mam bazę na QNapie. Właśnie diagnozuję.

Chyba mamy przyczynę:

2|ais | 2021-04-02 17:59:52 WARNING (Recorder) [homeassistant.components.recorder.migration] Database is about to upgrade. Schema version: 11
2|ais | 2021-04-02 17:59:52 INFO (Recorder) [homeassistant.components.recorder.migration] Upgrading recorder db schema to version 12
2|ais | 2021-04-02 17:59:52 WARNING (Recorder) [homeassistant.components.recorder.migration] Modifying columns event_data in table events. Note: this can take several minutes on large databases and slow computers. Please be patient!
2|ais | 2021-04-02 17:59:52 WARNING (Recorder) [homeassistant.components.recorder.migration] Modifying columns attributes in table states. Note: this can take several minutes on large databases and slow computers. Please be patient!

Faktycznie może się to przedłużyć do kilku godzin przy dużej bazie. O sukcesie napiszę :slight_smile:

Dalej trwa już 3 godzinę: baza jest od 12.02.2021 co będzie po roku :wink:
ais-dom.xxxxx:40632 AIS Query 9832 Repair with keycache 50.000 ALTER TABLE states MODIFY attributes LONGTEXT

Ufff po 4 godzinach HA uruchomił się…

1 polubienie

No i teraz pytanie jak sobie z tym radzić przy większej, starszej bazie?

Baza MariaDB jest na szybkim QNapie po interfejsie 1GBps, switch też 1GBps więc jedyne wąskie gardło to interfejs 100 Mbps w AIS albo kwestia zapytań do bazy.

IMHO w tym jest problem - MySQL (i zakładam że Maria tak samo) nie ogarnia zbyt dużych baz, tak na oko powyżej miliona rekordów w tabeli generalnie lubi sobie “klęknąć” przy insertach lub update’ach, w tym sensie że każdy insert lub update trwa baaardzo długo.

U mnie aktualizacja robiła się całą noc i nadal niby się aktualizuje

Edit:

Po wyłączeniu bramki z prądu zaktualizował się jeszcze pakiet Pythona i już bramka działa.

Uzbrojony w wiedzę i cierpliwość oraz w podgląd logów wg tego poradnika >>> postanowiłem zaktualizować z Darka do Ewy i owszem - udało się, ale za drugim razem…

Za pierwszym razem bramka (wg logów na dalszym etapie pobierania plików) po prostu zrestartowała się samoistnie i to by było na tyle; dodatkowo wstała bez dostępu do sieci a dostęp do niej miałem tylko lokalnie za pomocą pilota i monitora via hdmi. Androidowe połączenie WiFI nie dało się uaktywnić. Logi, które widziałem lokalnie, wskazywały, że bramka już nic nie robi w kwestii aktualizacji (i dalej wskazywała Darka) więc zrestartowałem ją ponownie, sieć wróciła, wywołałem aktualizację i dopiero wtedy proces przeszedł do końca bez problemów (jakieś 20 minut).

Piszę po to bo być może jest jakieś wytłumaczenie, które zdiagnozowane pozwoli uniknąć tego typu problemów na przyszłość. W logach nie widziałem żadnych błędów .

Dzięki za nową aktualizacje - szczególnie zigbee2mqtt mi się podoba w nowym interfejsie, Spotify wydaje się działać od razu a Supla się uspokoiła (ale to już obserwowałem ostatnio na Darku). :+1: :slight_smile:

2 polubienia

A ja zauważyłem że nie idzie robić kopi konfiguracj. Naciskam sprawdzanie konfiguracji i monit o hasło nie pokazuje się.

Witam. A u mnie dziś bramka stanęła i się zbuntowała. Zdalny dostęp brak. Dopiero po podłączeniu do tv zobaczyłem logi.
Dałem "uruchom ponownie i wstała ale bez historii i bazy danych.
Poniżej logi.

Logger: homeassistant.setup

Source: /data/data/pl.sviete.dom/files/usr/lib/python3.9/asyncio/events.py:80
First occurred: 6:26:57 (8 occurrences)
Last logged: 6:27:06

Setup of timer is taking over 10 seconds.
Setup of ais_drives_service is taking over 10 seconds.
Setup of input_boolean is taking over 10 seconds.
Setup of ais_knowledge_service is taking over 10 seconds.
Setup of recorder is taking over 10 seconds.

Logger: homeassistant.components.mqtt.cover

Source: components/mqtt/cover.py:130
Integration: MQTT (documentation, issues)
First occurred: 6:27:08 (7 occurrences)
Last logged: 6:27:08

using ‘value_template’ for ‘position_topic’ is deprecated and will be removed from Home Assistant in version 2021.6, please replace it with ‘position_template’

Logger: homeassistant.components.recorder.util

Source: components/recorder/util.py:222
Integration: recorder (documentation, issues)
First occurred: 6:26:55 (10 occurrences)
Last logged: 6:27:24

The system will rename the corrupt database file ///data/data/pl.sviete.dom/files/home/dom/dyski-wymienne/dysk_05E0-C7FD/ais.db to ///data/data/pl.sviete.dom/files/home/dom/dyski-wymienne/dysk_05E0-C7FD/ais.db.corrupt.2021-04-05T04:27:12.389271+00:00 in order to allow startup to proceed
The system will rename the corrupt database file ///data/data/pl.sviete.dom/files/home/dom/dyski-wymienne/dysk_05E0-C7FD/ais.db to ///data/data/pl.sviete.dom/files/home/dom/dyski-wymienne/dysk_05E0-C7FD/ais.db.corrupt.2021-04-05T04:27:15.423926+00:00 in order to allow startup to proceed
The system will rename the corrupt database file ///data/data/pl.sviete.dom/files/home/dom/dyski-wymienne/dysk_05E0-C7FD/ais.db to ///data/data/pl.sviete.dom/files/home/dom/dyski-wymienne/dysk_05E0-C7FD/ais.db.corrupt.2021-04-05T04:27:18.444130+00:00 in order to allow startup to proceed
The system will rename the corrupt database file ///data/data/pl.sviete.dom/files/home/dom/dyski-wymienne/dysk_05E0-C7FD/ais.db to ///data/data/pl.sviete.dom/files/home/dom/dyski-wymienne/dysk_05E0-C7FD/ais.db.corrupt.2021-04-05T04:27:21.464010+00:00 in order to allow startup to proceed
The system will rename the corrupt database file ///data/data/pl.sviete.dom/files/home/dom/dyski-wymienne/dysk_05E0-C7FD/ais.db to ///data/data/pl.sviete.dom/files/home/dom/dyski-wymienne/dysk_05E0-C7FD/ais.db.corrupt.2021-04-05T04:27:24.492777+00:00 in order to allow startup to proceed

Logger: homeassistant.components.recorder

Source: components/recorder/init.py:437
Integration: recorder (documentation, issues)
First occurred: 6:26:55 (10 occurrences)
Last logged: 6:27:24

Error during connection setup to sqlite://///data/data/pl.sviete.dom/files/home/dom/dyski-wymienne/dysk_05E0-C7FD/ais.db: [Errno 22] Invalid argument: ‘///data/data/pl.sviete.dom/files/home/dom/dyski-wymienne/dysk_05E0-C7FD/ais.db’ → ‘///data/data/pl.sviete.dom/files/home/dom/dyski-wymienne/dysk_05E0-C7FD/ais.db.corrupt.2021-04-05T04:27:12.389271+00:00’ (retrying in 3 seconds)
Error during connection setup to sqlite://///data/data/pl.sviete.dom/files/home/dom/dyski-wymienne/dysk_05E0-C7FD/ais.db: [Errno 22] Invalid argument: ‘///data/data/pl.sviete.dom/files/home/dom/dyski-wymienne/dysk_05E0-C7FD/ais.db’ → ‘///data/data/pl.sviete.dom/files/home/dom/dyski-wymienne/dysk_05E0-C7FD/ais.db.corrupt.2021-04-05T04:27:15.423926+00:00’ (retrying in 3 seconds)
Error during connection setup to sqlite://///data/data/pl.sviete.dom/files/home/dom/dyski-wymienne/dysk_05E0-C7FD/ais.db: [Errno 22] Invalid argument: ‘///data/data/pl.sviete.dom/files/home/dom/dyski-wymienne/dysk_05E0-C7FD/ais.db’ → ‘///data/data/pl.sviete.dom/files/home/dom/dyski-wymienne/dysk_05E0-C7FD/ais.db.corrupt.2021-04-05T04:27:18.444130+00:00’ (retrying in 3 seconds)
Error during connection setup to sqlite://///data/data/pl.sviete.dom/files/home/dom/dyski-wymienne/dysk_05E0-C7FD/ais.db: [Errno 22] Invalid argument: ‘///data/data/pl.sviete.dom/files/home/dom/dyski-wymienne/dysk_05E0-C7FD/ais.db’ → ‘///data/data/pl.sviete.dom/files/home/dom/dyski-wymienne/dysk_05E0-C7FD/ais.db.corrupt.2021-04-05T04:27:21.464010+00:00’ (retrying in 3 seconds)
Error during connection setup to sqlite://///data/data/pl.sviete.dom/files/home/dom/dyski-wymienne/dysk_05E0-C7FD/ais.db: [Errno 22] Invalid argument: ‘///data/data/pl.sviete.dom/files/home/dom/dyski-wymienne/dysk_05E0-C7FD/ais.db’ → ‘///data/data/pl.sviete.dom/files/home/dom/dyski-wymienne/dysk_05E0-C7FD/ais.db.corrupt.2021-04-05T04:27:24.492777+00:00’ (retrying in 3 seconds)

Logger: homeassistant.setup

Source: setup.py:118
First occurred: 6:27:27 (1 occurrences)
Last logged: 6:27:27

Unable to set up dependencies of history. Setup failed for dependencies: recorder

Logger: homeassistant.setup

Source: setup.py:118
First occurred: 6:27:27 (1 occurrences)
Last logged: 6:27:27

Unable to set up dependencies of history. Setup failed for dependencies: recorder

Logger: homeassistant

Source: /data/data/pl.sviete.dom/files/usr/lib/python3.9/site-packages/homeassistant/runner.py:93
First occurred: 7:51:01 (118449 occurrences)
Last logged: 8:07:51

Error doing job: Exception in callback BaseSelectorEventLoop.accept_connection(<aiohttp.web…at 0xa454fb68>, <socket.socke…0.115’, 8060)>, None, <Server socke…15’, 8060)>,)>, 128, None)
Traceback (most recent call last):
File “/data/data/pl.sviete.dom/files/usr/lib/python3.9/asyncio/events.py”, line 80, in _run
self._context.run(self._callback, *self._args)
File “/data/data/pl.sviete.dom/files/usr/lib/python3.9/asyncio/selector_events.py”, line 164, in _accept_connection
conn, addr = sock.accept()
File “/data/data/pl.sviete.dom/files/usr/lib/python3.9/socket.py”, line 293, in accept
fd, addr = self._accept()
OSError: [Errno 22] Invalid argument

Ktoś ma jakiś pomysł?
Zbędne encje wyłączone tak żeby nie pchać do bazy śmieci.
Rotacja logów ustawiona na 1 dzień.
Karta sd sprawna. Bramka pracowała około 36 godzin

Gdzieś już ktoś pisał podomnie. Czy to nie jest kwestia jakości tej karty? Może sprawdź na innym nośniku.