Стандарты для регистрации абстракции в Python? - PullRequest
0 голосов
/ 27 декабря 2018

Я новичок в Python и пишу небольшое приложение, которое потребует регистрации.Я хочу, чтобы приложение было переносимым, позволяя другим администраторам настраивать его поведение - особенно ведение журнала.Характеристики logging lib , по-видимому, контролируются кодом приложения, а не развертыванием / средой.

Java имеет log4j , PHP имеет PSR-3 .Есть ли что-то эквивалентное для Python, которое позволило бы владельцу системы добавить свои собственные возможности регистрации?

1 Ответ

0 голосов
/ 27 декабря 2018

На мой взгляд, лучший способ добиться хорошей гибкости, позволяя администраторам настраивать ваши параметры ведения журнала, - это использовать этот файл конфигурации в файле ini:

[loggers]
keys=root

[handlers]
keys=stream_handler

[formatters]
keys=formatter

[logger_root]
level=DEBUG
handlers=stream_handler

[handler_stream_handler]
class=StreamHandler
level=DEBUG
formatter=formatter
args=(sys.stderr,)

[formatter_formatter]
format=%(asctime)s %(name)-12s %(levelname)-8s %(message)s

После этого вы можете прочитать этоКонфигурация в вашем приложении:

import logging
from logging.config import fileConfig

fileConfig('logging_config.ini')
logger = logging.getLogger()
logger.debug('your debug message')

Вы можете проверить больше здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...