Python

Как использовать ведение журнала Django?

Как использовать ведение журнала Django?
Каждый программист сталкивается с ошибками при написании кода для разработки любого приложения. Отладка используется кодировщиком для устранения ошибок приложения. Его функция ведения журнала упрощает процесс отладки, сохраняя вывод сообщений об ошибках, предупреждениях и информационных сообщениях в файл. Эти сообщения помогают кодировщикам отслеживать события, понимать причину нежелательного вывода и правильно изменять код для создания безошибочного приложения. Python имеет встроенный модуль ведения журнала для более эффективного выполнения задач, связанных с ведением журнала. Django - популярный фреймворк Python, который использует встроенный модуль ведения журнала Python для целей отладки. Как модуль ведения журнала Python можно использовать в приложении Django для целей отладки, будет объяснено в этом руководстве.

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

Ведение журнала Django содержит четыре типа конфигураций, которые описаны ниже.

1. Django Logger
Регистратор записывает события, когда приложение выполняется, и ведение журнала вызывается. Записи журнала хранятся в файле, классифицируя их по разным уровням журнала. Каждый уровень журнала указывает серьезность событий. Цели этих уровней журнала указаны ниже:

  1. ОТЛАЖИВАТЬ
    Предоставляет низкоуровневую системную информацию для отладки.
  1. ИНФОРМАЦИЯ
    Предоставляет общую информацию.
  1. ОШИБКА
    Предоставляет информацию об основной проблеме приложения.
  1. ПРЕДУПРЕЖДЕНИЕ
    Предоставляет информацию о незначительной проблеме приложения.
  1. КРИТИЧЕСКИЙ
    Предоставляет информацию о критической проблеме приложения.

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

3. Django Formatter
Он используется для форматирования данных журнала. Данные обработчика не могут быть отправлены непосредственно в файл журнала, и данные обработчика требуют, чтобы они были преобразованы с помощью средства форматирования перед отправкой. Программа форматирования преобразует записи журнала в строку. Формат данных зависит от бизнес-логики обработчика.

4. Фильтр Django
Он используется для фильтрации сообщений журнала. Нет необходимости хранить все сообщения журнала в файле журнала. Для разных сообщений могут использоваться разные обработчики, а требуемые сообщения журнала могут быть отфильтрованы с помощью требуемых фильтров.

Предпосылки

Перед тем, как практиковать сценарий этого руководства, вы должны выполнить следующие задачи:

  1. Установите Django версии 3+ на Ubuntu 20+ (желательно)
  2. Создайте проект Django
  3. Запустите сервер Django, чтобы проверить, работает ли сервер правильно или нет.

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

  1. Выполните следующую команду, чтобы создать приложение Django с именем logapp.
$ python3 manage.py startapp logapp
  1. Выполните следующую команду, чтобы создать пользователя для доступа к базе данных Django. Если вы создали пользователя раньше, тогда не нужно запускать команду.
$ python3 manage.py создает суперпользователя
  1. Добавьте название приложения в INSTALLED_APP часть ру файл.
INSTALLED_APPS = [

'logapp'
]

Задайте информацию для регистрации в настройках.ру

Открой настройки.ру файл из папки проекта Django и добавьте следующее содержимое для определения информации журнала. Свойства обработчики а также лесорубы установлены здесь. Согласно значениям свойств ведения журнала, ОТЛАЖИВАТЬ информация о регистрации уровня будет храниться в файле журнала с именем djangoapp.бревно когда будет выполнено приложение Django.

# Информация о журнале Django
ЖУРНАЛ =
# Определить версию журнала
'версия': 1,
# Включить существующие регистраторы
disable_existing_loggers: Ложь,
# Определить обработчики
'handlers':
'файл':
'level': 'DEBUG',
'класс': 'ведение журнала.FileHandler ',
'имя файла': 'djangoapp.бревно',
,
'приставка':
'класс': 'ведение журнала.StreamHandler ',
,
,
# Определить регистраторы
'loggers':
'django':
'обработчики': ['файл'],
'level': 'DEBUG',
'распространять': Истина,
,
,

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

Установите информацию журнала в представлениях.ру

Информацию о регистрации можно также определить с помощью файла просмотра. Открой взгляды.ру файл из logapp папку и замените содержимое следующим скриптом. В этом сценарии, форматеры, обработчики, а также лесорубы части ведения журнала Django определены в config.dictConfig () метод. ОТЛАЖИВАТЬ информация о регистрации уровня будет храниться в файле журнала с именем djangoapp.бревно и будет напечатан в консоли при запуске приложения Django. индекс() функция используется для отправки простого текста заголовка в браузер и display_log () функция определена для отправки простого текста в терминал и текста заголовка в браузер.

взгляды.ру

# Импортировать модуль логирования
импорт журнала
# Импортировать HttpResponse для отправки данных в браузер
из джанго.http импорт HttpResponse
# Определить конфигурации журналирования
Ведение журнала.config.dictConfig (
# Определить версию журнала
'версия': 1,
# Включить существующие регистраторы
disable_existing_loggers: Ложь,
# Определить средства форматирования
'formatters':
'приставка':
'формат': '% (сообщение) s'
,
'файл':
'формат': '% (сообщение) s'
,
# Определить обработчики
'handlers':
'приставка':
'класс': 'ведение журнала.StreamHandler ',
'форматировщик': 'консоль'
,
'файл':
'level': 'DEBUG',
'класс': 'ведение журнала.FileHandler ',
'formatter': 'файл',
'имя файла': 'djangoapp.бревно'

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



)
# Создаем объект логгеров
logger = ведение журнала.getLogger ('__ имя__')
# Определить функцию для индексной страницы
def index (запрос):
return HttpResponse ("

Это приложение Django

")
# Определить функцию для страницы журнала
def display_log (запрос):
# Отправить тест!! выводить сообщение на стандартный вывод
регистратор.ошибка («Тестирование журнала Django…»)
return HttpResponse ("

Сообщение журнала Django

")

Измените содержимое URL-адреса.ру файл со следующим скриптом. В сценарии пустой путь (”) путь определен для вызова индекс() функция взглядов и 'бревно/'путь используется для вызова display_log () функция просмотров.

URL-адреса.ру

из джанго.путь импорта URL
из представлений импорта logapp
urlpatterns = [
путь (", просмотров.индекс),
путь ('журнал /', просмотры.display_log)
]

Запустите следующий URL-адрес, чтобы отобразить страницу индекса.

http: // локальный: 8000

Запустите следующий URL-адрес, чтобы вызвать метод display_log (), который отобразит текстовое сообщение в браузере и текстовое сообщение в терминале. Записи журнала будут добавлены в djangoapp.бревно файл.

Заключение

В этом руководстве показаны два способа использования журнала Python в приложении Django для хранения информации журнала уровня DEBUG. Ожидается, что основная концепция ведения журнала Django будет понятна читателям после прочтения этого руководства.

Как показать счетчик FPS в играх для Linux
Игры для Linux получили серьезный толчок, когда Valve объявила о поддержке Linux для клиента Steam и своих игр в 2012 году. С тех пор многие игры AAA ...
Как загрузить и играть в Sid Meier's Civilization VI в Linux
Введение в игру Civilization 6 - это современный подход к классической концепции, представленной в серии игр Age of Empires. Идея была довольно просто...
Как установить Doom и играть в него в Linux
Введение в Doom Серия Doom возникла в 90-х годах после выхода оригинальной Doom. Это мгновенно стал хитом, и с тех пор серия игр получила множество на...