我试图根据它的类来重新设置发送到记录器的输出数据的格式。Python日志记录对象
例如:
-
,因为它们是
- 字典
- 串将被打印/列表会自动缩进/美化成html
- 我的自定义类将在个人基础上进行处理,并转换为html
我的问题是发送到格式器的消息始终是一个字符串。该文档特别指出,您可以将对象作为消息发送,但它似乎将对象转换为字符串,然后才能格式化它们。
class MyFormatter(logging.Formatter):
def format(self, record):
#The problem is that record.message is already a string...
...
我在哪里可以处理作为消息发送的对象?
LogRecord不应该包含.message,除非它已被默认格式化程序(或添加.message的costum格式化程序)格式化。也许你有一个多处理程序,或者你从你的派生函数调用Formatter.format(record),这应该是不必要的? – 2010-09-10 21:48:01
你是对的。我没有明确地调用父类的格式(),但是,我没有覆盖默认的__init__,所以我怀疑这与它有关。 – 2010-09-11 08:58:53