#python #django
#python #django
Вопрос:
Это вопрос Python, но приемлемо решение, специфичное для Django.
Для класса, который я пишу, я хотел бы указать префикс вывода журнала для каждого экземпляра. Я не хочу вмешиваться в назначения ведения журнала, которые были настроены. Это решения, о которых я могу думать:
- создайте новый регистратор в качестве вспомогательного регистратора модуля, перенастроите родительские обработчики на разные форматеры:
mylog.info("foo") => prefixfoo
- создайте класс журнала-оболочки с методами info(), warn() и т. Д., Каждый из которых добавляет префикс перед вызовом обернутого регистратора:
mylog.info("foo")
- сохраните префикс в экземпляре и добавьте вручную:
log.info(self.p "foo")
- создайте функцию добавления префикса, с помощью которой я вручную оборачиваю все вызовы журнала:
log.info(p("foo"))
Очевидно, я предпочитаю решение 1, но я не знаю, как это сделать.
Каково наилучшее решение? Я начинающий программист на Python, поэтому, вероятно, пытаюсь решить неправильную проблему 🙂
Комментарии:
1. Вы смотрели журнал регистрации?
2. @BurhanKhalid нет, но, похоже, он заменяет
logging
, в то время как я хочу интегрироваться с кодом, который уже используетсяlogging
…