Krajta

Jak používat protokolování Django?

Jak používat protokolování Django?
Každý programátor čelí chybám při psaní kódu pro vývoj jakékoli aplikace. Ladicí program používá kodér k řešení chyb aplikace. Jeho funkce protokolování usnadňuje proces ladění tím, že ukládá výstup chybových, varovných a informačních zpráv do souboru. Tyto zprávy pomáhají kodérům sledovat události, porozumět důvodu nežádoucího výstupu a správně upravit kód pro vytvoření bezchybné aplikace. Python má vestavěný modul protokolování, který umožňuje efektivnější provádění úkolů souvisejících s protokolováním. Django je populární framework pythonu, který pro účely ladění používá vestavěný modul protokolování pythonu. Jak lze modul protokolování pythonu použít v aplikaci Django pro účely ladění, bude vysvětleno v tomto kurzu.

Různé části protokolování Django

Protokolování Django obsahuje čtyři typy konfigurací, které jsou vysvětleny níže.

1. Django Logger
Záznamník zaznamenává události při spuštění aplikace a je vyvoláno protokolování. Položky protokolu jsou uloženy v souboru jejich kategorizací na různých úrovních protokolu. Každá úroveň protokolu označuje závažnost událostí. Účel těchto úrovní protokolu je uveden níže:

  1. LADIT
    Poskytuje nízkoúrovňové systémové informace pro ladění.
  1. INFO
    Poskytuje obecné informace.
  1. CHYBA
    Poskytuje informace o hlavním problému aplikace.
  1. VAROVÁNÍ
    Poskytuje informace o drobném problému aplikace.
  1. KRITICKÉ
    Poskytuje informace o kritickém problému aplikace.

2. Django Handler
Hlavním úkolem obslužné rutiny je přenášet informace protokolu uložené v souboru protokolu. Modul protokolování obsahuje mnoho typů obslužných programů a pro stejný záznamník lze definovat více z nich.

3. Django Formatter
Používá se k formátování dat protokolu. Data obslužné rutiny nelze odeslat přímo do souboru protokolu a data obslužné rutiny vyžadují, aby byla před odesláním převedena pomocí formátovacího nástroje. Formátovací modul převede záznamy protokolu do řetězce. Formát dat závisí na obchodní logice obslužné rutiny.

4. Filtr Django
Používá se k filtrování zpráv protokolu. Není nutné ukládat všechny zprávy protokolu do souboru protokolu. Pro různé zprávy lze použít různé obslužné rutiny a požadované zprávy protokolu lze filtrovat pomocí požadovaných filtrů.

Předpoklady

Před procvičením skriptu tohoto tutoriálu musíte dokončit následující úkoly:

  1. Nainstalujte Django verze 3+ na Ubuntu 20+ (nejlépe)
  2. Vytvořte projekt Django
  3. Spusťte server Django a zkontrolujte, zda server funguje správně nebo ne.

Nainstalujte si aplikaci Django

  1. Spuštěním následujícího příkazu vytvořte aplikaci Django s názvem logapp.
$ python3 spravovat.py startapp logapp
  1. Spuštěním následujícího příkazu vytvořte uživatele pro přístup k databázi Django. Pokud jste uživatele vytvořili dříve, nemusíte tento příkaz spouštět.
$ python3 spravovat.py vytvoří superuživatele
  1. Přidejte název aplikace do INSTALLED_APP část py soubor.
INSTALLED_APPS = [

'logapp'
]

Nastavte v nastavení informace o protokolování.py

Otevři nastavení.py soubor ze složky projektu Django a přidejte následující obsah k definování informací o protokolování. Vlastnosti manipulátory a dřevorubci jsou zde nastaveny. Podle hodnot vlastností protokolování, LADIT informace o úrovni protokolování budou uloženy v souboru protokolu s názvem djangoapp.log kdy bude spuštěna aplikace Django.

# Informace o protokolování Django
PŘIHLÁŠENÍ =
# Definujte verzi protokolování
'version': 1,
# Povolit existující protokolovací nástroje
'disable_existing_loggers': False,
# Definujte obslužné rutiny
'handlers':
'file':
'level': 'DEBUG',
'class': 'logování.FileHandler ',
'filename': 'djangoapp.log ',
,
'řídicí panel':
'class': 'logování.StreamHandler ',
,
,
# Definujte protokolovací nástroje
'loggers':
'django':
'handlers': ['file'],
'level': 'DEBUG',
'propagate': True,
,
,

