Python

Как да използвам регистрирането на Django?

Как да използвам регистрирането на Django?
Всеки програмист се сблъсква с грешки, когато пише код за разработване на всяко приложение. Отстраняването на грешки се използва от кодера за решаване на грешките на приложението. Неговата функция за регистриране улеснява процеса на отстраняване на грешки, като запазва изходните съобщения за грешки, предупреждения и информация в файл. Тези съобщения помагат на кодерите да следят събитията, да разберат причината за нежелания изход и да модифицират правилно кода за създаване на приложение без грешки. Python има вграден модул за регистриране, за да изпълнява по-ефективно задачи, свързани с регистрирането. Django е популярна рамка на python, която използва вградения в Python модул за регистриране за целите на отстраняване на грешки. Как модулът за регистриране на python може да се използва в приложението Django за отстраняване на грешки ще бъде обяснено в този урок.

Различни части на Django Logging

Регистрацията на Django съдържа четири типа конфигурации, които са обяснени по-долу.

1. Django Logger
Регистраторът записва събитията, когато приложението се изпълнява, и регистрирането се извиква. Записите в дневника се съхраняват във файл, като се категоризират в различни нива на дневника. Всяко ниво на регистрационния файл показва тежестта на събитията. Целите на тези регистрационни нива са посочени по-долу:

  1. ДЕБУГ
    Той предоставя системна информация на ниско ниво за отстраняване на грешки.
  1. ИНФОРМАЦИЯ
    Той предоставя обща информация.
  1. ГРЕШКА
    Той предоставя информация за основния проблем на приложението.
  1. ВНИМАНИЕ
    Той предоставя информация за малкия проблем на приложението.
  1. КРИТИЧЕН
    Той предоставя информация за критичния проблем на приложението.

2. Django Handler
Основната задача на манипулатора е да предава информацията от дневника, която се съхранява в регистрационния файл. Модулът за регистриране съдържа много видове манипулатори и множество от тях могат да бъдат дефинирани за един и същи регистратор.

3. Django Formatter
Използва се за форматиране на данните в дневника. Данните на манипулатора не могат да бъдат изпратени директно към регистрационния файл и данните на манипулатора изискват да бъдат преобразувани с помощта на форматиращия инструмент преди изпращане. Форматиращият преобразува регистрационните записи в низа. Форматът на данните зависи от бизнес логиката на манипулатора.

4. Django филтър
Използва се за филтриране на регистрационните съобщения. Излишно е да съхранявате всички регистрационни съобщения в регистрационния файл. Различни манипулатори могат да се използват за различни съобщения и необходимите регистрационни съобщения могат да бъдат филтрирани с помощта на необходимите филтри.

Предпоставки

Преди да практикувате скрипта на този урок, трябва да изпълните следните задачи:

  1. Инсталирайте Django версия 3+ на Ubuntu 20+ (за предпочитане)
  2. Създайте проект на Django
  3. Стартирайте сървъра Django, за да проверите дали сървърът работи правилно или не.

Настройте приложение на Django

  1. Изпълнете следната команда, за да създадете приложение на Django с име logapp.
$ python3 управлява.py startapp logapp
  1. Изпълнете следната команда, за да създадете потребителя за достъп до базата данни на Django. Ако сте създали потребителя преди това, не е необходимо да изпълнявате командата.
$ python3 управлява.py създаваuperuser
  1. Добавете името на приложението в INSTALLED_APP част от py файл.
INSTALLED_APPS = [
..
„logapp“
]

Задайте информацията за регистриране в настройките.py

Отвори настройки.py файл от папката на проекта Django и добавете следното съдържание, за да дефинирате информацията за регистриране. Свойствата на манипулатори и дървосекачи са зададени тук. Според стойностите на свойствата на регистрацията, ДЕБУГ информацията за регистриране на ниво ще се съхранява в лог файл с име djangoapp.дневник когато приложението Django ще бъде изпълнено.

