复杂日志格式这里给出一个用于格式化字符串的格式变量列表。注意这个列表并不完整,完整的列 表请翻阅 logging 包的官方文档。 格式 | 描述 |
---|
%(levelname)s | 消息文本的记录等级 ('DEBUG' , 'INFO' , 'WARNING' , 'ERROR' , 'CRITICAL' ). | %(pathname)s | 发起日志记录调用的源文件的完整路径(如果可用) | %(filename)s | 路径中的文件名部分 | %(module)s | 模块(文件名的名称部分) | %(funcName)s | 包含日志调用的函数名 | %(lineno)d | 日志记录调用所在的源文件行的行号(如果可用) | %(asctime)s | LogRecord 创建时的人类可读的时间。默认情况下,格 式为 "2003-07-08 16:49:45,896" (逗号后的数字 时间的毫秒部分)。这可以通过继承 :class:~logging.Formatter,并 重载 formatTime() 改变。 | %(message)s | 记录的消息,视为 msg % args |
如果你想深度定制日志格式,你可以继承 Formatter 。 Formatter 有三个需要关注的方法: format() :- 处理实际上的格式。需要一个
LogRecord 对象作为参数,并 - 必须返回一个格式化字符串。
formatTime() :- 控制 asctime 格式。如果你需要不同的时间格式,可以重载这个函数。
formatException() - 控制异常的格式。需要一个
exc_info 元组作为参数,并必须返 回一个字符串。默认的通常足够好,你不需要重载它。
更多信息请见其官方文档。
|