Python(2.7.6) 标准日志模块的简单示例
Python 标准库中的 logging 模块提供了一套标准的 API 来处理日志信息的打印。import logging
logging.basicConfig(
level = logging.DEBUG,
format = '%(asctime)s [%(threadName)s] (%(filename)s:%(lineno)d) %(levelname)s - %(message)s',
datefmt= '%Y-%m-%d %H:%M:%S',
filename = 'myapp.log',
)
logging.debug('This is a debug message')
logging.info('This is an info message')
logging.warning('This is a warning message')
在 myapp.log 中打印出的日志如下:
2015-03-11 15:54:34 (logging_demo.py:10) DEBUG - This is a debug message
2015-03-11 15:54:34 (logging_demo.py:11) INFO - This is an info message
2015-03-11 15:54:34 (logging_demo.py:12) WARNING - This is a warning message
logging.basicConfig 函数的参数说明:
参数
说明
filename
用户创建 FileHandler 实例的文件名
filemode
日志文件的打开模式,默认为 'a'
format
日志的输出格式
datefmt
时间的输出格式
level
日志级别,大小关系为 CRITICAL(50) > ERROR(40) > WARNING(30) > INFO(20) > DEBUG(10) > NOTSET(0)
stream
用于初始化 StreamHandler 的流,此参数与 filename 一起指定时,会被忽略掉
logging 中的格式化符号:
符号
说明
%(asctime)s
时间
%(filename)s
文件名
%(funcName)s
函数名
%(levelname)s
日志级别值
%(levelno)s
日志级别
%(lineno)d
行号
%(module)s
模块
%(message)s
日志消息
%(name)s
日志名称
%(pathname)s
logger的名称
%(process)d
进程ID
%(processName)s
进程名
%(thread)d
线程ID
%(threadName)s
线程名
页:
[1]