Przejdź do treści

Rozwiązywanie problemów

Rozwiązywanie problemów

Świat jest skomplikowany, technologia bywa kapryśna, jeśli trafiłeś tu bo "coś" nie działa - WEŹ GŁĘBOKI ODDECH, a następnie na spokojnie przeczytaj i sprawdź wszystko jeszcze raz. Ten rozdział dokumentacji pomoże Ci zdiagnozować najpospolitsze problemy i znaleźć rozwiązanie - a jeśli nie - to wskaże Ci JAK zadawać pytania i GDZIE szukać pomocy.

Zanim zapytasz

  1. Zgrubnie zidentyfikuj czego może dotyczyć problem - którego systemu lub aplikacji - abyś wiedział jakich słów kluczowych używać w dyskusji i przy wyszukiwaniu. Na przykład - ten poradnik dotyczy Nightscout-a instalowanego na serwerze mikr.us - więc nie pomoże zbytnio w problemach z AAPS-e, xDrip-em lub przy problemach z Nightscoutem na serwerze Heroku.
  2. Przeczytaj na spokojnie tę stronę, cały ten tutorial
  3. Jeśli jeszcze tego nie zrobiłeś - obejrzyj film "Zanim zapytasz" na grupie Technologie Diabetyka
  4. Na grupie Technologie Diabetyka przejrzyj przewodniki w temacie problemu
  5. Użyj lupki na grupie, przejrzyj komentarze i sugestie
  6. Na spokojnie przeczytaj i sprawdź wszystko dwa lub trzy razy - wiele problemów wynika z nieuwagi lub głupich błędów typu literówka, pomylenie systemów, haseł, pominięcie kroków procedury lub zignorowanie komunikatów wyświetlanych przez systemy
  7. Czasami metoda restartu a następnie ponowne podejście do konfiguracji/instalacji rozwiązuje problem szybciej, niż wnikanie co mogło pójść nie tak
  8. Sprawdź czy zainstalowana u ciebie wersja nightscout-tool jest aktualna. Jeśli nie - zaktualizuj narzędzie!

Jeśli nie znalazłeś odpowiedzi, przygotuj się do zadania pytania. Zrób to w taki sposób który maksymalnie ułatwi diagnozę pomagaczom:

  1. Dobrze zidentyfikuj czego może dotyczyć problem i kto może Ci w nim pomóc.
  2. Nie wysyłaj pytania losowym osobom, na kilku grupach, do wszystkich - trafnie określ kanał i odbiorców, ale też:
  3. Nie dedykuj pytania do konkretnej osoby, nie pisz na priv - szczególnie do konkretnych administratorów. Zazwyczaj są oni zasypywani pytaniami i nie są w stanie pełnić dyżuru 365/24/7, do tego zniechęca to potencjalnie innych pomagaczy którzy nie czują że to pytanie jest także do nich. Pisanie na priv pomoże tylko Tobie - nie da się tego wyszukać, nie skorzystają na tym inne osoby mające ten sam problem. Dlatego co do zasady nie pomagamy na priv - chyba że ktoś zasugeruje przesłanie na priv szczegółów które chcemy chronić a są niezbędne przy diagnostyce problemu. Wyjątkiem są dedykowane systemy ticketowe gdzie prowadzi się bezpośrednią konwersację ze wsparciem - grupa na Facebooku i jej admini NIE SĄ takim wsparciem!!!
  4. Zadając pytanie zawrzyj jak najwięcej informacji które pomogą w diagnozie. Opisz czego dotyczy problem, jakiego systemu, telefonu, przy jakiej operacji wystąpił. Opisz co próbowałeś, czego oczekiwałeś a jaki błąd Twoim zdaniem wystąpił (a nie powinien). Dołącz zrzuty ekranów i komunikaty błędów. Najgorsze są zgłoszenia "tysiąc pytań do..."
  5. Przy wklejaniu logów i screenów zadbaj o bezpieczeństwo - ocenzuruj adres Nightscout, dane osobowe, hasła czy API SECRET. Jeśli okażą się niezbędne do diagnostyki - te wyjątkowo można przesłać na priv.
  6. Cierpliwie czekaj na odpowiedzi, wykaż się zrozumieniem i empatią, nie przelewaj frustracji problemem na chcących Ci pomóc.
  7. Cennych ogólnych wskazówek jak zadawać pytania w sieci dostarczy Ci artykuł: Jak mądrze zadawać pytania

Wysyłanie diagnostyki

Niektóre z problemów są specyficzne dla Twojego przypadku, i żadne z metod opisanych poniżej nie pomagają. Praktyka pokazuje, że to rzadkie przypadki - odrób zadanie domowe i najpierw spróbuj rozwiązań opisanych na tej stronie.

