Jak korzystać z rejestrowania Django?

Jak korzystać z rejestrowania Django?
Każdy programista napotyka błędy podczas pisania kodu w celu opracowania dowolnej aplikacji. Debugowanie jest używane przez koder do rozwiązania błędów aplikacji. Jego funkcja rejestrowania ułatwia proces debugowania poprzez zapisanie danych wyjściowych błędów, ostrzeżenia i komunikatów informacyjnych w pliku. Wiadomości te pomagają koderom śledzić zdarzenia, zrozumieć przyczynę niechcianego wyjścia i prawidłowo zmodyfikować kod do tworzenia aplikacji bezbłędnej. Python ma wbudowany moduł rejestrowania do wydajniejszego wykonywania zadań związanych z rejestratorem. Django to popularna platforma Pythona, która wykorzystuje wbudowany moduł rejestrowania Pythona do celów debugowania. W tym samouczku można wyjaśnić moduł rejestrowania Pythona w aplikacji Django do celów debugowania.

Różne części rejestrowania Django

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

1. Django Logger
Logger rejestruje zdarzenia podczas wykonywania aplikacji, a rejestrowanie jest wywoływane. Wpisy dziennika są przechowywane w pliku, kategoryzując je w różnych poziomach dziennika. Każdy poziom dziennika wskazuje na nasilenie zdarzeń. Cele tych poziomów dziennika są wspomniane poniżej:

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

2. Django Handler
Głównym zadaniem obsługi jest przekazanie informacji dziennika przechowywanych w pliku dziennika. Moduł rejestrowania zawiera wiele rodzajów obsługi, a wiele z nich można zdefiniować dla tego samego logera.

3. Formatter Django
Służy do sformatowania danych dziennika. Dane obsługi nie można wysyłać bezpośrednio do pliku dziennika, a dane dotyczącego obsługi wymagają ich konwersji za pomocą formattera przed wysłaniem. Formatter przekształca rejestry dziennika w ciąg. Format danych zależy od logiki biznesowej obsługi.

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

Wymagania wstępne

Przed ćwiczeniem scenariusza tego samouczka musisz wykonać następujące zadania:

  1. Zainstaluj wersję Django 3+ na Ubuntu 20+ (najlepiej)
  2. Utwórz projekt Django
  3. Uruchom serwer Django, aby sprawdzić, czy serwer działa poprawnie lub 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 w celu uzyskania dostępu do bazy danych Django. Jeśli wcześniej utworzyłeś użytkownika, nie musisz uruchamiać polecenia.
$ Python3 Zarządzaj.PY CreateSuperuser
  1. Dodaj nazwę aplikacji w Zainstalowany_app część py plik.
Instalowane_apps = [

„LogApp”
]

Ustaw informacje o rejestrowaniu w ustawieniach.py

Otworzyć Ustawienia.py Plik z folderu projektu Django i dodaj następującą zawartość, aby zdefiniować informacje o rejestrowaniu. Właściwości Handlery I rejestraty są ustawione tutaj. Według wartości właściwości rejestrowania, ODPLUSKWIĆ Informacje o rejestrowaniu poziomu będą przechowywane w pliku dziennika o nazwie Djangoapp.dziennik Kiedy aplikacja Django zostanie wykonana.

# Informacje o rejestrowaniu Django
Logowanie =
# Zdefiniuj wersję rejestrowania
'wersja 1,
# Włącz istniejące rejestr
„Disable_existing_loggers”: False,
# Zdefiniuj przewodniki
„Handlers”:
'plik':
„Poziom”: „Debug”,
„Klasa”: „Logowanie.FileHandler ',
„Filename”: „Djangoapp.dziennik',
,
„konsola”:
„Klasa”: „Logowanie.StreamHandler ',
,
,
# Zdefiniuj dzienniki
„Loggers”:
„Django”:
„Handlers”: [„plik”],
„Poziom”: „Debug”,
„Propagacja”: prawda,
,
,

Otworzyć Djangoapp.dziennik plik do sprawdzenia wpisów dziennika są przechowywane w pliku, czy nie.

Ustaw informacje o rejestrowaniu na widokach.py

Informacje o rejestrowaniu 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, Formatory, przewodnicy, I rejestraty części rejestrowania Django są zdefiniowane w konfigurator.dictconfig () metoda. ODPLUSKWIĆ Informacje o rejestrowaniu poziomu będą przechowywane w pliku dziennika o nazwie Djangoapp.dziennik i zostanie wydrukowany w konsoli, gdy aplikacja Django zostanie wykonana. indeks() Funkcja służy do wysyłania prostego tekstu do przeglądarki i display_log () Funkcja jest zdefiniowana, aby wysłać prosty tekst w terminalu i nagłówek do przeglądarki.

wyświetlenia.py

# Zaimportuj moduł rejestrowania
Rejestrowanie importu
# Importuj HTTPRESPESS, aby wysłać dane do przeglądarki
z Django.HTTP Import HTTPRESPESS
# Zdefiniuj konfiguracje rejestrowania
Logowanie.konfigurator.dictconfig (
# Zdefiniuj wersję rejestrowania
'wersja 1,
# Włącz istniejące rejestr
„Disable_existing_loggers”: False,
# Zdefiniuj formy
„Formatters”:
„konsola”:
„Format”: „%(wiadomość) s”
,
'plik':
„Format”: „%(wiadomość) s”
,
# Zdefiniuj przewodniki
„Handlers”:
„konsola”:
„Klasa”: „Logowanie.StreamHandler ',
„Formatter”: „konsola”
,
'plik':
„Poziom”: „Debug”,
„Klasa”: „Logowanie.FileHandler ',
„Formatter”: „Plik”,
„Filename”: „Djangoapp.dziennik'

,
# Zdefiniuj dzienniki
„Loggers”:
„Django”:
„Poziom”: „Debug”,
„Handlers”: [„plik”, „konsola”],



)
# Utwórz obiekt loggerów
logger = logowanie.getLogger („__ name__”)
# Zdefiniuj funkcję dla strony indeksu
indeks def (żądanie):
zwrócić HttPesponse (”

To jest aplikacja Django

")
# Zdefiniuj funkcję dla strony dziennika
def display_log (żądanie):
# Wyślij test!! Komunikat dziennika do standardu
logger.Błąd („Testowanie dziennika Django…”)
zwrócić HttPesponse (”

Komunikat rejestrowania Django

")

Zmodyfikuj zawartość URL.py Plik z następującym skryptem. W skrypcie zdefiniowana jest pusta ścieżka (”) indeks() funkcja widoków i 'dziennik/„Ścieżka służy do wywołania display_log () funkcja widoków.

URL.py

z Django.URL ścieżki importu
Z logapp Import Views
urlpatterns = [
ś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ści tekstowej w terminalu. Wpisy dziennika zostaną dołączone do Djangoapp.dziennik plik.

Wniosek

W tym samouczku pokazano dwa sposoby korzystania z logowania Pythona w aplikacji Django w celu utrzymania informacji o rejestrowaniu poziomu debugowania. Podstawowa koncepcja dotycząca rejestrowania Django ma być rozumiana przez czytelników po przeczytaniu tego samouczka.