格式化参数说明
属性名称 | 格式 | 描述 |
---|
asctime | %(asctime)s | 表示易读的LogRecord生成时间。 默认形式为 ‘2003-07-08 16:49:45,896’ (逗号之后的数字为时间的毫秒部分)。 |
filename | %(filename)s | pathname 的文件名部分。 |
funcName | %(funcName)s | 函数名包括调用日志记录。 |
levelname | %(levelname)s | 消息文本记录级别(‘DEBUG’,‘INFO’,‘WARNING’,‘ERROR’,‘CRITICAL’)。 |
levelno | %(levelno)s | 消息数字的记录级别 (DEBUG, INFO, WARNING, ERROR, CRITICAL)。 |
lineno | %(lineno)d | 发出日志记录调用所在的源行号(如果可用)。 |
message | %(message)s | 记入日志的消息,即 msg % args 的结果。 这是在发起调用 Formatter.format() 时设置的。 |
module | %(module)s | 模块 (filename 的名称部分)。 |
msecs | %(msecs)d | LogRecord 被创建的时间的毫秒部分。 |
name | %(name)s | 用于记录调用的日志记录器名称。 |
pathname | %(pathname)s | 发出日志记录调用的源文件的完整路径名(如果可用)。 |
process | %(process)d | 进程ID(如果可用) |
processName | %(processName)s | 进程名(如果可用) |
relativeCreated | %(relativeCreated)d | 以毫秒数表示的 LogRecord 被创建的时间,即相对于 logging 模块被加载时间的差值。 |
thread | %(thread)d | 线程ID(如果可用) |
threadName | %(threadName)s | 线程名(如果可用) |
args | 此属性不需要用户进行格式化。 | 合并到 msg 以产生 message 的包含参数的元组,或是其中的值将被用于合并的字典(当只有一个参数且其类型为字典时)。 |
exc_info | 此属性不需要用户进行格式化。 | 异常元组(例如 sys.exc_info)或者如未发生异常则为 None。 |
msg | 此属性不需要用户进行格式化。 | 在原始日志记录调用中传入的格式字符串。 与 args 合并以产生 message,或是一个任意对象 (参见 使用任意对象作为消息)。 |
stack_info | 此属性不需要用户进行格式化。 | 当前线程中从堆栈底部起向上直到包括日志记录调用并引发创建当前记录堆栈帧创建的堆栈帧信息(如果可用)。 |
使用示例
def __register_file_log():
handler = logging.FileHandler(get_log_path(), "a", 'utf-8')
formatter = logging.Formatter(
fmt="%(asctime)s - %(filename)s[line:%(lineno)d] - %(levelname)s: %(message)s",
datefmt="%Y-%m-%d %H:%M:%S"
)
handler.setFormatter(formatter)
handler.setLevel(logging.DEBUG)
logger.addHandler(handler)