import sys
from loguru import logger # 日志级别: debug 调试信息打印日志比较详细,级别最低
# info 正常的提示信息,级别较低
# waring 警告信息,不影响代码往下运行,级别较高
# error 出错了,级别最高 # exception 比如:程序出异常了 sql 执行出错,也是用的error def my_log():
logger.remove() # 清除它的默认设置
fmt = '[{time}][{level}][{file.path}:{line}:function_name:{function}] || msg={message}'
# level file function module 格式中的几个参数
logger.add(sys.stdout, level='INFO', format=fmt) # 设置日志级别并在控制台打印出来,是打印此级别以上的要打印
logger.add('lhy.log', level='INFO', encoding='utf-8', enqueue=True, rotation='20 kb') # 写在日志文件中,
# enqueue=True,异步写日志
# 队列
# 消息队列
# rotation可以设置大小,超过多大就产生一个新文件
# rotation可以设置多长时间,超过多久就产生一个新文件 1 day 1 hour
# rotation可以设置几点就产生一个新文件 , 00:00 1:00
# retention= 7 days 多长时间后删除以前产生的日志,当前的日志不受影响
logger.add('lhy.log', level='INFO', encoding='utf-8', enqueue=True, rotation='20 kb') # 文件超过多大就新生成一个新文件
logger.add('lhy.log', level='INFO', encoding='utf-8', enqueue=True, rotation='01:00') # 每天1点创建新文件
logger.add('lhy.log', level='INFO', encoding='utf-8', enqueue=True, rotation='2 week') #文件超过2周就清理掉
logger.add('lhy.log', level='INFO', encoding='utf-8', enqueue=True, retention='7 days')
logger.debug('程序开始运行了')
logger.debug('开始连接mysql')
logger.info('mysql 配置xxxxx')
logger.warning('警告,磁盘空间即将不足')
logger.error('代码出错了')
# logger.exception('sql执行出错了') my_log()

python 14篇 写日志的更多相关文章

  1. Python 3.0 写日志时出现乱码

    问题描述 python 3.0启用日志, 在pycharm里打开.log文件时中文都显示乱码. 根本原因 默认日志编译用的是GBK, 而python 3.0写程序用的是UTF-8. 所以.log文件中 ...

  2. 【Python】自己写日志功能

    Python有自带的logging模块,用于日志记录,功能很强大,但不好用,使用挺麻烦的,而且发现了几个bug,调用了一个logger.warning()一次,结果日志文件中出现了n行记录,且逐渐变成 ...

  3. python语言(六)mock接口开发、发邮件、写日志、新Excel操作

    一.urllib模块 urllib模块是一个标准模块,直接import urllib即可,在python3里面只有urllib模块,在python2里面有urllib模块和urllib2模块. url ...

  4. python 统计时间,写日志

    python 统计时间使用time模块,写日志使用logging模块,这两个都是标准模板. 测试socket使用socket模块 # 统计时间 ---------------------- impor ...

  5. 第14篇 PSR-3规范(日志)

    1. Specification 1.1 Basics The LoggerInterface exposes eight methods to write logs to the eight RFC ...

  6. 【Python五篇慢慢弹】快速上手学python

    快速上手学python 作者:白宁超 2016年10月4日19:59:39 摘要:python语言俨然不算新技术,七八年前甚至更早已有很多人研习,只是没有现在流行罢了.之所以当下如此盛行,我想肯定是多 ...

  7. Python提高篇

    Python提高篇 1.模块 1)模块定义 模块就是py文件,可以是你自己写的,也可以是python当中自带的工具,当你在某个py文件下想要引用其他模块的功能,就需要你把你把该py文件导入. 2)导入 ...

  8. .net core 2.0使用NLog写日志文件

    原文地址:传送门 之前也看了 linezero 大佬写的教程,但是总是没有成功写入日志文件.按照 曲廉卿 的已成功,以下正文: 最近研究了一下NLog的使用方式,简单的入了一下门. 实现的功能,对于不 ...

  9. Python入门篇-面向对象概述

    Python入门篇-面向对象概述 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.语言的分类 面向机器 抽象成机器指令,机器容易理解 代表:汇编语言 面向过程 做一件事情,排出个 ...

随机推荐

  1. windows 映射驱动器 图标显示不正常

    正常图标是这样的: 我的变成了这样: 解决方法: 注册表进入: HKEY_CURRENT_USER\SOFTWARE\Classes\Applications\Explorer.exe\Drives\ ...

  2. MinkowskiEngine多GPU训练

    MinkowskiEngine多GPU训练 目前,MinkowskiEngine通过数据并行化支持Multi-GPU训练.在数据并行化中,有一组微型批处理,这些微型批处理将被送到到网络的一组副本中. ...

  3. NVIDIA GPUs上深度学习推荐模型的优化

    NVIDIA GPUs上深度学习推荐模型的优化 Optimizing the Deep Learning Recommendation Model on NVIDIA GPUs 推荐系统帮助人在成倍增 ...

  4. C语言代码区错误以及编译过程

    C语言代码区错误 欲想了解C语言代码段会有如何错误,我们必须首先了解编译器是如何把C语言文本信息编译成为可以执行的机器码的. 背景介绍 测试使用的C语言代码 导入标准库,定义宏变量,定义结构体,重命名 ...

  5. P4779 【模板】单源最短路径(标准版)单源最短路Dijkstra

    题目描述 给定一个$n$个点,$m$条有向边的带非负权图,请你计算从$s$出发,到每个点的距离. 数据保证你能从$s$出发到任意点. 输入格式 第一行为三个正整数$n,m,s$. 第二行起$m$行,每 ...

  6. 俄罗斯方块(c++)

    这个俄罗斯方块是用c++基于windows控制台制作的. 源码地址:https://github.com/Guozhi-explore 话不多说,先上图感受一下:(控制台丑陋的界面不是我的锅emmm) ...

  7. SpringCloud Alibaba实战(6:nacos-server服务搭建)

    源码地址:https://gitee.com/fighter3/eshop-project.git 持续更新中-- 大家好,我是三分恶. 这一节我们来学习SpringCloud Alibaba体系中一 ...

  8. .NET Core/.NET5/.NET6 开源项目汇总4:CMS、Blog项目

    系列目录     [已更新最新开发文章,点击查看详细] 开源项目是众多组织与个人分享的组件或项目,作者付出的心血我们是无法体会的,所以首先大家要心存感激.尊重.请严格遵守每个项目的开源协议后再使用.尊 ...

  9. Activity侧滑返回的实现原理

    简介 使用侧滑Activity返回很常见,例如微信就用到了.那么它是怎么实现的呢.本文带你剖析一下实现原理.我在github上找了一个star有2.6k的开源,我们分析他是怎么实现的 //star 2 ...

  10. Java并发之ReentrantLock源码解析(一)

    ReentrantLock ReentrantLock是一种可重入的互斥锁,它的行为和作用与关键字synchronized有些类似,在并发场景下可以让多个线程按照一定的顺序访问同一资源.相比synch ...