Python 更改日志记录中的levelname格式
我想知道如何使用python的日志包更改logrecod中levelname的格式Python 更改日志记录中的levelname格式,python,logging,Python,Logging,我想知道如何使用python的日志包更改logrecod中levelname的格式 formatter = logging.Formatter('%(levelname)-8s %(message)s') 基本上,我想将任何日志名替换为名称的第一个字母。比如说, INFO -> I, WARNING -> W, ERROR -> E, 等等。您可以使用精度字段设置最大字段宽度: formatter = logging.Formatter('%(levelname).1
formatter = logging.Formatter('%(levelname)-8s %(message)s')
基本上,我想将任何日志名替换为名称的第一个字母。比如说,
INFO -> I,
WARNING -> W,
ERROR -> E,
等等。您可以使用精度字段设置最大字段宽度:
formatter = logging.Formatter('%(levelname).1s %(message)s')
.1
将字段宽度设置为最多一个字符,将级别截断为第一个字符:
>>> for level in ('CRITICAL', 'ERROR', 'INFO', 'WARNING', 'DEBUG'):
... print '%(level)-.1s %(message)s' % {'level': level, 'message': 'Hello world!'}
...
C Hello world!
E Hello world!
I Hello world!
W Hello world!
D Hello world!
见:
转换:'s'
含义:字符串(使用
str()
转换任何Python对象)。注:(6)
如果需要完全不同的levelname,请使用logging.addLevelName
logging.addLevelName(logging.DEBUG, 'DETAILED')
logging.addLevelName(logging.INFO, 'GENERAL')
美好的我不知道。1会这样做。令人惊叹的!谢谢使用此选项将
警告
缩短为警告
,以保持日志对齐。