Python日志极简配置

python中用logging实现日志滚动和过期日志删除功能 主要介绍了python中用logging实现日志滚动和过期日志删除功能,本文通过实例代码给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下 立即下载

配置

配置倾向

  • 只输出到文件
  • 按时间轮转,默认7d
  • 日志格式:只记录必要的信息
import logging
from logging.handlers import TimedRotatingFileHandler
from os import path

def init_log_config(
        filename: str,
        *,
        default_dir="/var/log",
        logformat: str = ("[%(levelname)s %(asctime)s %(process)d_%(threadName)s %(filename)s:%(lineno)s:%(funcName)s] "
                          "%(message)s"),
        loglevel: str = "warn",
        backup_count: int = 7,
        encoding="utf-8",
        delay=True,
):
    """
    
    :param filename: 文件名
    :param default_dir: 
    :param logformat: 
    :param loglevel: 
    :param backup_count: 
    :param encoding: 
    :param delay: 
    :return: 
    """
    levelint = {
        "debug": logging.DEBUG,
        "info": logging.INFO,
        "warn": logging.WARN,
        "error": logging.ERROR
    }[loglevel]

    if not filename.startswith("/"):
        filename = path.join(default_dir, filename)

    logging.basicConfig(
        format=logformat,
        level=levelint,
        handlers=[
            TimedRotatingFileHandler(
                filename,
                when="d",
                backupCount=backup_count,
                encoding=encoding,
                delay=delay,
            )
        ]
    )


使用方式

  • 在程序最最最开始的地方开始初始化(我一般放在第一行)
init_log_config("log1.log", loglevel="debug")
import os, sys

    

  • 业务中使用
logging.info("Start Do something")

---------------------------END---------------------------

题外话

感谢你能看到最后,给大家准备了一些福利!

感兴趣的小伙伴,赠送全套Python学习资料,包含面试题、简历资料等具体看下方。


👉优快云大礼包🎁:全网最全《Python学习资料》免费赠送🆓!(安全链接,放心点击)

一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照下面的知识点去找对应的学习资源,保证自己学得较为全面。

img

二、Python兼职渠道推荐*

学的同时助你创收,每天花1-2小时兼职,轻松稿定生活费.
在这里插入图片描述

三、最新Python学习笔记

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。

img

四、实战案例

纸上得来终觉浅,要学会跟着视频一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

img

👉优快云大礼包🎁:全网最全《Python学习资料》免费赠送🆓!(安全链接,放心点击)

若有侵权,请联系删除

