2. O logach s坦w kilka
Logowanie
to proces zapisywania informacji do plik坦w.
Pliki zawieraj informacj o zdarzeniach zachodzcych w systemie, aplikacji
lub/i komunikacji. Logowanie nie ogranicza si wycznie do identyfikowania
bd坦w podczas tworzenia/dziaania aplikacji. Su甜y r坦wnie甜 do wykrywania
luk bezpieczestwa, monitorowania narusze polityki serwisu, dostarczania
danych w wypadku wystpowania problem坦w itp.
3. Informacje logujemy w celu:
zebrania danych
rozwizywania problem坦w
generowania statystyk
sporzdzania audyt坦w
profilowaniu
4. kod 添r坦dowy aplikacji
dane identyfikacyjne sesji
dane wra甜liwe u甜ytkownik坦w
parametry pocze baz danych
dane kont bankowych i kart patniczych
bdy walidacji formularzy
bdy autentykacji i autoryzacji
bdy aplikacji
zmiany konfiguracyjne
uruchomienie/zamknicie aplikacji
Informacje, kt坦rych
nie powinnimy logowa:
Informacje, kt坦re
powinnimy logowa:
5. Dobre praktyki logowania.
posiada okrelony cel
zawiera kontekst, zdarzenie kt坦rego dotycz logowane dane
by zbalansowane, nie zawiera zbyt maej lub zbyt du甜ej iloci danych
posiada struktur i by logowane na r坦甜nych poziomach
by adaptowane do rodowiska deweloperskiego i produkcyjnego
by zapisywane do wielu plik坦w
komunikaty zawarte w logach powinny by zrozumiae dla czowieka,
i dajce si atwo zinterpretowa przez parsery
Logi powinny:
6. Logi w PHP
PSR-3: Logger Interface - interfejs dla bibliotek zapisujcych logi
PSR-3 - dostarcza opis interfejsu, kt坦ry zawiera osiem metod do zapisywania omiu poziom坦w log坦w
zgodnych ze standardem RFC 5424 (debug, info, notice, warning, error, critical, alert, emergency).
Dziewita, uniwersalna metoda o nazwie log jako pierwszy parametr przyjmuje jeden z poziom坦w log坦w.
Monolog - Popularna biblioteka PHP do zapisywania log坦w. Pozwala na zapis do plik坦w, socket坦w,
folder坦w, baz danych, webserwis坦w itp.
Logi w Magento 2
Magento/Framework/Logger - klasy do logowania oparte na bibliotece Monolog