# 日志收集设置
import logging, os
from logging.handlers import TimedRotatingFileHandler
import datetime

current_dir = os.path.abspath(os.path.dirname(__file__))
parent_dir = os.path.dirname(current_dir)
my_log_path = os.path.join(parent_dir, "./Log")
error_path = os.path.join(parent_dir, "./Log/error")
if not os.path.exists(my_log_path):
os.mkdir(my_log_path)
if not os.path.exists(error_path):
os.mkdir(error_path)
my_report_path = os.path.join(parent_dir, "./Report")
if not os.path.exists(my_report_path):
os.mkdir(my_report_path)

# 定义一个日志收集器
logger = logging.getLogger("guoguo")
# 设置收集器级别,不设定的话,会默认搜集warning及以上级别的日志
logger.setLevel(logging.INFO)
# 设置日志格式
fmt = logging.Formatter("%(filename)s-%(lineno)d-%(asctime)s-%(levelname)s-%(message)s")

# 设置日志输出到控制台
stream_handler = logging.StreamHandler()

# 设置日志输出到文件
file_handler = TimedRotatingFileHandler('Log/{}.log'.format(datetime.datetime.now().strftime('%Y-%m-%d')), when="D", interval=1, backupCount=30, encoding='utf-8')
file_error_handler = TimedRotatingFileHandler('Log/error/{}.log'.format(datetime.datetime.now().strftime('%Y-%m-%d')), when="D", interval=1, backupCount=30, encoding='utf-8')

# 设置控制台和文件的日志输出格式
stream_handler.setFormatter(fmt)
file_handler.setFormatter(fmt)
file_error_handler.setFormatter(fmt)

# 添加过滤条件
err_filter = logging.Filter()
err_filter.filter = lambda record: record.levelno >= logging.WARNING
file_error_handler.addFilter(err_filter)

# 将输出对象添加到logger中
logger.addHandler(file_handler)
logger.addHandler(stream_handler)
logger.addHandler(file_error_handler)
"""
收集日志
logger.info()
logger.debug()
logger.warning()
logger.error()
"""

python将日志生成到文件和控制台的更多相关文章

  1. Python 使用cx_freeze 生成exe文件【转】

    Python 使用cx_freeze 生成exe文件   在python中比较常用的python转exe方法有三种,分别是cx_freeze,py2exe,PyInstaller.py2exe恐怕是三 ...

  2. Python - loguru日志库,高效输出控制台日志和日志记录

    一.安装loguru loguru的PyPI地址为:https://pypi.org/project/loguru/ GitHub仓库地址为:https://github.com/Delgan/log ...

  3. python xlwt模块生成excel文件并写入数据 xlrd读取数据

    python中一般使用 xlwt (excel write)来生成Excel文件(可以控制单元格格式),用 xlrd 来读取Excel文件,用xlrd读取excel是不能对其进行操作的. 1.xlrd ...

  4. Python:Dom生成XML文件(写XML)

    http://www.ourunix.org/post/327.html 在python中解析XML文件也有Dom和Sax两种方式,这里先介绍如何是使用Dom解析XML,这一篇文章是Dom生成XML文 ...

  5. 【jinja2】Python根据模板生成HTML文件并加载进QWebEngineView

    前言 继前文Python在PyQt5中使用ECharts绘制图表中在Python程序中添加网页展示ECharts图表,和Python使用QWebEngineView时报错Uncaught Refere ...

  6. 【Python 代码】生成hdf5文件

    import random from PIL import Image import numpy as np import os import h5py from PIL import Image L ...

  7. python之reportlab生成PDF文件

    项目需要,需要自动生成PDF测试报告.经过对比之后,选择使用了reportlab模块. 项目背景:开发一个测试平台,供测试维护测试用例,执行测试用例,并且生成测试报告(包含PDF和excel),将生成 ...

  8. 日志生成控制文件syslog.conf

    1: syslog.conf的介绍 对于不同类型的Unix,标准UnixLog系统的设置,实际上除了一些关键词的不同,系统的syslog.conf格式是相同的.syslog采用可配置的.统一的系统登记 ...

  9. Python 使用cx_freeze 生成exe文件

    在python中比较常用的python转exe方法有三种,分别是cx_freeze,py2exe,PyInstaller.py2exe恐怕是三者里面知名度最高的一个,但是同时相对来说它的打包质量恐怕也 ...

  10. 【Python】自动生成html文件查看指定目录中的所有图片

    获取本目录下的pic子目录中的所有图片(jpg,png,bmp,gif等,此处以jpg文件为例),然后生成一个image.html文件,打开该html文件即可在浏览器中查看pic子目录中的所有图片. ...

随机推荐

  1. 5、zookeeper应用场景-配置中心原理

    配置中心 使用 zookeeper的特性watcher监听器 工作中有这样的一个场景:数据库用户名和密码信息放在一个配置文件中,应用读取该配置文件,配置文件信息放入缓存 若数据库的用户名和密码改变时候 ...

  2. 我见过最好的.NET/C#图片工具(裁剪、缩放、与加水印)

    付费才能得到的好资源,限今天"免费"领取,月薪超30k必备技能! 资源1:高薪热门[WPF上位机+工业互联网]从零手写实战回复wpf免费领取 资源2:C#+Halcon机器视觉零基 ...

  3. Mac下使用Docker快速布署FastGPT实现AI私有知识库

    FastGPT 是一个基于 LLM 大语言模型的知识库问答系统,提供开箱即用的数据处理.模型调用等能力.同时可以通过 Flow 可视化进行工作流编排,从而实现复杂的问答场景! 官网地址为:https: ...

  4. 什么是k8s中的sidecar模式

    在Kubernetes中,Sidecar模式是一种将辅助容器与主应用程序容器一起部署在同一个Pod中的设计模式.这种模式的目的是将辅助功能与主应用程序解耦,并提供独立发布.能力重用以及共享资源和网络的 ...

  5. shell脚本中常用的自定义函数

    在Shell脚本中,你可以定义各种函数来执行不同的任务.以下是20个常用的自定义函数示例,涵盖了从文件操作.文本处理到系统监控等多个方面: 检查文件是否存在 file_exists() { [ -f ...

  6. 回顾redis底层数据结构

    参考,欢迎点击原文:https://blog.csdn.net/qq_38286618/article/details/102530020 https://www.cnblogs.com/jaycek ...

  7. JSF之Action 与ActionListener的区别

     事件  检验  参数  事件产生  页面跳转  Action  有 无参数,不传入当前控件,有返回值    当铵钮被单击时产生事件.提交表单   返回页面---根据配置文件跳转  ActionLis ...

  8. MapStructPlus 1.2.5 发布,新增 Solon 支持

    MapStructPlus 1.2.5 发布,更新内容如下: fix: 解决 MapConvertMapperAdapter 编译警告问题 feat: 增加 nullValueMappingStrat ...

  9. 引领文旅新体验!3DCAT实时云渲染助力打造“永不落幕”的湾区文采会元宇宙

    2022年11月25日至27日,2022年粤港澳大湾区公共文化和旅游产品(东莞)采购会(简称"湾区文采会")在广东省东莞市文化馆举行. 文采会期间,文采会元宇宙线上虚拟展厅全新亮相 ...

  10. 【IOT安全】ASA5520基本知识和配置

    本文主要介绍ASA5520防火墙的基本知识和配置 环境搭建 Linux eveng 5.17.8-eve-ng-uksm-wg+ #1 SMP PREEMPT Mon May 16 10:08:59 ...