python logging日志模块原理及操作解析


Posted in Python onOctober 12, 2019

一、基本介绍

logging 模块是python自带的一个包,因此在使用的时候,不必安装,只需要import即可。

logging有 5 个不同层次的日志级别,可以将给定的 logger 配置为这些级别:

  • DEBUG:详细信息,用于诊断问题。Value=10。

  • INFO:确认代码运行正常。Value=20。

  • WARNING:意想不到的事情发生了,或预示着某个问题。但软件仍按预期运行。Value=30。

  • ERROR:出现更严重的问题,软件无法执行某些功能。Value=40。

  • CRITICAL:严重错误,程序本身可能无法继续运行。Value=50。

二、基本操作

主要调用logging.basicConfig(***kwargs*)这个函数对logging进行设置。函数常用的参数如下:

  • level:主要调整logging的级别

  • filename:输出日志的路径

  • filemode:直接写入还是追加写入

  • format:输出的格式

示例一:通过调整format,可以输出我们想要的格式

import logging
 
 logging.basicConfig(format='%(asctime)s - %(message)s', datefmt='%d-%b-%y %H:%M:%S')
 logging.warning('Admin logged out')

结果:

12-Jul-18 20:53:19 - Admin logged out

示例二:logging写多文件日志

#!/usr/bin/env python
# -*- coding:utf-8 -*-
"""
logging模块写多文件日志
"""

import logging

#创建文件
file_1 = logging.FileHandler('log_1.log', 'a')
#创建格式
fat = logging.Formatter(fmt="%(asctime)s - %(name)s - %(levelname)s - %(module)s - %(message)s")
#文件应用格式
file_1.setFormatter(fat)

file_2 = logging.FileHandler('log_2.log', 'a')
fmt = logging.Formatter()
file_2.setFormatter(fmt)

logger1 = logging.Logger('s1', level=logging.ERROR)

logger1.addHandler(file_1)
logger1.addHandler(file_2)

#写日志
logger1.critical("i'm a error!")

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中DJANGO简单测试实例
May 11 Python
virtualenv实现多个版本Python共存
Aug 21 Python
Python判断文件和字符串编码类型的实例
Dec 21 Python
微信跳一跳辅助python代码实现
Jan 05 Python
Python列表生成式与生成器操作示例
Aug 01 Python
python使用Turtle库绘制动态钟表
Nov 19 Python
对python判断是否回文数的实例详解
Feb 08 Python
手把手教你进行Python虚拟环境配置教程
Feb 03 Python
Python实现在Windows平台修改文件属性
Mar 05 Python
keras.layer.input()用法说明
Jun 16 Python
关于python中导入文件到list的问题
Oct 31 Python
python高温预警数据获取实例
Jul 23 Python
Python爬虫之urllib基础用法教程
Oct 12 #Python
python 生成器和迭代器的原理解析
Oct 12 #Python
python 表格打印代码实例解析
Oct 12 #Python
Django+uni-app实现数据通信中的请求跨域的示例代码
Oct 12 #Python
python3.7将代码打包成exe程序并添加图标的方法
Oct 11 #Python
python 多进程并行编程 ProcessPoolExecutor的实现
Oct 11 #Python
Python 中list ,set,dict的大规模查找效率对比详解
Oct 11 #Python
You might like
使用php+swoole对client数据实时更新(一)
2016/01/07 PHP
PHP+Jquery与ajax相结合实现下拉淡出瀑布流效果【无需插件】
2016/05/06 PHP
如何使用PHP给图片加水印
2016/10/12 PHP
PHP文件与目录操作示例
2016/12/24 PHP
JavaScript函数、方法、对象代码
2008/10/29 Javascript
JavaScript 参数中的数组展开 [译]
2012/09/21 Javascript
当滚动条滚动到页面底部自动加载增加内容的js代码
2014/05/13 Javascript
javascript圆盘抽奖程序实现原理和完整代码例子
2014/06/03 Javascript
javascript中HTMLDOM操作详解
2014/12/11 Javascript
学习JavaScript设计模式之策略模式
2016/01/12 Javascript
jquery拖动层效果插件用法实例分析(附demo源码)
2016/04/28 Javascript
Node.js环境下Koa2添加travis ci持续集成工具的方法
2017/06/19 Javascript
Vue 自定义动态组件实例详解
2018/03/28 Javascript
vue 刷新之后 嵌套路由不变 重新渲染页面的方法
2018/09/13 Javascript
从零到一详聊创建Vue工程及遇到的常见问题
2019/04/25 Javascript
Vue+ElementUI项目使用webpack输出MPA的方法
2019/08/27 Javascript
JS实现普通轮播图特效
2020/01/01 Javascript
Vue学习之axios的使用方法实例分析
2020/01/06 Javascript
vuecli3.x中轻松4步带你使用tinymce的步骤
2020/06/25 Javascript
利用Python如何批量更新服务器文件
2018/07/29 Python
Python编程深度学习绘图库之matplotlib
2018/12/28 Python
html5实现完美兼容各大浏览器的播放器
2014/12/26 HTML / CSS
卡拉威高尔夫官方网站:Callaway Golf
2020/09/16 全球购物
上海中网科技笔试题
2012/02/19 面试题
实习教师自我鉴定
2013/12/12 职场文书
应届大学生简历中的自我评价
2014/01/15 职场文书
计算机数据库专业职业生涯规划书
2014/02/08 职场文书
大学生见习报告总结
2014/11/04 职场文书
2014年计生协会工作总结
2014/11/21 职场文书
签订劳动合同通知书
2015/04/16 职场文书
办公室日常管理制度
2015/08/04 职场文书
旷工检讨书大全
2015/08/15 职场文书
新郎父母婚礼答谢词
2015/09/29 职场文书
九年级英语教学反思
2016/02/15 职场文书
sql中mod()函数取余数的用法
2021/05/29 SQL Server
MySQL数据库 任意ip连接方法
2022/05/20 MySQL