Автор оригинала: Python Examples.
Регистрация Python – уровень ошибок
Для регистрации линии ошибки с использованием журнала Python,
- Проверьте, имеет ли регистратор регистратора по ошибке журнала.
- Используйте Mogging.Error () Метод, с помощью сообщения, передаваемого в качестве аргумента, чтобы распечатать строку ошибки в файл консоли или журнала.
Если уровень регистрации установлен для отладки, информации, предупреждения или ошибки, то регистратор будет печатать или записывать строки ошибок в консоль или файл журнала.
Если вы устанавливаете уровень ведения журнала для критического, то строки ошибок или более низкие уровни ведения ведения журнала (предупреждение, информация, отладки) не будут записаны в файл журнала.
Порядок уровня регистрации:
DEBUG < INFO < WARNING < ERROR < CRITICAL
Пример 1: строки ошибок журнала
В этом примере мы будем импортировать модуль для ведения журнала, установить уровень регистратора в ошибку, а затем использовать метод ошибки () для регистрации строки ошибки.
Python Program
import logging
#create a logger
logger = logging.getLogger('mylogger')
#set logger level
logger.setLevel(logging.ERROR)
#or set one of the following level
#logger.setLevel(logging.WARNING)
#logger.setLevel(logging.INFO)
#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 error message
logger.error('This is an ERROR message')После запуска вышеуказанной программы в mylog.log Файл, вы можете увидеть следующий контент.
Log file – mylog.file
2019-02-25 22:25:12,473 - mylogger - ERROR - This is an ERROR message
Пример 2: Логи только только ошибки строки с использованием регистратора Python
Вы можете установить Handler Handler Filter для регистрации только линий ошибок в файл журнала.
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.ERROR)
handler = logging.FileHandler('mylog.log')
formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
handler.setFormatter(formatter)
#set filter to log only ERROR lines
handler.addFilter(MyFilter(logging.ERROR))
logger.addHandler(handler)
logger.error('This is an ERROR message')
logger.critical('This is an CRITICAL message')Вывод консоли
2019-02-26 22:13:28,896 - mylogger - ERROR - This is an ERROR message
Только сообщение об ошибке было зарегистрировано, но не критично.
Резюме
В этом руководстве примеров Python мы узнали, как использовать отладочную учетную запись библиотеки журнала Python.
Похожие учебники
- Обработка Python FileNotfoundError.
- Как решить NameError Python: Имя «Регистрация» не определена?
- ModulenotfoundError: нет модуля с именем ‘openpyxl’
- Python TypeError: Метод () принимает 0 позиционных аргументов, но 1 был дан
- Python NameError: Name ‘String’ не определен