Python logging模块用法示例


Posted in Python onAugust 28, 2018

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

logging模块

函数式简单配置

import logging
logging.debug('debug message')
logging.info('info message')
logging.warning('warning message')
logging.error('error message')
logging.critical('critical message')

logging.basicConfig()函数中可通过具体参数来更改logging模块默认行为,可用参数有:

  • filename:用指定的文件名创建FiledHandler,这样日志会被存储在指定的文件中。
  • filemode:文件打开方式,在指定了filename时使用这个参数,默认值为“a”还可指定为“w”。
  • format:指定handler使用的日志显示格式。
  • datefmt:指定日期时间格式。
  • level:设置rootlogger(后边会讲解具体概念)的日志级别
  • stream:用指定的stream创建StreamHandler。可以指定输出到sys.stderr,sys.stdout或者文件(f=open('test.log','w')),默认为sys.stderr。若同时列出了filenamestream两个参数,则stream参数会被忽略。

format参数中可能用到的格式化串:

%(name)s Logger的名字
%(levelno)s 数字形式的日志级别
%(levelname)s 文本形式的日志级别
%(pathname)s 调用日志输出函数的模块的完整路径名,可能没有
%(filename)s 调用日志输出函数的模块的文件名
%(module)s 调用日志输出函数的模块名
%(funcName)s 调用日志输出函数的函数名
%(lineno)d 调用日志输出函数的语句所在的代码行
%(created)f 当前时间,用UNIX标准的表示时间的浮 点数表示
%(relativeCreated)d 输出日志信息时的,自Logger创建以 来的毫秒数
%(asctime)s 字符串形式的当前时间。默认格式是 “2003-07-08 16:49:45,896”。逗号后面的是毫秒
%(thread)d 线程ID。可能没有
%(threadName)s 线程名。可能没有
%(process)d 进程ID。可能没有
%(message)s 用户输出的消息

logging库提供了多个组件:LoggerHandlerFilterFormatter。Logger对象提供应用程序可直接使用的接口,Handler发送日志到适当的目的地,Filter提供了过滤日志信息的方法,Formatter指定日志显示格式。另外,可以通过:logger.setLevel(logging.Debug)设置级别,当然,也可以通过fh.setLevel(logging.Debug)单对文件流设置某个级别。

def my_logger(filename,leval,file = True,stream = True):
  logger = logging.getLogger()
  formatter = logging.Formatter (fmt = '%(asctime)s--%(message)s----%(name)s--%(levelname)s--%(lineno)d',
                  datefmt = '%d/%m/%y %H:%M:%S')
  logger.setLevel(leval)
  if file:
    file_handler = logging.FileHandler(filename, encoding='utf-8')
    logger.addHandler(file_handler)
    file_handler.setFormatter(formatter)
  if stream:
    stream_handler = logging.StreamHandler()
    stream_handler.setFormatter(formatter)
    logger.addHandler(stream_handler)
  return logger
logger = my_logger('logging',logging.DEBUG)
logger.warning('warn!!!')

运行结果:

28/08/18 09:48:53--warn!!!----root--WARNING--27

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

Python 相关文章推荐
Python2.7编程中SQLite3基本操作方法示例
Aug 09 Python
python使用正则表达式替换匹配成功的组并输出替换的次数
Nov 22 Python
Scrapy使用的基本流程与实例讲解
Oct 21 Python
Django 多环境配置详解
May 14 Python
python 实现识别图片上的数字
Jul 30 Python
Django 项目重命名的实现步骤解析
Aug 14 Python
Python aiohttp百万并发极限测试实例分析
Oct 26 Python
redis数据库及与python交互用法简单示例
Nov 01 Python
详解用Python进行时间序列预测的7种方法
Mar 13 Python
使用keras实现BiLSTM+CNN+CRF文字标记NER
Jun 29 Python
python批量生成条形码的示例
Oct 10 Python
python 爬取英雄联盟皮肤并下载的示例
Dec 04 Python
Python异常处理操作实例详解
Aug 28 #Python
Python封装原理与实现方法详解
Aug 28 #Python
python 中文件输入输出及os模块对文件系统的操作方法
Aug 27 #Python
python中cPickle类使用方法详解
Aug 27 #Python
python散点图实例之随机漫步
Aug 27 #Python
python3.5绘制随机漫步图
Aug 27 #Python
Python反射和内置方法重写操作详解
Aug 27 #Python
You might like
文件上传类
2006/10/09 PHP
php 处理上百万条的数据库如何提高处理查询速度
2010/02/08 PHP
PHP判断是否连接上网络的方法
2015/07/01 PHP
php in_array() 检查数组中是否存在某个值详解
2016/11/23 PHP
jQuery 浮动广告实现代码
2008/12/25 Javascript
Jquery 常用方法经典总结
2010/01/28 Javascript
关于window.pageYOffset和document.documentElement.scrollTop
2011/04/05 Javascript
基于JQuery的类似新浪微博展示信息效果的代码
2012/07/23 Javascript
基于jquery的用鼠标画出可移动的div
2012/09/06 Javascript
千分位数字格式化(用逗号隔开 代码已做了修改 支持0-9位逗号隔开)的JS代码
2013/12/05 Javascript
理解Javascript的动态语言特性
2015/06/17 Javascript
jquery分页插件jquery.pagination.js使用方法解析
2016/04/01 Javascript
好好了解一下Cookie(强烈推荐)
2016/06/14 Javascript
javascript self对象使用详解
2016/10/18 Javascript
canvas实现图像截取功能
2017/02/06 Javascript
JavaScript实现公历转农历功能示例
2017/02/13 Javascript
微信小程序学习之数据处理详解
2017/07/05 Javascript
微信小程序 POST请求的实例详解
2017/09/29 Javascript
实例讲解JavaScript预编译流程
2019/01/24 Javascript
微信自定义分享链接信息(标题,图片和内容)实现过程详解
2019/09/04 Javascript
node.js使用yargs处理命令行参数操作示例
2020/02/11 Javascript
Vue CLI4 Vue.config.js标准配置(最全注释)
2020/06/05 Javascript
python3使用urllib模块制作网络爬虫
2016/04/08 Python
总结Python图形用户界面和游戏开发知识点
2019/05/22 Python
Python制作简易版小工具之计算天数的实现思路
2020/02/13 Python
python list的index()和find()的实现
2020/11/16 Python
实习老师个人总结的自我评价
2013/09/28 职场文书
爱国主义演讲稿
2014/05/07 职场文书
欢迎家长标语
2014/10/08 职场文书
房产协议书范本
2014/10/18 职场文书
学校政风行风自查自纠报告
2014/10/21 职场文书
活动总结书怎么写
2015/05/11 职场文书
金正昆讲礼仪观后感
2015/06/11 职场文书
新年寄语2016
2015/08/17 职场文书
2016年端午节寄语
2015/12/04 职场文书
2019职场单身人才调研报告:互联网行业单身比例最高
2019/08/07 职场文书