Jeśli próbowano wszystkiego, a na grupie na Facebooku nikt nie ma rozwiązania lub sugeruje błąd na serwerze lub w skrypcie instalacyjnym / narzędziu nightscout-tool - możesz spróbować wysłać diagnostykę do specjalisty.

  1. Umów się z kimś na pomoc - twórcy skryptu, administratorzy na FB lub administratorzy mikr.us-a nie zawsze mają czas aby odpowiadać na losowo wysłane dane diagnostyczne. Zanim cokolwiek wyślesz - znajdź kogoś kto ma czas i czuje się na siłach Ci pomóc. Zazwyczaj to ta osoba poprosi Cię o wysłanie diagnostyki. Nie zasypuj losowych ludzi diagnostyką, w szczególności adminów, tylko dla tego że są adminami! Jeśli Twój problem jest kalibru wymagającego diagnostyki - same logi nie wystarczą! Dlatego najpierw przeczytaj całą tę stronę, spróbuj innych rozwiązań - a następnie umów się, w dyskusji przekaż szczegóły problemu i następnie - wysyłaj diagnostykę.

  2. W menu głównym narzędzia nightscout-tool wybierz pozycję

    D) Wyślij diagnostykę i logi

  3. Kliknij Wyślij. Na maila którego użyto do zamówienia serwera mikr.us (prawdopodobnie głównego prywatnego maila) system wyśle wiadomość e-mail z instrukcjami i zaszyfrowaną diagnostyką. Tego maila przekaż na adres e-mail osoby umówionej na wsparcie. W zależności od narzędzia/strony do obsługi poczty - ta opcja nazywać się będzie Przekaż / Prześlij dalej / Forward itp.

  4. Osobie wspierającej przekaż w bezpieczny sposób hasło szyfrowania diagnostyki. Jest ono wyświetlane zarówno przed jak i po wysyłce logów, dodatkowo zawsze można je znaleźć w menu głównym narzędzia nightscout-tool pod pozycją I) O tym narzędziu....

    Bezpieczny sposób to użycie innego kanału komunikacji - np.: napisać na prywatnym chacie na messengerze, na WhatsApp, Signal-u, użyć SMSa lub przekazać ustnie. Nie podawaj swojego hasła w publicznych postach lub komentarzach na Facebooku!

Analiza zdarzeń

Od wersji 1.9.1 nightscout-tool zapisuje czas wybranych operacji i zdarzeń systemowych. Jest to rodzaj analityk dla programisty. Zdarzenia pozwalają poznać historię serwera - jakie operacje wykonał użytkownik lub jakie zdarzenia systemowe wykonywał automatycznie watchdog.

Zdarzenia nie są automatycznie wysyłane do autora czy do chmury, można je podejrzeć w menu statusu, oraz wysłać mailem do osoby wspierającej używając wysyłki diagnostyki

Zdarzenia dzielą się na trzy typy: - pojedyncze - podany jest jeden czas 🕓 - od - do - podane są zazwyczaj dwa czasy (🕓 rozpoczęcia i ✅ zakończenia operacji), używane do raportowania operacji które potrafią dłużej trwać - flagi systemowe - podane są zazwyczaj dwa czasy, oznaczają 🚩 zgłoszenie (i podniesienie flagi), zazwyczaj przy operacjach które raz zgłoszone oczekują na interwencję użytkownika (np.: posprzątanie, restart). Kiedy przyczyna zgłoszenia zostanie usunięta lub ustąpi - flaga jest 🏁 zdejmowana. Flagi czasami celowo blokują pewne operacje przez kilka dni - np.: nie dostajemy co 5 minut maila o tym samym. 🏁 Samo zdjęcie flagi nie oznacza że flaga została wcześniej podniesiona (i wystąpił problem)! - bo system nie sprawdza czy problem historycznie występował, tylko oznacza że problemu nie ma zdejmując flagę.

Typowe problemy i ich rozwiązania

Nightscout

N.1) Strona Nightscout nie działa nawet w przeglądarce

  • sprawdź czy na laptopie/telefonie masz internet
  • na telefonie - przełącz na inne WiFi lub wyłącz WiFi i sprawdź na internecie komórkowym (3G/4G/LTE)
  • sprawdź czy używasz poprawny adres - domenę i adres znajdziesz w menu głównym narzędzia nightscout-tool
  • zobacz czy serwer mikr.us-a nie ma problemów - na stronie statusów mikr.us-ów poszukaj swojego srvXX (masz numer/id serwera w mailu przywitalnym po zakupie mikr.us-a)
  • zobacz czy dostawca Hetzner nie ma problemów - na stronie statusu Hetznera - nas interesują serwery w Finlandii
  • sprawdź czy na facebooku na grupach Mikrusy oraz Technologie Diabetyka nie ma ogłoszenia o znanych problemach
  • jeśli to problemy z siecią u Ciebie w domu - nie damy rady Ci tego ogarnąć, musisz wiedzieć co z tym zrobić, sprawdź u swojego dostawcy internetu czy nie ma problemów, sprawdź czy wszystko ok z Routerem.
  • jeśli to problemy z serwerami - trzeba cierpliwie czekać na komunikaty i rozwiązanie problemów

