Diagnostyka
Log urządzenia, okno diagnostyczne, paczka dla wsparcia, skany magistrali i zajętość dysku
Diagnostyka to miejsce, w którym dowiadujesz się, co robi urządzenie i dlaczego. Do wersji 1.6 nazywała się Logi — wtedy dołączyły do niej paczka dla wsparcia i skany magistrali.

Log
Wyszukiwanie to pole pełnej szerokości na górze. Pod nim pasek narzędzi z filtrami poziomów, filtrem modułów, zakresem dat i auto-odświeżaniem.
Powtórzenia są zwijane
Sterownik z niedziałającym urządzeniem Modbus wypisuje tę samą parę linii co
kilka sekund przez wiele dni. Identyczne komunikaty zwijają się w jeden wiersz
z licznikiem — ×97 — niezależnie od tego, gdzie w logu leżą, a nie tylko gdy
sąsiadują ze sobą. Najechanie na licznik pokazuje, kiedy komunikat pojawił się
pierwszy i ostatni raz.
Wiersz stoi przy swoim najnowszym wystąpieniu, więc komunikat, który zaczyna się powtarzać, przesuwa się tam, gdzie patrzysz, zamiast tykać licznikiem poza polem widzenia.
Numery urządzeń i adresy są rozróżniane: „urządzenie 1 nie odpowiada" i „urządzenie 10 nie odpowiada" zostają dwoma wierszami, bo to dwa problemy. Ignorowane są tylko nazwy wątków i czasy trwania.
Poziomy
| Poziom | Znaczenie |
|---|---|
| ERROR | Coś zawiodło |
| WARNING | Coś może zaraz zawieść |
| INFO | Normalna praca |
| DEBUG | Szczegóły: przy otwartym oknie diagnostycznym albo na stałe dla modułu ustawionego na DEBUG w Loggerze |
Filtrowanie po poziomie odbywa się po stronie serwera, więc pobierane są wyłącznie linie, o które poprosiłeś.
Filtr modułów i daty
Log można zawęzić do jednego komponentu — boneio.modbus.client,
boneio.webui.app — a lista modułów powstaje z samych logów. Zakres dat zawęża
do okresu, czyli do tego, czego potrzebujesz, gdy awaria była wczoraj.
Pokaż moduły zostawia tylko wybrane komponenty, Ukryj moduły — wszystko poza nimi.
Na telefonie filtry chowają się pod przyciskiem Filtry; plakietka na nim mówi, ile filtrów działa. Gdy przewiniesz log w górę, żeby czytać starsze linie, zostaje on w miejscu — nowe wpisy dochodzą na dole, a wczytane starsze strony nie znikają. Przewiń na sam dół, a log znowu podąża za nowymi liniami.
Zaznaczanie i udostępnianie
Kliknij wiersze, aby je zaznaczyć; Shift+klik bierze zakres, a przeciąganie zaznacza kilka. Zaznaczone linie można skopiować jako tekst albo skopiować w bloku kodu gotowym do wklejenia na kanale boneIO na Discordzie.
Okno diagnostyczne
Większość sterowników pracuje na poziomie INFO, więc log czytany po fakcie rzadko tłumaczy awarię — szczegóły nigdy nie zostały zapisane.
Wsparcie → Otwórz okno diagnostyczne podnosi poziom do DEBUG na wybraną liczbę minut, a potem sam go przywraca. Odtwórz problem, kiedy okno jest otwarte.
Zamyka się samo celowo. Bezczynny sterownik zapisuje na poziomie DEBUG około dwudziestu komunikatów MQTT na sekundę, więc okno zostawione otwarte zapycha journal i wypycha z niego historię, której będziesz chciał jutro.
Pozostały czas widać na przycisku Wsparcie, więc otwarte okno jest widoczne bez zaglądania do menu. Przycisk z robakiem w pasku logu to ta sama kontrolka.
Paczka dla wsparcia
Wsparcie → Pobierz paczkę diagnostyczną zbiera w jeden plik to, o co wsparcie i tak zapyta. Możesz go wysłać mailem — nikt nie potrzebuje dostępu do Twojego sterownika.
W środku:
- Twoja konfiguracja YAML
- log urządzenia — z okna diagnostycznego, jeśli było otwarte
- stan MQTT, Mosquitto, Dockera, systemu i sieci
Czego nie ma: secrets.yaml i plik kont nie są w ogóle czytane, a hasła
z konfiguracji są zamienione na znacznik wszędzie, gdzie występują — także
w logu.
Plik nadal zawiera nazwy Twoich urządzeń, topiki MQTT i adresy w sieci. Wyślij go komuś, kogo prosisz o pomoc, a nie na publiczne forum.
Użyteczna kolejność jest taka: otwórz okno diagnostyczne, odtwórz awarię, dopiero potem pobierz. Paczka zebrana „na zimno" zwykle pokazuje, że urządzenie działa, i niewiele poza tym.
Skany magistrali
W pasku bocznym w grupie Magistrale: Modbus, I2C, a gdy CAN jest włączony — Sieć CAN i Podsłuch CAN. Pokazują, co jest faktycznie podłączone do sterownika. Nic tu nie jest zapisywane — klikasz i się dowiadujesz — i dlatego są na tej stronie, a nie w Ustawieniach.
Przydają się przy dodawaniu ekspandera albo urządzenia Modbus oraz wtedy, gdy coś, co działało, przestaje odpowiadać.
Dysk
Diagnostyka → System → Dysk pokazuje, co zajmuje pamięć sterownika, i usuwa to, co można bezpiecznie usunąć. Zajrzyj tu, gdy aktualizacja mówi, że brakuje miejsca.

- Pamięć systemowa — jak zapełniony jest główny system plików. Są na nim system, Docker i Twoja konfiguracja.
- Obrazy Dockera — każdy obraz na sterowniku z rozmiarem i informacją, czy używa go kontener. Każda aktualizacja Node-RED zostawia poprzedni obraz; minimalny zajmuje około 350 MB.
- Pozostałe — cache pakietów (apt), dziennik systemowy i backupy Node-RED.
Sprzątają dwa przyciski:
- Usuń nieużywane obrazy kasuje każdy obraz, którego nie używa żaden kontener. Obrazy używane przez kontener — działający czy zatrzymany — zostają, więc Node-RED i proxy HTTPS są nietknięte. Powrót do starszej wersji Node-RED oznacza potem ponowne pobranie jej obrazu.
- Wyczyść cache pakietów kasuje paczki pobrane wcześniej przez apt. Następna aktualizacja systemu pobierze ponownie tylko te, których potrzebuje.
Oba działają od razu po kliknięciu, bez potwierdzenia, i podają, ile zwolniły. Dziennik systemowy ma limit ustawiony przez system i nie ma w nim czego sprzątać; backupami Node-RED zarządzasz w Ustawienia → Usługi na sterowniku → Node-RED.
Poziomy logowania
Okno diagnostyczne jest tymczasowe. Żeby zmienić to, co sterownik zapisuje od
teraz, użyj Ustawienia → Zaawansowane → Logger, które zapisuje do
config.yaml.