Python日志打印

简单示例

import sys
import ctypes
import logging
import logging.handlers


reload(sys)
sys.setdefaultencoding('utf-8')

LOG_FILE = 'test_log'

logging.basicConfig(
                filename = LOG_FILE,
                format = '%(asctime)s - %(levelname)s -%(process)d- %(filename)s:%(funcName)s:%(lineno)d - %(message)s',
                level = logging.DEBUG)
logging.handlers.TimedRotatingFileHandler(LOG_FILE, when='W0', backupCount=5)
logger = logging.getLogger(__name__)


if __name__ == "__main__":
    logger.info("hello info")
    logger.error("hello info")
    logger.warn("hello info")


在filename的位置 可以填 相对位置 ,也可以填绝对位置 。

这个format = ‘%(asctime)s - %(levelname)s -%(process)d- %(filename)s:%(funcName)s:%(lineno)d - %(message)s  信息比较全,其他还有

 %(levelno)s: 打印日志级别的数值
 %(levelname)s: 打印日志级别名称
 %(pathname)s: 打印当前执行程序的路径,其实就是sys.argv[0]
 %(filename)s: 打印当前执行程序名
 %(funcName)s: 打印日志的当前函数
 %(lineno)d: 打印日志的当前行号
 %(asctime)s: 打印日志的时间
 %(thread)d: 打印线程ID
 %(threadName)s: 打印线程名称
 %(process)d: 打印进程ID
 %(message)s: 打印日志信息

用 info和 error 不用的方法打印日志,便于快速找到出错情况。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。