logging还能这样用?

栏目: Python · 发布时间: 7年前

内容简介:大家在开发过程中,除了编写应有的项目代码,有时候需要记录相应的接口及数据操作记录。你可以自己通过with open方法自己写入文件,进行记录。不过这方法较为麻烦,而且需要自己做好日志记录的格式等诸多问题。还有一些开发经验丰富的人,可能会直接使用logging这个内置方法,进行日志记录,但是这个logging的方法又较为死板。这时我们想要做一些简单的定制时,就可以对logging 进行封装,比如把console输出的同时能够写入文件一份,以下代码就是,满足这个需求的自我定制版,大家可以看看。

大家在开发过程中,除了编写应有的项目代码,有时候需要记录相应的接口及数据操作记录。

你可以自己通过with open方法自己写入文件,进行记录。不过这方法较为麻烦,而且需要自己做好日志记录的格式等诸多问题。

还有一些开发经验丰富的人,可能会直接使用logging这个内置方法,进行日志记录,但是这个logging的方法又较为死板。这时我们想要做一些简单的定制时,就可以对logging 进行封装,比如把console输出的同时能够写入文件一份,以下代码就是,满足这个需求的自我定制版,大家可以看看。

import os
import time
import logging
 
class Log(object):
    logger = None
    cur_path = os.path.dirname(os.path.realpath(__file__))
    log_path = os.path.join(cur_path, 'logs')
    log_format = '%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s'
 
    # 如果路径不存在,就创建路径
    if not os.path.exists(log_path): os.mkdir(log_path)
 
    file_name = '{}/{}.log'.format(log_path,time.strftime("%Y_%m_%d"))
 
    def __init__(self, file_name=file_name, level=logging.INFO, name=__file__):
        # 设置 log格式和等级
        logging.basicConfig(format=self.log_format, level=level)
        console = logging.FileHandler(filename=file_name)
        console.setLevel(logging.INFO)
        formatter = logging.Formatter(self.log_format)
        console.setFormatter(formatter)
 
        # 将定义好的console日志handler添加到root logger
        logging.getLogger('').addHandler(console)
        self.logger = logging.getLogger(name=name)
 
    def get_logger(self):
        return self.logger
if __name__ == '__main__':
    log = Log().get_logger()
    log.info(msg="info测试信息")
    log.warning(msg="warning测试信息")
 

以上操作完时候,我们的会在此 python 文件同等路径下创建出一个log文件夹,文件夹下会有日志文件:xx-xx-xx.log文件。 欢迎大家访问我的博客: bigyong.cn

欢迎大家关注我的公众号:

logging还能这样用?

#####         如果我的文档给您提供了帮助,请点击一下页面广告,给个支持! #####如有需要沟通的,请直接评论或者是邮件沟通。欢迎小主关注我的微信公众号:BigYoung成长之路,微信搜索可关注。如想交个朋友,可直接加入我的QQ群:615870353;或者加入我的知识星球:ID:45959491

BigYoung版权所有,转载请邮件(Mr_wang_yang@163.com)获取授权,并注明转自:http://www.bigyoung.cn/1064.html


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

数据结构与算法分析

数据结构与算法分析

韦斯(Mark Allen Weiss) / 机械工业出版社 / 2010-8 / 45.00元

《数据结构与算法分析:C语言描述》曾被评为20世纪顶尖的30部计算机著作之一,作者在数据结构和算法分析方面卓有建树,他的数据结构和算法分析的著作尤其畅销,并受到广泛好评,已被世界500余所大学选作教材。 在《数据结构与算法分析:C语言描述》中,作者精炼并强化了他对算法和数据结构方面创新的处理方法。通过C程序的实现,着重阐述了抽象数据类型的概念,并对算法的效率、性能和运行时间进行了分析。 ......一起来看看 《数据结构与算法分析》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

在线进制转换器
在线进制转换器

各进制数互转换器

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试