日志log

作者: 小二哥很二 | 来源:发表于2019-07-25 20:19 被阅读0次

写自动化测试的时候,都要用的日志模块:

import logging

if __name__ == '__main__':
    logging.basicConfig(level=logging.DEBUG,#日志级别设置format='%(asctime)s %(filename)s [line:%(lineno)d %(levelname)s %(message)s')
# datefmt='%a,%d %b %Y %H:%M:%S',
# filename='mylog.log',
# filemode='w')
# format是日志输出的格式:%(lineno)d为日志的行号,%(levelname)s为日志的等级,%(message)s日志信息# filemode即为日志的读写操作,和excle一样    
    logging.debug(u'这是debug级别日志记录')
    logging.info(u'这是信息级别日志记录')
    logging.warning(u'这是警告级别日子记录')

结果:
2019-05-11 18:08:12,554 BasePage.py [line:221 DEBUG 这是debug级别日志记录
2019-05-11 18:08:12,554 BasePage.py [line:222 INFO 这是信息级别日志记录
2019-05-11 18:08:12,555 BasePage.py [line:223 WARNING 这是警告级别日子记录

----------------------------------------------------------------

import logging
import os
import time

class LogGen():
    def __init__(self,logger):
        self.logger=logging.getLogger(logger)
        self.logger.setLevel(logging.INFO)
        #存放路径
        lt=time.strftime('%Y%m%d%H%M',time.localtime(time.time()))
        logname=os.path.dirname(os.path.abspath('.'))+'\\logs\\'+lt+'.log'
        file=logging.FileHandler(logname)
        file.setLevel(logging.INFO)
        #可以在终端print出来
        consoleh=logging.StreamHandler()
        consoleh.setLevel(logging.INFO)
        #写入数据,设置格式
        formatter=logging.Formatter('%(asctime)s - %(name)s -%(levelname)s - %(lineno)s -%(message)s')
        file.setFormatter(formatter)
        consoleh.setFormatter(formatter)
        self.logger.addHandler(file)
        self.logger.addHandler(consoleh)
# logger.info('hello,first test')
    def getlog(self):
        return self.logger
image.png

PS:觉得这篇文章有用的朋友,多多点赞打赏哦~!

相关文章

网友评论

      本文标题:日志log

      本文链接:https://www.haomeiwen.com/subject/eipkrctx.html