logging.
DEBUG
logging.
basicConfig
(**kwargs)datefmt
Формат строки даты в логах
level
Уровень логирования,
logging.DEBUG
,logging.ERROR
, …
filename
filemode
format
Форматирование сообщения в логе
asctime - время создания сообщения в логах
levelname - имя уровня логирования (DEBUG, ERROR, …)
message - пользовательское сообщение
name - имя логгера, по умолчанию root
process - номер процесса
logging.basicConfig(
filename='log.log',
filemode='w',
format='%(name)s - %(levelname)s - %(message)s',
level=logging.DEBUG,
datefmt='%d-%b-%y %H:%M:%S',
)
logging.error('Error message')
# root - ERROR - Error message
logging.
critical
(msg: str)logging.critical('Critical message')
# CRITICAL:root:Critical message
logging.
debug
(msg: str)logging.debug('Debug message')
logging.
getLogger
(logger_name: str)Возвращает logging.Logger()
.
logger = logging.getLogger('my_logger')
logger.warning('Warning message')
# WARNING:my_logger:Warning message
logger = logging.getLogger(__name__)
logger.warning('Warning message')
# WARNING:__main__:Warning message
logging.
error
(msg: str, exc_info=False)Логирование ошибок.
exc_info
Вывести и трейсбек ошибки, аналогично
logging.exception()
logging.error('Error message')
# ERROR:root:Error message
logging.error('Error message', exc_info=True)
# ERROR:root:Error message
Traceback (most recent call last):
File "script.py", line 16, in <module>
c = a / b
ZeroDivisionError: division by zero
[Finished in 0.1s]
logging.
exception
(msg: str)Логирование ошибки с отладочной информацией
logging.exception('Error message')
# ERROR:root:Error message
Traceback (most recent call last):
File "script.py", line 16, in <module>
c = a / b
ZeroDivisionError: division by zero
[Finished in 0.1s]
logging.
info
(msg: str)logging.info('Info message')
logging.
warning
(msg: str)logging.warning('Warning message')
# WARNING:root:Warning message
logging.
FileHandler
(file_name: str)file_handler = logging.FileHandler('log.log')
setFormatter
()setLevel
()logging.
Formatter
Формат сообщения лога
fmt = logging.Formatter('%(name)s %(message)s')
logging.
Handler
setLevel
(lvl)Устанавливает уровень логирования
handler.setLevel(logging.DEBUG)
setFormatter
(fmt: Formatter)Устанавливает формат записи лога
handler.setFormatter(logging.Formatter('%(name)s %(message)s'))
logging.
Logger
Объект логгер, который можно получить через getLogger()
logger = logging.getLogger(__name__)
handler = logging.StreamHandler()
handler.setLevel(logging.DEBUG)
handler.setFormatter(logging.Formatter('%(name)s - %(message)s')
logger.addHandler(handler)
addHandler
(handler: Handler)Добавляет обработчик в логгер
handler = logging.StreamHandler()
handler.setLevel(logging.DEBUG)
handler.setFormatter(logging.Formatter('%(name)s - %(message)s')
logger.addHandler(handler)
logging.
LogRecord
logging.
StreamHandler
stream_handler = logging.StreamHandler()
setFormatter
()setLevel
()