Pyton

Jak korzystać z rejestrowania Django?

Jak korzystać z rejestrowania Django?
Każdy programista napotyka błędy podczas pisania kodu do tworzenia dowolnej aplikacji. Debugowanie jest używane przez kodera do rozwiązywania błędów aplikacji. Jego funkcja rejestrowania ułatwia proces debugowania, zapisując dane wyjściowe komunikatów o błędach, ostrzeżeniach i informacjach w pliku. Te wiadomości pomagają programistom śledzić zdarzenia, zrozumieć przyczynę niechcianych danych wyjściowych i odpowiednio zmodyfikować kod w celu stworzenia bezbłędnej aplikacji. Python ma wbudowany moduł rejestrowania, który umożliwia wydajniejsze wykonywanie zadań związanych z rejestrowaniem. Django to popularny framework Pythona, który wykorzystuje wbudowany moduł logowania Pythona do celów debugowania. W tym samouczku zostanie wyjaśnione, w jaki sposób moduł logowania Pythona może być używany w aplikacji Django do celów debugowania.

Różne części Django Logging

Logowanie Django zawiera cztery typy konfiguracji, które wyjaśniono poniżej.

1. Rejestrator Django
Rejestrator rejestruje zdarzenia, gdy aplikacja jest wykonywana, a rejestrowanie jest wywoływane. Wpisy dziennika są przechowywane w pliku, dzieląc je na różne poziomy dziennika log. Każdy poziom dziennika wskazuje powagę zdarzeń. Cele tych poziomów logów są wymienione poniżej:

  1. ODPLUSKWIĆ
    Zapewnia informacje o systemie niskiego poziomu do debugowania.
  1. INFORMACJE
    Zawiera ogólne informacje.
  1. BŁĄD
    Dostarcza informacji o głównym problemie aplikacji.
  1. OSTRZEŻENIE
    Dostarcza informacji o drobnym problemie aplikacji.
  1. KRYTYCZNY
    Dostarcza informacji o krytycznym problemie aplikacji.

2. Obsługa Django
Głównym zadaniem osoby obsługującej jest przesyłanie informacji z dziennika, które są przechowywane w pliku dziennika. Moduł rejestrowania zawiera wiele typów programów obsługi i wiele z nich można zdefiniować dla tego samego rejestratora.

3. Django Formatter
Służy do formatowania danych dziennika. Dane osoby obsługującej nie mogą być wysyłane bezpośrednio do pliku dziennika, a dane osoby obsługującej wymagają ich przekonwertowania za pomocą programu formatującego przed wysłaniem. Program formatujący konwertuje rekordy dziennika na ciąg. Format danych zależy od logiki biznesowej handlera.

4. Filtr Django
Służy do filtrowania komunikatów dziennika. Nie jest konieczne przechowywanie wszystkich komunikatów dziennika w pliku dziennika. Różne programy obsługi mogą być używane do różnych komunikatów, a wymagane komunikaty dziennika można filtrować za pomocą wymaganych filtrów.

Warunki wstępne

Zanim zaczniesz ćwiczyć skrypt tego samouczka, musisz wykonać następujące zadania:

  1. Zainstaluj Django w wersji 3+ na Ubuntu 20+ (najlepiej)
  2. Utwórz projekt Djangogo
  3. Uruchom serwer Django, aby sprawdzić, czy serwer działa poprawnie, czy nie.

Skonfiguruj aplikację Django

  1. Uruchom następujące polecenie, aby utworzyć aplikację Django o nazwie logapp.
$ python3 zarządzaj.py startapp logapp
  1. Uruchom następujące polecenie, aby utworzyć użytkownika umożliwiającego dostęp do bazy danych Django. Jeśli utworzyłeś użytkownika wcześniej, nie musisz uruchamiać polecenia.
$ python3 zarządzaj.py tworzy superużytkownik
  1. Dodaj nazwę aplikacji w INSTALLED_APP część py plik.
INSTALLED_APPS = [

„logapp”
]

Ustaw informacje logowania w ustawieniach.py

Otworzyć ustawienia.py plik z folderu projektu Django i dodaj następującą zawartość, aby zdefiniować informacje logowania. Właściwości treserzy i rejestratory są tutaj ustawione. Zgodnie z wartościami właściwości rejestrowania, ODPLUSKWIĆ informacje o logowaniu poziomu będą przechowywane w pliku dziennika o nazwie djangoapp.log kiedy zostanie uruchomiona aplikacja Django.

# Informacje o logowaniu Django
REJESTRACJA =
# Zdefiniuj wersję rejestrowania
'wersja 1,
# Włącz istniejące rejestratory
„disable_existing_loggers”: Fałsz,
# Zdefiniuj obsługę
'prowadzący':
'plik':
'poziom': 'DEBUGOWANIE',
'klasa': 'rejestrowanie.Obsługa plików',
'nazwa pliku': 'djangoapp.log',
,
„konsola”:
'klasa': 'rejestrowanie.Obsługa strumienia',
,
,
# Zdefiniuj rejestratory
'loggery':
'django':
'obsługi': ['plik'],
'poziom': 'DEBUGOWANIE',
'propaguj': Prawda,
,
,

