Python Logowanie SetLevel

Python Logowanie SetLevel

Pakiet rejestrowania Logowania Pythona w bibliotece Common oferuje możliwość radzenia sobie z ramami do wydawania informacji dziennika z programów Python. Logowanie jest najważniejsze, aby śledzić dane, błędy i wyjątki. Pomaga również w debugowaniu. Logowanie to proste termin na wszystko, co śledzimy i zbieramy. Dlatego gromadzenie informacji, zarówno to, co już mamy, jak i to, co otrzymamy podczas przetwarzania, pomoże nam w debugowaniu. Podczas rejestrowania istnieje pięć z góry określonych poziomów, które zostaną omówione w tym artykule.

Praca nad zalogowaniem się do Pythona

Podobnie jak w przypadku logowania administratora aplikacji, czas i nazwa są wprowadzane do pliku, który jest następnie rejestrowany przez zapisanie pliku. Oznacza to, że dopóki nasze dane są gromadzone, będziemy wiedzieć, kogo administrator jest w tym czasie zalogowany, i będziemy w stanie zapisać również jego informacje o wylogowaniu. Dlatego jest to niezbędna informacja, którą możemy nagrywać i zapisywać w pliku dziennika dla dowolnych momentów logowania lub wylogowania administratora. Podobnie jak czasami spotykamy określony błąd w kodzie. Aby to rozwiązać, tworzymy dziennik, wprowadzamy odpowiednie dane i informacje oraz konfigurujemy scenariusz, aby jeśli wystąpił błąd, wyświetlany jest komunikat o błędzie. Gdy to nastąpi, komunikat jest zapisywany w pliku dziennika, do którego możemy uzyskać dostęp do pliku dziennika oraz szybko zidentyfikować i popraw błąd. Logowanie jest zwykle definiowane w ten sam sposób we wszystkich językach komputerowych. Musimy użyć modułu rejestrowania Pythona, jeśli chcemy śledzić błędy. Biblioteka rejestrowania Pythona musi zostać zaimportowana, jak pokazano na poniższym zdjęciu:

Możemy również zaimportować rejestrowanie, pisząc „od rejestrowania importu *”. Idąc dalej, porozmawiajmy o metodzie logowania Pythona.

Metoda BasicConfig (** KWARGS)

System rejestrowania jest konfigurowany za pomocą tej techniki.

Składnia dla BasicConfig:

Możemy użyć licznych parametrów „BasicConfig ()”. W związku z tym porozmawiajmy o jego parametrach i zdefiniuj cel każdego.

Nazwa pliku: Zamiast konstruować obsługę strumienia, kieruje, aby skonstruować fileHandler z dostarczoną nazwą pliku. Ten argument służy do określenia nazwy nowo wygenerowanego pliku dziennika, a jego wartość to nazwa pliku umieszczonego w nawiasach. Możemy również wykorzystać ścieżkę, która wskazuje lokalizację, w której chcemy utworzyć plik, używając parametru „nazwy pliku”. Kolejność, w której zapisano ten argument, to najpierw „nazwa pliku”, a następnie znak równości („=”), a następnie odwrócone przecinki. Podajemy naszemu pliku dowolną nazwą, którą wybieramy, umieszczając ją między odwróconymi przecinkami.

Filemode: Otwórz plik w tym trybie, jeśli podana jest nazwa pliku - „a” jest domyślnie, ale „w” może być również napisane. Wskazuje to tryb domyślny, w którym plik jest tworzony, czyli tryb dołączony. Możemy jednak alternatywnie otworzyć plik w trybie zapisu, pisząc „W”. Plik można otworzyć w trybie zapisu, najpierw pisanie „filemode”, a następnie używając znaku równości („=”), a następnie pisząc „W” pomiędzy odwróconymi przecinkami. Wcześniejsze dane są również widoczne w pliku po otwarciu go w trybie dołączonym, ale zostaną usunięte po otwarciu w trybie zapisu.

Poziom: Ustaw poziom rejestratora głównego zgodnie z żądaniem. Istnieją różne poziomy, takie jak poziom „informacyjny”, poziom „debugowania”, poziom „ostrzeżenia”, poziom „błędu” i poziom „krytyczny”.

format: Użyj sznurka formatu wybranego obsługi. Dane przechowywane w pliku dziennika mają określony format, ponieważ odpowiednio je ustawiamy.

DATEFMT: Użyj formatu daty i godziny, który został zdefiniowany w „czasie.strftime () ”. Opisaliśmy format daty i godziny w prostych słowach.

Styl: Użyj tego stylu dla ciągów formatu, jeśli format jest dostarczany z „%”, „” lub „$” dla drukowania, STR.odpowiednio format () lub ciąg. Odpowiedni szablon jest zwykle ustawiony na „%”.

Istnieje wiele innych parametrów oprócz tych, takich jak „Stream”, „Handlers” i „Force”, ale nie będziemy ich używać w tym kontekście.

Poziomy rejestrowania

Biblioteka standardowa Python zawiera również moduł rejestrowania. Musimy tylko zaimportować rejestrowanie, aby zacząć. Istnieje pięć wspólnych poziomów rejestrowania, które domyślnie reprezentują znaczenie zdarzeń. Te poziomy to:

  1. NoteSet - Jego poziom w numerycznym wynosi 0
  2. ODPLUSKWIĆ - Jego poziom w numerze wynosi 10
  3. Informacje - Jego poziom w numerze wynosi 20
  4. OSTRZEŻENIE - Jego poziom w numerze wynosi 30
  5. BŁĄD - Jego poziom w numerze 40
  6. KRYTYCZNY - Jego poziom w numerze 50

