python之log日志模块
logging的配置大致有下面几种方式。
1、 通过代码进行完整配置,logging.getLogger()获取logger后,给logger设置各种handler。
2. 通过代码进行简单配置,通过logging.basicConfig()方法配置后,直接logging.getLogger(),无需对获取的logger再配置。
3、 通过配置文件,主要是通过 logging.config.fileConfig(filepath)
|
相关类和函数 |
支持参数 |
|
logging.basicConfig([**kwargs]) |
filename :日志文件的保存路径。如果配置了些参数,将自动创建一个FileHandler作为Handler; filemode :日志文件的打开模式。 默认值为’a’,表示日志消息以追加的形式添加到日志文件中。如果设为’w’, 那么每次程序启动的时候都会创建一个新的日志文件; format :设置日志输出格式; datefmt :定义日期格式; level :设置日志的级别.对低于该级别的日志消息将被忽略; stream :设置特定的流用于初始化StreamHandler; |
|
logging.getLogger([name]) |
|
|
handler |
1. logging.StreamHandler: 日志输出到流,可以是sys.stderr、sys.stdout或者文件 2. logging.FileHandler: 日志输出到文件 3. logging.handlers.BaseRotatingHandler #日志轮替存储方式,实际使用时用RotatingFileHandler和TimedRotatingFileHandler 4. logging.handlers.RotatingFileHandler 5. logging.handlers.TimedRotatingFileHandler 6. logging.handlers.SocketHandler: 远程输出日志到TCP/IP sockets 7. logging.handlers.DatagramHandler: 远程输出日志到UDP sockets 8. logging.handlers.SMTPHandler: 远程输出日志到邮件地址 9. logging.handlers.SysLogHandler: 日志输出到syslog 10. logging.handlers.NTEventLogHandler: 远程输出日志到Windows NT/2000/XP的事件日志 11. logging.handlers.MemoryHandler: 日志输出到内存中的制定buffer 12. logging.handlers.HTTPHandler: 通过"GET"或"POST"远程输出到HTTP服务器 |
|
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 用户输出的消息 |
会优先使用当前线程的日志对象写日志。
python之log日志模块的更多相关文章
- Python 中 logging 日志模块在多进程环境下的使用
因为我的个人网站 restran.net 已经启用,博客园的内容已经不再更新.请访问我的个人网站获取这篇文章的最新内容,Python 中 logging 日志模块在多进程环境下的使用 使用 Pytho ...
- python的logging日志模块(一)
最近修改了项目里的logging相关功能,用到了Python标准库里的logging模块,在此做一些记录.主要是从官方文档和stackoverflow上查询到的一些内容. 官方文档 技术博客 基本用法 ...
- python中的日志模块logging
1.日志级别5个: 警告Warning 一般信息Info 调试 Debug 错误Error 致命Critical 2.禁用日志方法 logging.disable(logging.DEBUG) 3 ...
- 【python】logging日志模块写入中文编码错误解决办法
一.问题: 使用python的logging模块记录日志,有时会遇到中文编码问题错误. 二.解决办法: 在logging.FileHandler(path) 中添加指定编码方式 encoding='u ...
- python原生的日志模块
Python中有个logging模块可以完成相关信息的记录,在debug时用它往往事半功倍 1. 日志级别 日志一共分成5个等级,从低到高分别是: DEBUG INFO WARNING ERROR C ...
- Python学习之==>日志模块
一.logging模块介绍 logging是Python中自带的标准模块,是Python中用来操作日志的模块. 1.控制台输出日志 import logging logging.basicConfig ...
- python基础:日志模块logging,nnlog
python里面用来打印日志的模块,就是logging模块,logging模块可以在控制台打印日志,也可以写入文件中.也可以两个操作都执行 1.控制台输入 import logging#导入模块 lo ...
- Python包和日志模块
1.什么是包 包是模块的一种形式,包的本质就是一个含有__init__.py文件的文件夹 2.为什么要有包 提高开发人员维护性 3.如何用包 导入包就是在导包下的__init__.py ...
- Python Django log日志
log日志 log开发日志 一.创建项目 1.python -m venv ll_env # 创建虚拟环境 2.source ll_env/bin/activate # 激活虚拟环境 3.pip in ...
随机推荐
- Java反射及其在Android中的应用学习总结
一. Java反射机制 Reflection 是Java被视为动态(或准动态)语言的一个关键性质.这个机制同意程序在执行时透过Reflection APIs取得不论什么一个已知名称的class的内部信 ...
- C语言宏定义时#(井号)和##(双井号)作用
#的功能是将其后面的宏参数进行字符串化操作(Stringfication),简单说就是在对它所引用的宏变量 通过替换后在其左右各加上一个双引号. #define example(instr) prin ...
- Android 调用QQ登录
调用QQ登录 在如今的项目开发.调用第三方登录.差点儿是必须的,而调用QQ登录也是不可缺少的,这里把相关代码分享出来,希望能拿去就能够用,降低项目开发的时间.希望对大家实用. 1,去QQ ...
- 图像滤镜艺术---PS图层混合模式之明度模式
本文将介绍PS图层混合模式中比較复杂 的"明度"模式的算法原理及代码实现内容. 说到PS的图层混合模式,计算公式都有,详细代码实现也能找到,可是,都没有完整介绍全部图层混合模式的代 ...
- SAM4E单片机之旅——11、UART之PDC收发
使用PDC进行数据的收发能减少CPU的开销.这次就使用PDC进行UART数据的接收与发送,同时,也利用TC也实现了PDC的接收超时. PDC是针对外设的DMA控制器.对比DMA控制器,它更为简便,与相 ...
- Delphi里可将纯虚类实例化,还可调用非虚函数
这是与Java/C++的巨大不同.目前还没仔细想这个特征与TClass之间的联系,先记住结论再说.以后再回来修改这个帖子. unit Unit1; interface uses Windows, Me ...
- rac_udev建立磁盘方式安装grid时不识别磁盘
原创作品,出自 "深蓝的blog" 博客,欢迎转载,转载时请务必注明下面出处,否则追究版权法律责任. 深蓝的blog:http://blog.csdn.net/huangyanlo ...
- java 传参方式--值传递还是引用传递
java 传参方式--值传递还是引用传递 参数是按值而不是按引用传递的说明 Java 应用程序有且仅有的一种参数传递机制,即按值传递.写它是为了揭穿普遍存在的一种神话,即认为 Java 应用程序按引用 ...
- 关于RHEL5中yum挂载iso源引起的问题(转)
今天在虚机上通过yum挂载iso源来安装rpm包,但提示错误,内容见下面.之前也有过这样的操作, mount后,修改repo文件,然后就可以yum install rpm包了:过程很简单啊.不知道这 ...
- userData IE
蛮讨厌IE的,因为他常常需要特别照顾,就像DOM Storage(sessionStorage和localStorage)只能支持IE8+,对于以下的只能使用userData. 原理:通过在docum ...