Logger.setLevel(level)

设置记录器的级别为level。低于该级别的信息将被忽略。

记录器默认级别为NOTSET。如果记录器是根记录器,则默认将记录所有信息;

如果是一个非根记录器,默认会沿着一个“链”向上寻找,直到找到一个级别为非NOTSET为止,并把该记录器级别作为自己的级别;

如果到达根记录器还没找到级别为非NOTSET的记录器,则所有信息被记录。

注意使用WARNING级别创建根记录器。

logging.getLogger(name=None)

生成一个指定名称的记录器。名称为“.”分隔的形式,如'a','a.b'或'a.b.c.d'。

如果名称为None,则生成一个根记录器。

class logging.StreamHandler(stream=None)

StreamHandler类将记录输出发送到诸如sys.stdout,sys.stderr或任何类似文件的对象(或更准确地说,任何支持write()和flush()方法的对象) 。

返回StreamHandler类的新实例。如果指定了流,则实例将使用它来记录输出;否则,将使用sys.stderr。

class logging.Formatter(fmt=None,datefmt=None,style='%')

返回Formatter类的新实例。

fmt为消息字符串,datefmt为日期/时间字符串。

如果没有指定fmt,则使用'%(message)'。如果没有指定datefmt,则使用ISO8601日期格式。

style参数可以是'%','{'或'$'之一,用于确定格式字符串如何与其数据合并。

常用的fmt和datefmt如下:

frm = '%(levelname)-.3s [%(asctime)s.%(msecs)03d] thr=%(_threadid)-3d %(name)s: %(message)s'
'%Y%m%d-%H:%M:%S'

注:上表是格式化样式。

Handler.setFormatter(表格)

设置格式。

Logger.addHandler(hdlr)

将指定的处理程序hdlr添加到此记录器。

一个完整的例子

    l = logging.getLogger("paramiko")
if len(l.handlers) > 0: #handlers为处理程序的集合,列表类型
return
l.setLevel(level)
f = open(filename, 'a') #a表示以追加模式打开
lh = logging.StreamHandler(f)
frm = '%(levelname)-.3s [%(asctime)s.%(msecs)03d] thr=%(_threadid)-3d %(name)s: %(message)s' # noqa
lh.setFormatter(logging.Formatter(frm, '%Y%m%d-%H:%M:%S'))
l.addHandler(lh)

python学习之logging模块的更多相关文章

  1. python学习之-- logging模块

    logging模块功能:提供了标准的日志接口,可以通过它存储各种格式的日志.日志5个级别分:debug(),info(),warning(),error(),critical() logging.ba ...

  2. python 学习笔记 -logging模块(日志)

    模块级函数 logging.getLogger([name]):返回一个logger对象,如果没有指定名字将返回root loggerlogging.debug().logging.info().lo ...

  3. python学习-57 logging模块

    logging 1.basicConfig方式 import logging # 以下是日志的级别 logging.debug('debug message') logging.info('info ...

  4. Python自建logging模块

    本章将介绍Python内建模块:日志模块,更多内容请从参考:Python学习指南 简单使用 最开始,我们用最短的代码体验一下logging的基本功能. import logging logger = ...

  5. Python中的logging模块就这么用

    Python中的logging模块就这么用 1.日志日志一共分成5个等级,从低到高分别是:DEBUG INFO WARNING ERROR CRITICALDEBUG:详细的信息,通常只出现在诊断问题 ...

  6. python中日志logging模块的性能及多进程详解

    python中日志logging模块的性能及多进程详解 使用Python来写后台任务时,时常需要使用输出日志来记录程序运行的状态,并在发生错误时将错误的详细信息保存下来,以别调试和分析.Python的 ...

  7. Python日志输出——logging模块

    Python日志输出——logging模块 标签: loggingpythonimportmodulelog4j 2012-03-06 00:18 31605人阅读 评论(8) 收藏 举报 分类: P ...

  8. Python学习 Part4:模块

    Python学习 Part4:模块 1. 模块是将定义保存在一个文件中的方法,然后在脚本中或解释器的交互实例中使用.模块中的定义可以被导入到其他模块或者main模块. 模块就是一个包含Python定义 ...

  9. python学习之argparse模块

    python学习之argparse模块 一.简介: argparse是python用于解析命令行参数和选项的标准模块,用于代替已经过时的optparse模块.argparse模块的作用是用于解析命令行 ...

随机推荐

  1. linux自定义开机启动服务和chkconfig使用方法

    linux自定义开机启动服务和chkconfig使用方法 1. 服务概述在linux操作系统下,经常需要创建一些服务,这些服务被做成shell脚本,这些服务需要在系统启动的时候自动启动,关闭的时候自动 ...

  2. ones工作流预设

    系统首选项->工作流->新建保存后在工作流设计中将内容复制到编辑器中. 出库流程 支持分批次出库,支持外部单据转化为出库单并在出库结束后通知原始单据 流程图: 模块:storage.sto ...

  3. go语言基础之Printf和Println的区别

    1.示例 package main //必须有一个main包 import "fmt" func main() { a := 10 //一段一段处理,自动加换行 fmt.Print ...

  4. http://www.tmser.com/post-177.html

    http://www.tmser.com/post-177.html http://maven.group.iteye.com/group/topic/21617

  5. IT博客汇

    做了个博客聚合网站,收集了一堆IT牛人的博客RSS订阅,每天自动更新. 一旦关注的作者发表了新的博客,第一时间就能看到. 地址在这儿,欢迎参观: http://www.wrox.cn

  6. vue组件属性中字符串如何拼接变量?

    不得不说,对于水平只有jquery的vue初学者来说,vue的图片加载实现确实挺坑的,在文档中也没有看到说明.经过百度之后终于知道了什么情况. 首先: 这样是没问题的: <img src=&qu ...

  7. Node.js abaike图片批量下载爬虫1.02

    //====================================================== // abaike图片批量下载爬虫1.02 // 用最近的断点续传框架改写原有1.01 ...

  8. 云计算之路-Azure vs 阿里云:从负载均衡中摘/挂虚拟机

    @小尾鱼 在 试用Azure:上不了高速的跑车,无法跨Cloud Service的DNS服务器一文的评论中提了一个很好的问题: 问个问题,使用了负载均衡以后,程序发布的时候博客园是怎么避免用户访问到正 ...

  9. 关于jquery的on,你怎么绑定就怎么解除

    打开jquery3.0一看,竟然把一大半的时间绑定的东西都废弃了 基本上绑定时间可以统一成了on,不管你是不是动态进来的dom节点 live我们知道1.7的时候就已经废弃了,还在觉得live很好用的同 ...

  10. 算法笔记_099:蓝桥杯练习 算法提高 排列数(Java)

    目录 1 问题描述 2 解决方案   1 问题描述 问题描述 0.1.2三个数字的全排列有六种,按照字母序排列如下: 012.021.102.120.201.210 输入一个数n 求0~9十个数的全排 ...