import logging
from logging import handlers# 日志记录
class Logger(object):
level_relations = {
'debug': logging.DEBUG,
'info': logging.INFO,
'warning': logging.WARNING,
'error': logging.ERROR,
'crit': logging.CRITICAL
} # 日志级别关系映射 def __init__(self, filename, level='info', when='D', backCount=3,
fmt='%(asctime)s - %(pathname)s[line:%(lineno)d] - %(levelname)s: %(message)s'):
self.logger = logging.getLogger(filename)
format_str = logging.Formatter(fmt) # 设置日志格式
self.logger.setLevel(self.level_relations.get(level)) # 设置日志级别
sh = logging.StreamHandler() # 往屏幕上输出
sh.setFormatter(format_str) # 设置屏幕上显示的格式
th = handlers.TimedRotatingFileHandler(filename=filename, when=when, backupCount=backCount,
encoding='utf-8') # 往文件里写入#指定间隔时间自动生成文件的处理器
# 实例化TimedRotatingFileHandler
# interval是时间间隔,backupCount是备份文件的个数,如果超过这个个数,就会自动删除,when是间隔的时间单位,单位有以下几种:
# S 秒
# M 分
# H 小时、
# D 天、
# W 每星期(interval==0时代表星期一)
# midnight 每天凌晨
th.setFormatter(format_str) # 设置文件里写入的格式
self.logger.addHandler(sh) # 把对象加到logger里
self.logger.addHandler(th) file = 'all'
try:
file = __file__.split("/")[-1]
except Exception as e:
pass
log = Logger('%s.log' % file)
logger = log.logger

python记录日志的更多相关文章

  1. python 记录日志logging

    在项目开发中,往往要记录日志文件.用python记录日志有两种方式: 1.利用python 自带的logging库,例如: # -*- coding: utf-8 -*- import osimpor ...

  2. 一篇文章教你如何用 Python 记录日志

    前言: 这篇文章是我copy别人的,但是个人认为讲的真的很细致,有原理有实例,不仅仅只教你如何使用日志更会叫你知道日志的原理,真的非常棒,虽然文章很长,也许你不会认认真真读完, 但是当你遇到问题时这篇 ...

  3. Python记录日志模块推荐-loguru!

      作者:小张学Python 本文链接: https://mp.weixin.qq.com/s/dkNkEohPl6H2VopUrpxxZg 转载请注明来源!! 前言 在做项目的时候一直在用Pytho ...

  4. Python 记录日志文件

    1.打印到控制台 # -*- coding: UTF-8 -*- import logging def logFileTest(): logging.debug('This is debug') lo ...

  5. Flask项目之手机端租房网站的实战开发(三)

    说明:该篇博客是博主一字一码编写的,实属不易,请尊重原创,谢谢大家! 接着上一篇博客继续往下写 :https://blog.csdn.net/qq_41782425/article/details/8 ...

  6. Python logging记录日志

    Python logging记录日志 调试的几种方法: 使用print()在控制台上输出 使用assert断言 使用logging模块 logging提供了一组便利的函数,用来做简单的日志,(当然也能 ...

  7. 在 python 项目中如何记录日志

    一. 概述 写本文的目的是我在写 python 项目的时候需要记录日志,我忘记怎么处理了,每次都需要去网上查一遍,好记性不如烂笔头, 这里把查阅的内容记录下来,方便以后查找. python 项目中记录 ...

  8. [Python]logging模块使用basicConfig后记录日志重复问题

    logging.basicConfig配置日志记录到文件A后,再使用logging.FileHandler生成记录到文件B的logger 在使用此logger记录日志时,会同时记录的文件A和文件B,感 ...

  9. 用python.twisted.logfile每天记录日志,并用不记录stdout中的内容

    #导入的头 from twisted.python import logfrom twisted.python.logfile import * #开始记录,输入日志名和存放的路径,setStdout ...

随机推荐

  1. pod详解

    什么是pod? 官方说明: Pod是Kubernetes应用程序的最基本执行单元-是你创建或部署Kubernetes对象模型中的最小和最简单的单元. Pod表示在集群上运行的进程.Pod封装了应用程序 ...

  2. 什么时候选择mmap而非read?

    mmap 和 read 系统流程 在linux文件系统中,通常使用open(), read()读取文件,但操作系统同样提供了mmap()作为读取文件的方式,而这两者有什么不同呢?什么时候用read() ...

  3. jQuery+AJAX实现纯js分页功能

    使用jQuery的AJAX技术,在bootstrap的框架下搭建的纯js分页 bootstrap作为Twitter推的一款前端框架,效果个人还是觉得很不错的.这次只是拿来作为网页元素的css样式表使用 ...

  4. 【小白向】基于Docker使用Gogs,Drone以及drone-runner-docker的自动化部署

    Gogs是基于Go语言编写的可以替代gitlab的代码托管平台,它没有gitlab那么庞大且不需要占用大量资源,对小型服务器相对于比较友好,我们甚至可以使用树莓派搭建. 服务器配置: * 操作系统:C ...

  5. C#-CHTTPDownload

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  6. layui中的分页laypage

    1.html部分 <div id="test1"></div> 2.js部分: <script src="/static/build/lay ...

  7. PHP解压压缩包文件到指定目录的实现

    $src_file为文件路径,上传文件返回压缩包路径即可 public function unzip($src_file, $dest_dir=false, $create_zip_name_dir= ...

  8. leecode之Implement strStr()

    KMP算法的实现: #include <stdio.h> #include <string.h> #include <stdlib.h> int strStr(ch ...

  9. 结对项目:求交点pro

    [2020 BUAA 软件工程]结对项目作业 项目 内容 课程:北航2020春软件工程 博客园班级博客 作业:阅读并撰写博客回答问题 结对项目作业 我在这个课程的目标是 积累两人结对编程过程中的经验 ...

  10. [DB] 数据库的连接

    概述 集合运算:交,差,并,笛卡尔积 关系运算:选择,投影,连接,除 集合运算是关系运算的基础,关系运算可以用SQL语句表达 连接(join):从两个关系(表)的笛卡儿积中选取属性(列)间满足一定条件 ...