我这里有一个简单的记录器.我不希望levelname是全部大写,而是小写(例如,info而不是默认值INFO).我该如何解决?
import logging
log = logging.getLogger(__name__)
ch = logging.StreamHandler()
ch.setLevel(logging.ERROR)
chformatter = logging.Formatter('%(levelname)s %(message)s')
ch.setFormatter(chformatter)
log.addHandler(ch)
log.error("blah")
Run Code Online (Sandbox Code Playgroud)
查看日志记录模块的文档,您将找到一个函数,可以将任意名称设置为日志记录级别.去那用吧.
>>> log.error("blah")
ERROR blah
>>> logging.addLevelName(logging.ERROR, 'error')
>>> log.error("blah")
error blah
Run Code Online (Sandbox Code Playgroud)
您可以制作自己的格式化程序:
class MyFormatter(logging.Formatter):
def format(self, record):
record.levelname = record.levelname.lower()
return logging.Formatter.format(self, record)
chformatter = MyFormatter('%(levelname)s %(message)s')
ch.setFormatter(chformatter)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1761 次 |
| 最近记录: |