在我的 Django 应用程序中,我设置了日志记录以将所有级别记录到一个文件中,效果很好。
在管理命令期间(并且仅在那里),我也想将(某些级别)记录到控制台。
我如何(动态地)设置日志记录来实现这一点?
这实际上很简单,我所要做的就是为我想要重定向的每个记录器添加一个新的处理程序:
loggernames = [ ... ]
level = logging.DEBUG
handler = logging.StreamHandler()
handler.setLevel(level)
handler.setFormatter(logging.Formatter('%(levelname)s: %(message)s'))
for name in loggernames:
logging.getLogger(name).addHandler(handler)