1
说我有一个StreamHandler和FileHandler添加到它的根记录器。任何儿童记录器都将继承根记录器。是否有任何方法可以修改子记录器,例如,它以不同的格式保存消息,然后为根记录器配置该消息。按需更改记录器
[<logging.StreamHandler instance at 0x0884B850>, <logging.FileHandler instance at 0x0C7A84E0>
说我有一个StreamHandler和FileHandler添加到它的根记录器。任何儿童记录器都将继承根记录器。是否有任何方法可以修改子记录器,例如,它以不同的格式保存消息,然后为根记录器配置该消息。按需更改记录器
[<logging.StreamHandler instance at 0x0884B850>, <logging.FileHandler instance at 0x0C7A84E0>
您可以附加一个新的处理程序在一个子记录器,它有它自己的格式化程序。
您应该能够创建一个处理程序,该处理程序将与根处理程序相同的文件写入,因为flush操作使用锁定。
handler = logging.FileHandler(filename)
formatter = logging.Formatter(newformat)
handler.setFormatter(formatter)
log = logging.getLogger(yourloggername)
log.setHandler(handler)
log.propagate = False # don't send messages to the root, handle it all here