# Информация за регистриране на Django
ВХОД =
# Определете версията за регистриране
'Версия 1,
# Активирайте съществуващите регистратори
'disable_existing_loggers': Невярно,
# Определете манипулаторите
'манипулатори':
'файл':
'level': 'DEBUG',
'class': 'регистрация.FileHandler ',
'име на файл': 'djangoapp.регистрация,
,
„конзола“:
'class': 'регистрация.StreamHandler ',
,
,
# Определете регистраторите
'регистратори':
'django':
'обработчици': ['файл'],
'level': 'DEBUG',
'propagate': Вярно,
,
,

Отвори djangoapp.дневник файл за проверка на записите в дневника се съхраняват във файла или не.

Задайте информацията за регистриране в изгледи.py

Информацията за регистриране може да бъде дефинирана и с помощта на изгледния файл. Отвори мнения.py файл от logapp папка и заменете съдържанието със следния скрипт. В този скрипт, форматиращи устройства, манипулатори, и дървосекачи части от регистрацията на Django са дефинирани в конфиг.dictConfig () метод. ДЕБУГ информацията за регистриране на ниво ще се съхранява в лог файл с име djangoapp.дневник и ще бъде отпечатана в конзолата, когато приложението Django ще бъде изпълнено. индекс () функцията се използва за изпращане на прост текст на заглавие до браузъра и display_log () функцията е дефинирана за изпращане на прост текст в терминала и текст на заглавие към браузъра.

мнения.py

# Импортирайте модула за регистриране
импортиране на регистрация
# Импортирайте HttpResponse, за да изпратите данни до браузъра
от django.http импортиране HttpResponse
# Определете конфигурациите за регистриране
сеч.конфиг.dictConfig (
# Определете версията за регистриране
'Версия 1,
# Активирайте съществуващите регистратори
'disable_existing_loggers': Невярно,
# Определете форматиращите
'форматиращи':
„конзола“:
'format': '% (съобщение) s'
,
'файл':
'format': '% (съобщение) s'
,
# Определете манипулаторите
'манипулатори':
„конзола“:
'class': 'регистрация.StreamHandler ',
'formatter': 'конзола'
,
'файл':
'level': 'DEBUG',
'class': 'регистрация.FileHandler ',
'formatter': 'файл',
'име на файл': 'djangoapp.регистрация

,
# Определете регистраторите
'регистратори':
'django':
'level': 'DEBUG',
'обработчици': ['файл', 'конзола'],



)
# Създайте обекта на регистраторите
logger = регистрация.getLogger ('__ name__')
# Дефинирайте функцията за индексната страница
def index (заявка):
връщане HttpResponse ("

Това е приложение на Django

")
# Дефинирайте функцията за страницата на дневника
def display_log (заявка):
# Изпратете теста!! регистрационно съобщение към стандартното излизане
регистратор.грешка ("Тестване на дневник на Django ...")
връщане HttpResponse ("

Съобщение за регистриране на Django

")

Променете съдържанието на URL адреси.py файл със следния скрипт. В скрипта празният път (”) е дефиниран за извикване на индекс () функция на възгледите и 'дневник /'path се използва за извикване на display_log () функция на изгледите.

URL адреси.py

от django.път за импортиране на URL адреси
от изгледи за импортиране на logapp
urlpatterns = [
път (", изгледи.индекс),
path ('log /', изгледи.display_log)
]

Изпълнете следния URL, за да покажете страницата с индекс.

http: // localhost: 8000

Изпълнете следния URL, за да извикате метода display_log (), който ще покаже текстово съобщение в браузъра и текстово съобщение в терминала. Записите в дневника ще бъдат добавени в djangoapp.дневник файл.

Заключение

Два начина за използване на регистрация на python в приложението Django за запазване на информацията за регистриране на ниво DEBUG са показани в този урок. Основната концепция относно регистрирането на Django се очаква да бъде разбрана от читателите, след като прочетете този урок.

Как да инсталирате и играете Doom на Linux
Въведение в Doom Серията Doom възниква през 90-те години след пускането на оригиналния Doom. Това беше незабавен хит и от този момент нататък серията ...
Vulkan за потребители на Linux
С всяко ново поколение графични карти виждаме, че разработчиците на игри преместват границите на графичната вярност и се приближават една крачка до фо...
OpenTTD срещу Simutrans
Създаването на собствена транспортна симулация може да бъде забавно, релаксиращо и изключително примамливо. Ето защо трябва да сте сигурни, че изпробв...