Nasz poziom jest domyślnie ustawiony na „30”, który jest w kategorii „ostrzeżenie”. Możemy wyświetlić „ostrzeżenie”, „błąd” i „krytyczny” w naszym pliku dziennika, ponieważ nasz domyślny zestaw poziomów to „30”, co jest „ostrzeżeniem”. Ale nie możemy wyświetlać „debugowania” i „informacji”. Aby wyświetlić „informacje” i „debugowanie”, musimy najpierw zmienić poziom na „debugowanie”, w którym wprowadzane są wszystkie dane powyżej tego poziomu. W tej chwili poziom jest ostrzeżeniem, więc wszystkie dane powyżej tego poziomu są wprowadzane.

Zacznijmy teraz wprowadzać skrypt. Najpierw importujemy rejestr, co oznacza, że ​​wszystko z modułu rejestrowania jest importowane. Następnie w poniższym wierszu używamy „rejestrowania.debuguj ”i przekazuj wiadomość„ To jest przesłanie debugowania ”w nawiasie. Następnie w poniższym wierszu używamy „rejestrowania.informacje ”i przekazuj wiadomość„ To jest wiadomość informacyjna ”. Oba są setlevels, ale nie pojawią się w konsoli, ponieważ poziom domyślny to „30”, co jest „ostrzeżeniem”. W rezultacie konsola pokazuje powyższe dane z ostrzeżenia, którego poziomy liczbowe to „40” i „50”.

Widać, że nie wyświetli niczego na wyjściu, ponieważ używamy poziomu „debugowania” i „informacji”. Poziom został ustawiony na „ostrzeżenie” domyślnie „Poziom 30”.

Wiadomość „To jest wiadomość ostrzegawcza” została dostarczona do „rejestrowania.Ostrzeżenie ”w drugiej części kodu, w której teraz używamy pozostałych poziomów rejestrowania. Następnie w poniższym wierszu używamy „rejestrowania.błąd ”i przekazuj frazę„ To jest komunikat o błędzie ”w swoich nawiasach. Następnie używamy „rejestrowania.krytyczne ”i przekazuj frazę„ Użytkownicy są w trudnościach ”w swoich nawiasach. Teraz, kiedy wykonujemy ten skrypt, wyświetla on ostrzeżenie, błąd i krytyczne komunikaty, ponieważ domyślna setlevel to „30”, co jest ostrzeżeniem. Nie wyświetla wiadomości debugowania ani informacyjnych, ponieważ są one poniżej poziomu ostrzegawczego.

Teraz, gdy wyświetlany jest domyślny tekst, jak widać na następującym obrazie, jest wyświetlany w pliku dziennika. Dlatego pokazano tutaj „ostrzeżenie”, „błąd” i „krytyczne”. „Root” to nazwa loggera. Następnie pokazano wiadomość. Wyjaśniliśmy, dlaczego poziomy „debugowania” i „informacji” nie są wyświetlane w poprzednim wyjaśnieniu.

Aby przechowywać lub wyświetlać wszystkie powyższe dane z debugowania, w tym „Debug”, „Info”, „Ostrzeżenie”, „Błąd” i „Krytyczne”, teraz ustawiamy poziom „debugowania”, aby wyświetlić powyższe dane z debugowania. Ponieważ użyliśmy „rejestrowania.BasicConfig ”w tym celu i podał debugowanie„ poziom = ”jako jego wartość, wyjście wyświetla teraz wszystkie poziomy i komunikaty:

Wyjście z powodzeniem pokazuje wszystkie poziomy. Pokazane są dane powyżej debugowania, nazwy poziomów są pokazane, najpierw logger to root, a następnie pokazano komunikaty.

Teraz pokazujemy, jak sformatowane są wiadomości. Format przyjmuje ciąg z dowolną kombinacją właściwości Logrecord. W następnym kroku podaliśmy format tego samego skryptu. W tym celu po zaimportowaniu rejestrowania używamy „formatu dziennika” w następującym wierszu. Następnie używamy ciągu z atrybutami „Logrecord” w kolejności, którą lubimy. Po pierwsze, używamy „Asctime”. Ponieważ jest w ciągu, używamy „S”. I używamy symbolu procentowego, ponieważ używamy stylu procentowego. Następnie używamy „Nazwa poziomu”, która wyświetla nazwę poziomu. Następnie używamy „nazwy”, która wyświetla nazwę logger. Następnie używamy „lineno”, które wyświetla liczbę linii. Wykonajmy teraz skrypt.

Pokazuje formatowanie określone w skrypcie. Data i godzina zostały najpierw wyświetlone, a następnie nazwy poziomów, pierwszy poziom to „debugowanie” i nazwa loggera „root”. Po tym wyświetla „7” jako numer linii przed wyświetleniem wiadomości, ponieważ, jak widać w poprzednim skrypcie, słowo „debug” jest używane w linii siódmej. Podobne formatowanie wiadomości jest pokazane dla pozostałych poziomów.

Wniosek

W tym artykule omówiliśmy Python Logging Setlevels. Mamy w sumie sześć ustalonych poziomów i rozmawialiśmy o pięciu z nich: „debugowaniu”, „informacji”, „ostrzeżenia”, „błędu” i „krytycznych”. Nasz poziom jest domyślnie ustawiony na „30”, czyli ostrzeżenie poziomu, więc wyświetla dane powyżej ostrzeżenia. W tym artykule omówiliśmy, że możemy również wyświetlić dane „debugowania” i powyżej z debugowania, ustawiając poziom podstawowy konfig na debugowanie. Dodatkowo omówiliśmy, jak sformatować wiadomości na różnych poziomach za pomocą atrybutów „Logrecords”.