Python之日志操作

目录

1、日志文件

2、使用方法

2.1、在需要打印日志和保存日志的py文件中,引入日志文件

2.2、实例化日志类

2.3、在需要打印日志或保存日志的地方引用

2.4、执行结果


1、日志文件

logfile.py代码如下,可直接运行,复制粘贴即可使用

# logger.py
'''
1、创建logging.Logger()实例
2、创建文件名:路径+日期+.log
3、设置日志格式
4、创建输出到控制台handler,设置日志级别及格式
5、创建输处到日志文件的handler,设置日志级别及格式
6、将输出到控制台及日志文件的handler添加到logger()实例对象中
'''
import logging
import time
import os


class MyLogging:

    def __init__(self):
        timestr = time.strftime('%Y%m%d%H%M%S', time.localtime(time.time()))
        lib_path = os.path.abspath(os.path.join(os.path.dirname(__file__), '../result/log'))
        filename = lib_path + '/' + timestr + '.xls'  # 日志文件的地址
        # print(filename)
        self.logger = logging.getLogger()  # 定义对应的程序模块名name,默认为root
        self.logger.setLevel(logging.DEBUG)  # 必须设置,这里如果不显示设置,默认过滤掉warning之前的所有级别的信息
        # 设置格式对象
        formatter = logging.Formatter(
            "%(asctime)s %(filename)s[line:%(lineno)d]%(levelname)s - %(message)s")  # 定义日志输出格式

        sh = logging.StreamHandler()  # 日志输出到屏幕控制台
        sh.setLevel(logging.INFO)  # 设置日志等级
        sh.setFormatter(formatter) # 设置handler的格式对象

        fh = logging.FileHandler(filename=filename)  # 向文件filename输出日志信息
        fh.setLevel(logging.INFO)  # 设置日志等级
        fh.setFormatter(formatter) # 设置handler的格式对象

        # 将handler增加到logger中
        self.logger.addHandler(sh)
        self.logger.addHandler(fh)


if __name__ == "__main__":
    log1 = MyLogging().logger
    log1.debug("debug")
    log1.info("111111111")
    log1.warning("warning")
    log1.error("error")
    log1.critical("critical")

2、使用方法

2.1、在需要打印日志和保存日志的py文件中,引入日志文件

import logfile

2.2、实例化日志类

loger=logfile.MyLogging().logger

2.3、在需要打印日志或保存日志的地方引用

loger.info('开始执行第【 %s 】条数据:' % data)

# 上方中data是一个变量,如Excel中的一条数据,或执行结果等

2.4、执行结果

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值