Методы «log» класса Logger
(debug, info, warning, ...) могут принимать аргумент extra
, являющийся словарем, который можно использовать в качестве пользовательских атрибутов. документация гласит:
Второй аргумент ключевого слова extra
, который можно использовать для передачи
словарь, который используется для заполнения __dict__ из LogRecord
создан для регистрации событий с пользовательскими атрибутами. Эти
Пользовательские атрибуты могут быть использованы по вашему усмотрению. Например, они
может быть включен в зарегистрированные сообщения.
В вашем примере мы должны добавить новую информацию в атрибут format
:
logging.basicConfig(
format="%(asctime)s [%(threadName)s %(threadInfo)s] [%(levelname)s] %(message)s",
level=logging.INFO,
handlers=[
logging.FileHandler("{0}/{1}.log".format(logPath, fileName)),
logging.StreamHandler(sys.stdout)
]
)
И мы можем вызвать метод журнала следующим образом:
logging.info("Foo bar baz", extra={'threadInfo': 'SOME INFO'})