🐛 Diagnozowanie problemu z automatyczną instalacją - symulacja braku pakietu w repozytorium pip

To jest opis mający na celu pokazanie jak diagnozować problem z automatyczną instalacją

Opiszemy krok po kroku, w jaki sposób zgłosić poprawnie i konstruktywnie problem z aktualizacją, bo niestety zgłoszenie typu, “nie udało mi się zainstalować, ale potem się udało” świadczy raczej o problemie z siecią domową lub z repozytorium pakietów pip (publiczne repozytorium wszystkich paczek Pythona, przez które udostępniamy aktualizację).

Każdą aktualizację przed wypuszczeniem na beta testujemy na Alfa (na kilku naszych wewnętrznych bramkach) potem przez 3 tygodnie na beta (do którego dostęp ma więcej użytkowników), a następnie wydajemy na stabilnym kanale. Więc cała procedura instalacji jest wielokrotnie testowana, zanim trafi na końcową bramkę.

Poniżej zasymilujemy problem z instalacją - wydając wersję, której nie ma w repozytorium pip.

Najnowsza wersja w pip to 0.113.3b1

Udostępniamy bramkom informację, że jest aktualizacja do wersji 0.113.3b2

po naciśnięciu “ZAINSTALUJ TERAZ AKTUALIZACJĘ” bramka stara się ją pobrać:

Oczywiście Instalacja się nie udaje (bo nie ma takiej wersji na serwerze)

Jolka mówi, że nie udało się pobrać i możemy próbować ponownie

Ponowne próby nic nie dają, więc przechodzimy do sprawdzenia co się dzieje…

Sprawdzamy logi

Przechodzimy do “Narzędzia deweloperskie” → konsola i wpisujemy

pm2 logs

W konfiguracji bramki zmieniamy poziom logowania na info

W drugiej zakładce w przeglądarce przechodzimy do ustawień bramki i zmieniamy poziom logowania, Jolka wykona to online (będzie widać natychmiast zmianę poziomu logowania w konsoli) i powie jaki jest aktualny poziom logowania

Wracamy do aktualizacji

wybieramy “SPRÓBUJ PONOWNIE” i jednocześnie śledzimy logi w drugiej zakładce

Jolka mówi, że próbuje pobrać aktualizację…

oraz, że się nie udało a w logach widzimy przyczynę:

Taką informację z logiem zgłaszamy do info@sviete.pl albo na forum i to jest konstruktywne - możemy coś pomóc i na pewno pomożemy :slight_smile:

PS

:warning: Pamiętaj żeby nie zostawiać systemu na logowaniu w trybie debug!!!
Logowanie w trybie debug generuje duże ilości logów i obciąża system. Używaj go tylko na czas diagnozowania problemu.
w ten sposób możesz wygenerować w jeden dzień gigabajty logów i obciążyć pętle zdarzeń (event loop) w systemie tak, że nie będzie “wyrabiał” z realizacją online innych zadań (automatyzacji itd…)

3 polubienia