N.2) Brak kłódki przy adresie Nightscout

  • upewnij się że masz literkę s (jak Stanisław) na początku adresu, czyli że adres zaczyna się od https:// a nie od http://
  • odśwież stronę, wyczyść cache przeglądarki
  • sprawdź na innym komputerze / na innym telefonie

N.3) Zamiast Nightscout-a wyświetla mi się komunikat z klepsydrami mikr.us wspominający o Cytrusie

  • po podpięciu nowej domeny potrzeba kilku chwil aby automat ustawił ją na serwer - poczekaj kilkanaście/kilkadziesiąt sekund
  • jeśli strona nadal nie działa - uruchom ponownie kontenery

N.4) Mam komunikat błędu Nightscout Oops... Unable to connect to Mongo

Instalator

T.1) Instalator Nightscout zawiesza się na początku, komenda ns lub nightscout-tool pokazuje błędy

  • sprawdź status instalatora (Gitea, npm) na stronie: https://status.cukrzycowy.pl/
  • poczekaj i spróbuj ponownie za kilka minut
  • zobacz jakie błędy są wyświetlane - jeśli nic Ci to nie mówi sprawdź czy na Technologie Diabetyka nie ma ogłoszenia o znanych problemach
  • jeśli błędy wskazują na błąd parsowania pliku nightscout.env - napraw ustawienia ręcznie
  • jeśli problem powtarza się i nie ustępuje po kilku godzinach - zapytaj Dominika Dzienia podając szczegóły - komunikaty błędów

T.2) Instalator Nightscout nie uruchamia się

  • upewnij się, że posiadasz obraz systemu "Nightscout (dla cukrzyków)" a nie domyślny. Można go poznać po komunikacie przywitalnym - zachęca do użycia komendy ns lub nightscout-tool po zalogowaniu do ssh lub WebSSH. Jeśli go nie masz pewnie pominąłeś krok Zmiana obrazu linuksa - jeśli to nowy serwer możesz go wykonać, albo...
  • zainstaluj narzędzie komendą zaawansowaną

T.3) W nightscout-tool / instalatorze nie mogę kliknąć na przyciski

  • to jest narzędzie konsolowe (tekstowe) - aby nawigować po kliknięciu myszką w czarny obszar okienka używaj tylko klawiatury a do nawigacji: strzałek, tabulatora, spacji i enter.

T.4) Pomimo prób aktualizacji nightscout-tool dalej jest w starej wersji

  1. wejdź na serwer po ssh / z panelu mikr.us-a w zakładkę WebSSH i zaloguj się
  2. wykonaj następujące komendy aby "na siłę" usunąć ręcznie narzędzie nightsccout-tool,

    komendy przeklejaj linia po linii i potwierdzaj Enter:

    rm -f /srv/nightscout/updates/install.sh
    rm -f /srv/nightscout/tools/nightscout-tool
    
  3. zainstaluj narzędzie komendą zaawansowaną:

    sudo /bin/bash -c "$(curl -fsSL https://gitea.dzienia.pl/shared/mikrus-installer/raw/branch/master/install.sh)"
    
  4. po instalacji w menu głównym narzędzia nightscout-tool powinna być wyświetlana najnowsza stabilna wersja narzędzia

Konfiguracja

K.1) Strona działa w przeglądarce ale nie działa wysyłanie z aplikacji

  • sprawdź czy podałeś poprawny API_SECRET i czy ten sekret nie ma znaków niedozwolonych
  • sprawdź czy nie masz literówki w adresie Nightscout - zjedzonego :, s w https://
  • sprawdź format adresu - różne programy różnią się pod tym względem:
    • w AAPS osobno podajemy sam adres, w stylu https://naszasubdomena.ns.techdiab.pl a osobno API_SECRET, i pozwala tylko na jeden adres
    • w xDrip podajemy adres w formacie https://API_SECRET@naszasubdomena.ns.techdiab.pl/api/v1/ i możemy podać kilka adresów oddzielając je spacją
    • inny program? sprawdź w jego dokumentacji jak konfigurować Nightscout
  • jeśli uzywasz AAPS, upewnij się że wersja Nightscout jest odpowiednia:
    • dla AAPS 3.1.x i starszych - może to być to wersja co najwyżej 14.2.6 albo 15.0.3 i nowsze
    • dla nadchodzącego AAPS 3.2.x - musi być to wersja 15.x.x
  • UWAGA! obecnie latest wskazuje na najnowszą wersję NS, czylu 15.0.3 (lub nowszą) więc jeśli masz AAPS musisz zmienić wersję Nightscout na sztywno na 14.2.6
  • spróbuj podpiąć inną domenę - czasami niektóre narzędzia i sieci blokują techdiab.pl a puszczają bieda.it