Otevři djangoapp.log soubor ke kontrole položky protokolu jsou uloženy v souboru nebo ne.

Nastavte informace o protokolování v zobrazeních.py

Informace o protokolování lze definovat také pomocí souboru zobrazení. Otevři pohledy.py soubor z logapp složku a nahraďte obsah následujícím skriptem. V tomto skriptu, formátory, manipulátory, a dřevorubci části protokolování Django jsou definovány v konfigurace.dictConfig () metoda. LADIT informace o úrovni protokolování budou uloženy v souboru protokolu s názvem djangoapp.log a budou vytištěny v konzole při spuštění aplikace Django. index() Funkce se používá k odeslání jednoduchého textu nadpisu do prohlížeče a display_log () funkce je definována pro odeslání jednoduchého textu v terminálu a textu nadpisu do prohlížeče.

pohledy.py

# Importujte protokolovací modul
importovat protokolování
# Importujte HttpResponse a odešlete data do prohlížeče
od djanga.http import HttpResponse
# Definujte konfigurace protokolování
protokolování.konfigurace.dictConfig (
# Definujte verzi protokolování
'version': 1,
# Povolit existující protokolovací nástroje
'disable_existing_loggers': False,
# Definujte formátory
'formatters':
'řídicí panel':
'format': '% (message) s'
,
'file':
'format': '% (message) s'
,
# Definujte obslužné rutiny
'handlers':
'řídicí panel':
'class': 'logování.StreamHandler ',
'formatter': 'console'
,
'file':
'level': 'DEBUG',
'class': 'logování.FileHandler ',
'formatter': 'file',
'filename': 'djangoapp.log '

,
# Definujte protokolovací nástroje
'loggers':
'django':
'level': 'DEBUG',
'handlers': ['file', 'console'],



)
# Vytvořte objekt loggerů
logger = přihlášení.getLogger ('__ name__')
# Definujte funkci pro indexovou stránku
def index (požadavek):
vrátit HttpResponse ("

Toto je aplikace Django

")
# Definujte funkci pro stránku protokolu
def display_log (požadavek):
# Odešlete test!! přihlaste zprávu standardně
záznamník.chyba („Testování protokolu Django…“)
vrátit HttpResponse ("

Zpráva o protokolování Django

")

Upravit obsah souboru adresy URL.py soubor s následujícím skriptem. Ve skriptu je prázdná cesta (”) cesta definována pro volání index() funkce pohledů a 'log /"cesta se používá k volání display_log () funkce pohledů.

adresy URL.py

od djanga.cesta pro import adres URL
ze zobrazení importu logapp
urlpatterns = [
cesta (", zobrazení.index),
cesta ('log /', pohledy.display_log)
]

Spuštěním následující adresy URL zobrazíte indexovou stránku.

http: // localhost: 8000

Spuštěním následující adresy URL zavoláte metodu display_log (), která zobrazí textovou zprávu v prohlížeči a textovou zprávu v terminálu. Položky protokolu budou připojeny k souboru djangoapp.log soubor.

Závěr

V tomto kurzu jsou uvedeny dva způsoby použití protokolování pythonu v aplikaci Django k uchování informací o protokolování na úrovni DEBUG. Očekává se, že základní koncept týkající se protokolování Django čtenáři pochopí po přečtení tohoto tutoriálu.

V systému Windows 10 nefunguje levé tlačítko myši
Pokud používáte speciální myš s notebookem nebo stolním počítačem, ale levé tlačítko myši nefunguje ve Windows 10/8/7 z nějakého důvodu uvádíme několi...
Kurzor při psaní v systému Windows 10 skáče nebo se pohybuje náhodně
Pokud zjistíte, že kurzor myši skáče nebo se pohybuje sám, automaticky, náhodně při psaní v notebooku nebo počítači se systémem Windows, pak vám někte...
Jak obrátit směr posouvání myši a touchpadu ve Windows 10
Myš a Touchpadnejenže usnadňují výpočet, ale jsou efektivnější a méně časově náročné. Nemůžeme si představit život bez těchto zařízení, ale přesto je ...