Python 日志logging模块用法简单示例


Posted in Python onOctober 18, 2019

本文实例讲述了Python 日志logging模块用法。分享给大家供大家参考,具体如下:

demo.py(日志,输出到控制台):

import logging  # 导入logging模块
# 日志级别默认是WARNING
logging.basicConfig(level=logging.WARNING,
          format='%(asctime)s - %(filename)s[line:%(lineno)d] - %(levelname)s: %(message)s')
# 开始使用log功能
logging.info('这是 loggging info message')
logging.debug('这是 loggging debug message')
logging.warning('这是 loggging a warning message')
logging.error('这是 loggging error message')
logging.critical('这是 loggging critical message')

demo.py(日志,输出到文件):

import logging
# 配置日志的输出文件,以及文件的打开方式
logging.basicConfig(level=logging.WARNING,
          filename='./log.txt',
          filemode='a',  # a表示追加的模式打开文件
          format='%(asctime)s - %(filename)s[line:%(lineno)d] - %(levelname)s: %(message)s')
# use logging
logging.info('这是 loggging info message')
logging.debug('这是 loggging debug message')
logging.warning('这是 loggging a warning message')
logging.error('这是 loggging error message')
logging.critical('这是 loggging critical message')

demo.py(日志,同时输出到文件和控制台):

import logging
# 第一步,创建一个logger
logger = logging.getLogger()
logger.setLevel(logging.INFO) # Log等级总开关
# 第二步,创建一个handler,用于写入日志文件
logfile = './log.txt'
fh = logging.FileHandler(logfile, mode='a') # mode表示文件的打开方式
fh.setLevel(logging.DEBUG) # 输出到file的log等级的开关
# 第三步,再创建一个handler,用于输出到控制台
ch = logging.StreamHandler()
ch.setLevel(logging.WARNING)  # 输出到console的log等级的开关
# 第四步,定义handler的输出格式
formatter = logging.Formatter("%(asctime)s - %(filename)s[line:%(lineno)d] - %(levelname)s: %(message)s")
fh.setFormatter(formatter)
ch.setFormatter(formatter)
# 第五步,将logger添加到handler里面
logger.addHandler(fh)
logger.addHandler(ch)
# 日志
logger.debug('这是 logger debug message')
logger.info('这是 logger info message')
logger.warning('这是 logger warning message')
logger.error('这是 logger error message')
logger.critical('这是 logger critical message')

Python 日志logging模块用法简单示例

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python 布尔操作实现代码
Mar 23 Python
深入理解Python 代码优化详解
Oct 27 Python
Python二叉树的定义及常用遍历算法分析
Nov 24 Python
Python使用wget实现下载网络文件功能示例
May 31 Python
Python Pexpect库的简单使用方法
Jan 29 Python
python接口自动化测试之接口数据依赖的实现方法
Apr 26 Python
HTML的form表单和django的form表单
Jul 25 Python
基于python的selenium两种文件上传操作实现详解
Sep 19 Python
关于TensorFlow新旧版本函数接口变化详解
Feb 10 Python
Python依赖包迁移到断网环境操作
Jul 13 Python
python读取xml文件方法解析
Aug 04 Python
matplotlib对象拾取事件处理的实现
Jan 14 Python
python调用matplotlib模块绘制柱状图
Oct 18 #Python
Python Django模板之模板过滤器与自定义模板过滤器示例
Oct 18 #Python
树莓派4B+opencv4+python 打开摄像头的实现方法
Oct 18 #Python
python使用Matplotlib改变坐标轴的默认位置
Oct 18 #Python
python调用Matplotlib绘制分布点图
Oct 18 #Python
Python 异常处理Ⅳ过程图解
Oct 18 #Python
python库matplotlib绘制坐标图
Oct 18 #Python
You might like
php读取文件内容的三种可行方法示例介绍
2014/02/08 PHP
PHP中Socket连接及读写数据超时问题分析
2016/07/19 PHP
使用正则替换变量
2007/05/05 Javascript
JavaScript 设计模式 富有表现力的Javascript(一)
2010/05/26 Javascript
js操作textarea方法集合封装(兼容IE,firefox)
2011/02/22 Javascript
jquery中交替点击事件的实现代码
2014/02/14 Javascript
js 日期比较相关天数代码
2014/04/02 Javascript
JavaScript修改浏览器tab标题小技巧
2015/01/06 Javascript
javascript面向对象快速入门实例
2015/01/13 Javascript
JavaScript中的fontsize()方法使用详解
2015/06/08 Javascript
JS实现直接运行html代码的方法
2017/03/13 Javascript
Web前端框架Angular4.0.0 正式版发布
2017/03/28 Javascript
javascript将list转换成树状结构的实例
2017/09/08 Javascript
9种改善AngularJS性能的方法
2017/11/28 Javascript
Vue使用Proxy监听所有接口状态的方法实现
2019/06/07 Javascript
layui之数据表格--与后台交互获取数据的方法
2019/09/29 Javascript
createObjectURL方法实现本地图片预览
2019/09/30 Javascript
原生javascript制作的拼图游戏实现方法详解
2020/02/23 Javascript
Node.js文本文件BOM头的去除方法
2020/11/22 Javascript
关于element的表单组件整理笔记
2021/02/05 Javascript
Python实现的检测web服务器健康状况的小程序
2014/09/17 Python
python杀死一个线程的方法
2015/09/06 Python
python实现用户登录系统
2016/05/21 Python
python连接数据库的方法
2017/10/19 Python
python 检查文件mime类型的方法
2018/12/08 Python
python TCP包注入方式
2020/05/05 Python
python中wheel的用法整理
2020/06/15 Python
递归实现回文判断(如:abcdedbca就是回文,判断一个面试者对递归理解的简单程序)
2013/04/28 面试题
土木工程个人自荐信范文
2013/11/30 职场文书
商务英语求职自荐信范文
2013/12/24 职场文书
校园之声广播稿
2014/01/31 职场文书
高中物理教学反思
2014/02/08 职场文书
婚宴领导致辞
2015/07/28 职场文书
应收账款管理制度
2015/08/06 职场文书
《工作是最好的修行》读后感3篇
2019/12/13 职场文书
React自定义hook的方法
2022/06/25 Javascript