Logi sklepu - gdzie są i czego w nich szukać
Publikacja: · Grzegorz Rapczyński
Przy każdej awarii sklepu pierwsze pytanie brzmi „co mówi log". Dla większości osób to pytanie bez odpowiedzi, bo nie wiadomo, gdzie ten log jest ani co właściwie miałby mówić. Poniżej cztery logi, które ma każdy sklep na PrestaShop, i to, czego szukać w każdym z nich.
To umiejętność warta nauczenia się raz. Wpis w logu zwykle zawiera dokładną nazwę pliku i numer linii, w której coś poszło nie tak - czyli informację, której nie da się zdobyć żadnym zgadywaniem.
Cztery logi i co z nich wyczytasz
| Log | Gdzie go znaleźć | Co mówi |
|---|---|---|
| Błędów serwera | Panel hostingu, sekcja logów | Najważniejszy. Plik i linia, w której przerwało się wykonanie |
| Aplikacji | Katalog var/logs/ w sklepie |
Błędy zapisane przez sam sklep, z kontekstem |
| Dostępowy | Panel hostingu | Które żądania kończą się błędem i skąd przychodzą |
| Zdarzeń w panelu | Panel sklepu, sekcja zaawansowana | Kto co zmienił i kiedy |
Jak czytać wpis o błędzie
Typowy wpis ma zawsze te same części i warto je rozpoznawać:
- Data i godzina - sprawdź, czy zgadzają się z momentem awarii. Log jest pełen starych wpisów, które nie mają z nią nic wspólnego.
- Poziom - ostrzeżenia zdarzają się w działającym sklepie codziennie i zwykle nic nie znaczą. Szukasz wpisów oznaczonych jako błąd krytyczny.
- Treść - samo zdanie o błędzie.
- Ścieżka pliku i numer linii - najcenniejsza część. Jeśli ścieżka zawiera
/modules/, masz nazwę winnego modułu bez dalszego szukania. Jeśli zawiera nazwę katalogu szablonu, winny jest motyw.
Czytaj od końca. Ostatni wpis to ten, który Cię interesuje. Logi rosną w dół i w większości przypadków wystarczy spojrzeć na kilkanaście ostatnich linii.
Trzy wpisy, które warto rozpoznawać
O przekroczonej pamięci. Pojawia się przy imporcie, regeneracji miniatur i eksportach. Oznacza, że operacja potrzebuje więcej, niż pozwala serwer - i że trzeba albo podnieść limit, albo podzielić pracę na mniejsze części.
O przekroczonym czasie wykonania. Ten sam rodzaj problemu, inny limit. Charakterystyczne jest to, że operacja przerywa się zawsze po podobnym czasie.
O braku pliku albo funkcji. Prawie zawsze oznacza niezgodność: moduł napisany pod inną wersję sklepu albo inną wersję PHP. To najczęstsza przyczyna błędu 500.
Log dostępowy - do czego się przydaje
Rzadziej używany, a bardzo przydatny w dwóch sytuacjach:
- Gdy nie wiesz, która strona jest zepsuta. Filtrujesz wpisy po kodzie odpowiedzi i widzisz wszystkie adresy zwracające błąd. Czasem okazuje się, że problem dotyczy jednej kategorii, a nie całego sklepu.
- Gdy sklep nagle zwolnił. Duża liczba żądań z jednego adresu IP w krótkim czasie to zwykle robot, który skanuje sklep bez umiaru. Bywa, że wystarczy go ograniczyć, żeby sklep wrócił do normy.
Log zdarzeń w panelu
Osobna kategoria, bo nie dotyczy błędów, tylko ludzi. Sklep zapisuje, kto się zalogował, kto co zmienił i o której. Przy kilku osobach z dostępem to jedyny sposób, żeby odpowiedzieć na pytanie „kto to wyłączył".
Ma jedną wadę: rośnie i nikt go nie czyści. Po kilku latach to jedna z większych tabel w bazie i jedna z przyczyn, dla których panel administracyjny zaczyna się wlec.
Log zdarzeń przydaje się też profilaktycznie: regularne zaglądanie do niego to jeden z tańszych elementów zabezpieczenia panelu, bo wyłapuje logowania i zmiany, których nikt się nie spodziewał.
Zanim zgłosisz problem komukolwiek
Trzy informacje skracają diagnozę z godzin do minut - i są to dokładnie te trzy, o które zapyta każdy:
- Ostatni wpis z logu błędów, w całości, nie przepisany z pamięci.
- Co dokładnie nie działa - sklep, panel, jedna strona.
- Co zmieniło się wcześniej - moduł, aktualizacja, wersja PHP, wgranie plików.
Jeśli log jest pusty, a sklep i tak pokazuje stare dane, to zwykle nie jest awaria, tylko pamięć podręczna - i warto najpierw wykluczyć tę ścieżkę.
Najczęstsze pytania
Nie mam dostępu do logów w panelu hostingu. Co wtedy?
Zgłoś prośbę do obsługi - każdy hosting je prowadzi, nawet jeśli nie udostępnia w panelu. Alternatywnie włącz tryb debugowania w sklepie, który wypisze błąd wprost na stronie.
Czy logi można bezpiecznie kasować?
Logi serwera tak, po przejrzeniu. Log zdarzeń w panelu też, ale warto zachować ostatnie kilka miesięcy - bywa jedynym śladem, kto zmienił ustawienie.
Log jest pełen ostrzeżeń. Powinienem się martwić?
Ostrzeżenia to normalny szum w każdym działającym sklepie. Szukaj wpisów oznaczonych jako błąd krytyczny i tylko tych z czasu awarii.
Log mówi coś, czego nie rozumiesz
Wklej ostatni wpis w wiadomości - zwykle wystarczy, żeby powiedzieć, co się stało i co z tym zrobić. Formularz kontaktowy, 881 932 088 lub kontakt@grvision.pl.