Otworzyć djangoapp.log plik do sprawdzenia, czy wpisy dziennika są przechowywane w pliku, czy nie.

Ustaw informacje o logowaniu w widokach.py

Informacje o logowaniu można również zdefiniować za pomocą pliku widoku. Otworzyć wyświetlenia.py plik z logapp folder i zastąp zawartość następującym skryptem. W tym skrypcie, formatery, handlery, i rejestratory części logowania Django są zdefiniowane w konfiguracja.dictConfig() metoda. ODPLUSKWIĆ informacje o logowaniu poziomu będą przechowywane w pliku dziennika o nazwie djangoapp.log i zostaną wydrukowane w konsoli po uruchomieniu aplikacji Django. indeks() funkcja służy do wysyłania prostego tekstu nagłówka do przeglądarki, a display_log() funkcja jest zdefiniowana do wysyłania prostego tekstu w terminalu i tekstu nagłówka do przeglądarki.

wyświetlenia.py

# Zaimportuj moduł logowania
importuj logowanie
# Importuj HttpResponse, aby wysłać dane do przeglądarki
z django.http import HttpResponse
# Zdefiniuj konfiguracje rejestrowania
Logowanie.konfiguracja.dictConfig(
# Zdefiniuj wersję rejestrowania
'wersja 1,
# Włącz istniejące rejestratory
„disable_existing_loggers”: Fałsz,
# Zdefiniuj formatery
„formatery”:
„konsola”:
'format': '%(wiadomość)s'
,
'plik':
'format': '%(wiadomość)s'
,
# Zdefiniuj obsługę
'prowadzący':
„konsola”:
'klasa': 'rejestrowanie.Obsługa strumienia',
'formater': 'konsola'
,
'plik':
'poziom': 'DEBUGOWANIE',
'klasa': 'rejestrowanie.Obsługa plików',
'formater': 'plik',
'nazwa pliku': 'djangoapp.log'

,
# Zdefiniuj rejestratory
'loggery':
'django':
'poziom': 'DEBUGOWANIE',
'handlers': ['plik', 'konsola'],



)
# Utwórz obiekt rejestratorów
rejestrator = logowanie.getLogger('__nazwa__')
# Zdefiniuj funkcję dla strony indeksu
indeks def(żądanie):
zwróć odpowiedź Http("

To jest aplikacja Django

")
# Zdefiniuj funkcję dla strony dziennika
def display_log(żądanie):
# Wyślij test!! wyloguj wiadomość do standardowego wyjścia
rejestrator.error("Testowanie dziennika Django… ")
zwróć odpowiedź Http("

Wiadomość logowania Django

")

Zmodyfikuj zawartość adresy URL.py plik z następującym skryptem. W skrypcie pusta ścieżka (”) jest zdefiniowana do wywołania indeks() funkcja widoków i 'log/' ścieżka jest używana do wywołania display_log() funkcja widoków.

adresy URL.py

z django.Ścieżka importu adresów URL
z widoków importu logapp
wzory url = [
ścieżka(", widoki.indeks),
ścieżka('log/', widoki.display_log)
]

Uruchom następujący adres URL, aby wyświetlić stronę indeksu.

http://localhost:8000

Uruchom następujący adres URL, aby wywołać metodę display_log(), która wyświetli wiadomość tekstową w przeglądarce i wiadomość tekstową w terminalu. Wpisy dziennika zostaną dołączone w djangoapp.log plik.

Wniosek

W tym samouczku pokazano dwa sposoby korzystania z logowania w Pythonie w aplikacji Django do przechowywania informacji o logowaniu na poziomie DEBUG. Oczekuje się, że czytelnicy po przeczytaniu tego samouczka zrozumieją podstawową koncepcję dotyczącą logowania w Django.

Gry Bitwa o Wesnoth 1.13.6 Wydanie rozwojowe
Bitwa o Wesnoth 1.13.6 Wydanie rozwojowe
Bitwa o Wesnoth 1.13.6 wydana w zeszłym miesiącu jest szóstą wersją rozwojową w 1.13.Seria x i zapewnia szereg ulepszeń, w szczególności w interfejsie...
Gry Jak zainstalować League Of Legends na Ubuntu 14.04
Jak zainstalować League Of Legends na Ubuntu 14.04
Jeśli jesteś fanem League of Legends, to jest okazja do przetestowania League of Legends. Pamiętaj, że LOL jest obsługiwany w PlayOnLinux, jeśli jeste...
Gry Zainstaluj najnowszą grę strategiczną OpenRA na Ubuntu Linux
Zainstaluj najnowszą grę strategiczną OpenRA na Ubuntu Linux
OpenRA to darmowy silnik gier strategicznych czasu rzeczywistego, który odtwarza wczesne gry Westwood, takie jak klasyczny Command & Conquer: Red Aler...