非凸问题的求解方法以及连续凸逼近SCA(Successive Convex Approximation)方法 非凸问题的求解方法 针对形如下式的函数: min⁡x∈XV(x)=F(x)+G(x)\min\limits_{{\bf{x}}\in X} V(x)=F(x)+G(x)x∈Xmin​V(x)=F(x)+G(x); 其中F为光滑的(不一定convex),G是convex的但是可能不可微,且存在:对于n维实矢量空间,有X=X1×...×XNX=X_1 \times...\times X_NX=X1​×...×XN​; x=(x1,...,xN)\bf{x} =(x_1,...,x_N)x=(x1​,...,xN 阅读详情

相关推荐

基于Python的高考志愿辅助填报系统

在实际应用中,系统需要处理更复杂的数据,包括更多的高校和专业信息、更详细的录取规则、以及用户的历史选择等。系统需要提供用户友好的界面,让考生输入自己的信息和偏好,然后通过后端的模型计算出推荐的志愿列表。此外,系统还应该提供一些个性化的服务,如根据考生的输入动态调整推荐策略、保存用户的填报历史和偏好等。特征可能包括考生的分数、所在省份、文理科类别、专业偏好、高校的地理位置、排名、专业的就业前景等。3. **推荐逻辑**:根据用户的分数和专业偏好,结合历史录取数据,使用简单的算法来推荐可能录取的高校和专业。

coder_wwwdy的博客 1978

3分钟通过日志定位bug,这个技能测试人必须会

♥ 前 言 软件开发中通过日志记录程序的运行情况是一个开发的好习惯,对于错误排查和系统运维都有很大帮助。 Python 标准库自带了强大的 logging 日志模块,在各种 python 模块中得到广泛应用。 一、简单使用 入门小案例 import logging logging.basicConfig(level=logging.DEBUG, #设置级别,根据等级显示 format='%(asctime)s-[%(filename)s-->line:%(lineno)d]-%(lev.

人生不怕起点低,就怕没追求 5455

【车辆动力学】专栏目录汇总

车辆动力学知识目录汇总

CrazyRabbit的博客 1713

python中log_Python中Log的使用

Python 中的Log模块的使用(1)首先定义公共的log获取方法:#!/usr/bin/pythonimport logging.handlersLEVELS={'debug':logging.DEBUG,'info':logging.INFO,'warning':logging.WARNING,'error':logging.ERROR,'critical':logging.CRITICAL...

weixin_39825872的博客 500

UE4 Instanced Mesh 半透明渲染顺序不对解决

以绿色方块为Instanced Mesh为例。 正确的半透应该是这样的: 这是一般蓝图Actor方块,其半透是正常的。 然而Instanced Mesh因为过多,UE4不给你缓存正确的渲染顺序。所以,在不改代码的情况下,想解决Instanced Mesh半透问题,是不可能的。不正确的半透如下: 注意到错误发生在Instanced Mesh的方块与方块之间。 但我就是要解决,...

qq_41524721的博客 5569

告别抓瞎!手把手教你用Keysight Infinium和M8040完成PCIe 5.0 TX/RX信号完整性测试

本文详细介绍了如何使用Keysight Infinium示波器和M8040误码仪完成PCIe 5.0 TX/RX信号完整性测试。从测试前的设备准备、软件配置到具体的TX信号测试步骤和RX容限测试实战,提供了全面的操作指南和常见问题解决方案,帮助工程师高效完成PCIe 5.0合规性测试。

weixin_30911451的博客 503

python log文件按时间统计_python日志按天分割,保存近一个月日志

import osimport loggingimport refrom logging.handlers import TimedRotatingFileHandlerdef setup_log(log_name):# 创建logger对象。传入logger名字log_ger = logging.getLogger(log_name)log_path = os.path.join(os.getc...

weixin_39768371的博客 642

爬虫小例--爬药监局(上)

”明月如霜,好风如水,清景无限 “ 文远最近也算是爬虫入门吧,相信后面会慢慢熟悉。 壹 直接上例子,爬取药监局的数据。目的是得到每家公司的详情数据,例: 具体网址:http://scxk.nmpa.gov.cn:81/xk/ 这是主页,下面详情信息: 贰 分析,通过网页检查发现,主网页上没有公司相关数据,观察XHR中的Ajax请求发现,公司信息都是动态数据(方便更新),点击发现每个公司 的详情信息通过ID号这个参数区别,那么可以确定思路是先得到每个公司的ID号,然后在通过ID对应每一个详细网站,同样右键

john_ashley的博客 4556

Python日志模块中RotatingFileHandler中,如果maxBytes 或 backupCount 两者之一的值为零,就不会发生轮换

RotatingFileHandler 类位于 logging.handlers 模块,它支持磁盘日志文件的轮换。返回一个 RotatingFileHandler 类的新实例。将打开指定的文件并将其用作日志记录流。如果未指定 mode,则会使用 ‘a’。如果 encoding 不为 None,则会将其用作打开文件的编码格式。如果 delay 为真值,则文件打开会被推迟至第一次调用 emit()。默认情况下,文件会无限增长。如果提供了 errors,它会被用于确定编码格式错误的处理方式。

SAGGITARXM 1043

RFC-only 与 SAProuter 场景下,让 Claude 真正参与 SAP ABAP 开发

SAP ABAP 开发这几年正在出现一个很有意思的变化。过去我们说开发工具,脑子里大多是 SE80、SE38、SE24、SEGW、Eclipse ADT,再往后是 BAS、VS Code、abapGit、ATC、CI/CD。现在又多了一层,Claude Code、Claude Desktop 这类 AI 编程助手开始通过 MCP 进入开发现场,不只是写一段示例代码,而是能读系统里的 ABAP 对象、搜索包、改源码、跑检查、辅助重构。

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 1620

【python股票价格预测】基于CNN-LSTM的股票价格预测(附python代码)

【python股票价格预测】基于CNN-LSTM的股票价格预测(附python代码)

k8291121的博客 2008

C#显示当前计算机所有打印机名称,同时获取指定打印机的状态比如缺纸、缺墨等,并且生成记录日志和数据库,发送邮件通知当前打印出错消息,打包成exe安装文件——(三)输出打印机监控日志并定期销毁

//输出监控日志文件 string printname = textBox5.Text; string str = PrinterStatusByName.GetPrinterStatusByName(printname); // Console.Write(printname); string sFil...

yangjueye的博客 953

【异常】解决 Cursor 报错 Unexpected seqno: 2 != 1. Please try again, or contact support if the issue 的排坑指南

在使用 Cursor 辅助编程时,你是否遇到过 AI 突然中断输出,并在右下角弹出一个红色的 Network Error 弹窗?今天我们就来彻底解析并解决这个网络断连问题。

奶爸的编程之路,也就一周冷个三天 2479

Python 日志抓狂?Loguru + 实战技巧让你告别 “黑盒“ 调试

数据派THU作为数据科学类公众号,背靠清华大学大数据研究中心,分享前沿数据科学与大数据技术创新研究动态、持续传播数据科学知识,努力建设数据人才聚集平台、打造中国大数据最强集团军。"日志怎么没显示……哦,是因为忘了设置处理器,处理器又忘了设置格式器,格式器又忘了设置级别!记住,良好的日志记录就像飞机的黑匣子,当程序出现问题时,它能帮你快速定位原因,节省大量调试时间。别担心,今天我要分享的这个简单技巧,将彻底改变你对Python日志记录的印象!现在,是时候告别杂乱的print语句,拥抱高效的日志记录了。

数据派THU 66

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

极链云服务器跑Python代码保姆级教程:从文件上传到命令行执行

本文提供极链云服务器运行Python代码的完整教程,涵盖从文件上传到命令行执行的全流程。详细介绍了Xshell和Xftp的连接配置、文件传输优化、Python环境管理以及代码执行监控等实用技巧,帮助开发者高效利用云服务器资源。

weixin_29325515的博客 211

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

告别logging繁琐配置!用loguru让你的Python日志记录更优雅(附彩色输出教程)

本文介绍了如何用loguru库简化Python日志记录,告别标准logging模块的繁琐配置。通过对比展示loguru在彩色输出、异常捕获、多进程安全等方面的优势,并提供从安装、基础使用到文件管理、结构化日志等实战教程,帮助开发者快速构建优雅高效的日志系统。

k9l0m1的博客 453

终极指南:揭秘Python日志库Loguru的10大核心机制与实战应用

Loguru是一款让Python日志记录变得极其简单的流行库,它通过直观的API设计和强大的功能特性,彻底改变了开发者处理日志的方式。本文将深入剖析Loguru的10大核心机制,帮助你快速掌握这个强大工具的内部工作原理和最佳实践。 ## 🚀 1. 极简日志API设计:告别复杂配置 Loguru的核心优势在于其极简的API设计。与Python标准logging模块需要繁琐的配置不同,Logur

gitblog_00849的博客 643

Python日志神器Loguru:从基础配置到高级封装实战

本文深入介绍了Python日志库Loguru,它以其极简配置和强大功能成为开发者的高效工具。通过对比标准logging模块,详细展示了Loguru如何简化日志记录、实现文件轮转与异常捕获,并提供了从基础使用到企业级工程化封装的完整实战指南,帮助开发者构建稳健的日志系统。

weixin_27372101的博客 163

DigitalOcean Functions 极简 Serverless 实战指南

Serverless 是一种按需执行、免运维的函数计算范式,其核心原理是将业务逻辑封装为无状态函数,由平台自动调度、扩缩与托管。技术价值在于显著降低中小项目和自动化任务的部署复杂度与隐性运维成本。典型应用场景包括 Webhook 后端、轻量 API、CI/CD 钩子及内部工具服务。相比通用 FaaS 平台,DigitalOcean Functions 聚焦 HTTP 触发场景,以极简 CLI(doctl)、零配置 TLS 和收敛式设计,实现‘写完即上线’的开发体验,特别适合不希望陷入事件源编排或冷启动调优的

diandingyin9417的博客 449

OpenClaw 本地一键部署(极简版)

本文介绍了OpenClaw项目的安装和使用流程。首先需要安装Python、Git等依赖,然后克隆项目代码并创建虚拟环境。配置文件中只需修改少量参数,如选择本地模型和功能开关。接着安装Ollama并下载指定模型,最后启动项目即可使用。OpenClaw支持终端对话、文件操作、代码生成等多种功能,适合开发者通过自然语言与系统交互。整个过程强调安全设置,建议新手先关闭命令执行功能。

weixin_44065376的博客 725
上一篇: Python + AI:完美抠图,更换背景
下一篇: python模块之pywin32使用文档,python操作windowsAPI
Python_P叔
博客等级 码龄3年 5451粉丝 827原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值