K.2) Po zmianie konfiguracji nie uruchamia się nightscout-tool

  • prawdopodobnie przy edycji ustawień wkradła się literówka i format pliku ustawień jest nieprawidłowy, prawidłowo w pliku mamy format:
    KLUCZ=WARTOSC
    KOLEJNY_KLUCZ=WARTOSC
    ### komentarz
    
  • w konsoli ssh / WebSSH
    1. użyj komendy: nano /srv/nightscout/config/nightscout.env
    2. napraw ustawienia, zapisz plik (skrót Ctrl+O) i wyjdź z edytora (skrót Ctrl+X)
    3. odpal nightscout-tool i w menu głównym wybierz opcję 5) Aktualizuj kontenery, poczekaj na restart kontenerów

K.3) Przy synchronizacji lub podpięciu do AAPS Nightscout zawiesza się po kilku sekundach

  • w AAPS/Pumpcontrol/NSClient w opcjach wtyczki NSClient w Ustawieniach zaawansowanych włącz opcję Wysyłaj dane wolniej

K.4) Zapomniałem API_SECRET

  • znajdziesz go w nightscout-tool, w menu głównym jest opcja 2) Pokaż port i API SECRET

Inne

X.1) Mam inne problemy z Nightscout, Nightscout się zawiesił

  • w nightscout-tool, w menu głównym wybierz 1) Status kontenerów i logi, sprawdź czy wszystko jest zielone i wejdź w pozycje Nightscout i Baza danych. Przejrzyj logi - czasami można tam znaleźć konkretne wskazówki z komunikatem błędu
  • spróbuj uruchomić ponownie kontenery
  • jeśli ponowne uruchomienie nie pomoże - spróbuj zaktualizować kontenery

X.2) Nie działa panel administracyjny mikr.us lub WebSSH

  • spróbuj na innej sieci / innym WiFi - często sieci służbowe blokują dostęp do takich narzędzi jak panele administracyjne serwerów lub strony zawierające ssh lub proxy w treści lub adresie strony
  • zobacz czy serwer mikr.us-a nie ma problemów - na stronie statusów mikr.us-ów poszukaj statusu usługi panel
  • zobacz czy dostawca Hetzner nie ma problemów - na stronie statusu Hetznera - nas interesują serwery w Finlandii
  • sprawdź czy na facebooku na grupie Mikrusy

W.1) Jak uruchomić ponownie kontenery

  1. wejdź na serwer po ssh / z panelu mikr.us-a w zakładkę WebSSH i zaloguj się
  2. uruchom komendę nightscout-tool
  3. w menu głównym wybierz opcję R) Uruchom ponownie kontenery, poczekaj na restart kontenerów serwera

W.2) Jak zaktualizować kontenery

  1. wejdź na serwer po ssh / z panelu mikr.us-a w zakładkę WebSSH i zaloguj się
  2. uruchom komendę nightscout-tool
  3. w menu głównym wybierz opcję K) Aktualizuj kontenery, poczekaj na restart kontenerów serwera

W.3) Rozwiązanie pierwszej szansy

  • starą tradycją IT, czasami pomaga wyłączenie i włączenie ponownie: przeglądarki, komputera, telefonu
  • co do serwera, najpierw warto spróbować uruchomić ponownie a jeśli to nie pomaga zaktualizować kontenery

W.4) Rozwiązanie ostatniej szansy

  • jeśli coś poszło bardzo nie tak przy instalacji lub konfiguracji, zawsze możemy zacząć instalację od początku, od kroku zmiany obrazu linuxa
  • wadą tego rozwiązania jest utrata danych i konfiguracji - subdomena pozostaje podpięta i narzędzie to wykryje, choć zawsze możemy zmienić domenę usuwając ją/dodając nową w panelu mikr.us-a

Gdzie i kiedy szukać pomocy

Po wyczerpaniu pomysłów z sekcji powyżej i po poprawnym przygotowaniu pytania, pomocy należy szukać - w zależności od typu problemu - w kolejno wymienionych miejscach: