Автор оригинала: Python Examples.
Регистрация Python – Уровень отладки
Для регистрации линии отладки с помощью журнала Python
- Проверьте, имеет ли логин, по крайней мере, уровень регистрации отладки.
- Используйте MOGUALD.DEBUG () метод, с помощью сообщения, передаваемого в качестве аргумента, чтобы распечатать линию отладки в консоль или файл.
Если уровень регистрации установлен для отладки, то регистратор будет печать или записывать линии отладки в консоль или файл журнала.
Если вы устанавливаете уровень регистрации на информацию, предупреждение, ошибку или критику, то линии отладки не будут записаны в файл журнала.
Порядок уровня регистрации:
DEBUG < INFO < WARNING < ERROR < CRITICAL
Пример 1: LOG LINES DEBUG
В этом примере мы сможем импортировать модуль для ведения журнала, установить уровень регистратора в отладку, а затем использовать метод Debug () для регистрации линии отладки.
Python Program
import logging
#create a logger
logger = logging.getLogger('mylogger')
#set logging level
logger.setLevel(logging.DEBUG)
handler = logging.FileHandler('mylog.log')
# create a logging format
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
handler.setFormatter(formatter)
logger.addHandler(handler)
#write a debug message
logger.debug('This is a DEBUG message')После запуска вышеуказанной программы в mylog.log Файл, вы можете увидеть следующий контент.
Файл журнала – mylog.log
2019-02-25 22:31:40,353 - mylogger - DEBUG - This is an DEBUG message
Пример 2: Журнал только отладочных линий с использованием регистратора Python
Вы можете установить Handler Filter To Grogger для регистрации только линий отладки в файл журнала.
Python Program
import logging
class MyFilter(object):
def __init__(self, level):
self.__level = level
def filter(self, logRecord):
return logRecord.levelno <= self.__level
#create a logger
logger = logging.getLogger('mylogger')
logger.setLevel(logging.DEBUG)
handler = logging.FileHandler('mylog.log')
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
handler.setFormatter(formatter)
#set filter to log only DEBUG lines
handler.addFilter(MyFilter(logging.DEBUG))
logger.addHandler(handler)
#write a debug line to log file
logger.debug('This is a DEBUG message')
logger.info('This is a INFO message')
logger.warning('This is a WARNING message')
logger.error('This is an ERROR message')
logger.critical('This is a CRITICAL message')Вывод консоли
2019-02-26 22:25:05,280 - mylogger - DEBUG - This is a DEBUG message
Только отладочное сообщение было зарегистрировано, но никаких других сообщений, которые не являются информацией, предупреждением, ошибкой и критическими.
Резюме
В этом руководстве примеров Python мы узнали, как использовать отладочную учетную запись библиотеки журнала Python.