我試圖根據它的類來重新設置發送到記錄器的輸出數據的格式。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