python的日志功能模块是logging 功能和使用方式非常类似于log4

如何使用logging:

# 导入日志模块
import logging
# 使用配置文件设置日志时,需要导入这个模块
import logging.config
class MyLog:
'''日志类,用于将日志信息写入到.txt文件中''' # 载入配置信息,从Logging.cfg
__loadcfg=logging.config.fileConfig("Loggers/Logging.ini") # 获取一个logger对象,通过这个名字参数可以保证在当前程序进程中其它地方获取日志对象时,是同一个日志对象.
__dblog=logging.getLogger('dblog') @staticmethod
def AddLog(msg,logrefname=None):
'''// 添加日志
// 1.msg:日志内容
// 2.logrefname:通过这个名字获取日志对象,默认是dblog.其它名字要到配置文件里查看
'''
if logrefname is not None:
MyLog.__dblog=logging.getLogger(logrefname) MyLog.__dblog.debug(msg)

使用时调用 MyLog.AddLog(logmsg)就加入日志了.

以下是配置文件Logging.ini

# 这是python的logging日志模块的配置文件
# 遇到的问题有几个:使用logging.config.fileConfig("Logging.ini")载入后,启动程序
# .报错.KeyError Formatters 在网上查了很久,说是日志路径的问题,结果就是路径问题
# .报错gbk... 用的是VS2013,新建的python文件不是utf-8编码,需要改一下编码.可是对于这个Logging.ini,居然要改回gb2312().不改的话就报这错误. # 指示日志引用名,通过这个名字,能找到同一个日志对象
[loggers]
keys=root,dblog # 指示日志的输出,可以输出到控制台,文件,发Email,输出到SOCKET等等
[handlers]
keys=handroot,handdb # 指示日志输出格式
[formatters]
keys=formroot,formdb # root日志对象,这个相当于父类,必需要有
[logger_root]
level=NOTSET
handlers=handroot # 这是自己建立的日志对象,propagate=0表示不继承父类,=1表示继承.(研究后得出结论:如果选继承,日志也会输出到父类的handler上)
[logger_dblog]
level=DEBUG
handlers=handdb
propagate=
qualname=dblog [handler_handroot]
class=StreamHandler
level=NOTSET
formatter=formroot
args=(sys.stdout,) # 这使用了回转日志(class指示使用的是哪个hander,logging有很多handler),就是当日志达到一定大小后,会另建一个新文件
[handler_handdb]
class=handlers.RotatingFileHandler
level=DEBUG
formatter=formdb
args=('dblog.txt', 'a',) [formatter_formroot]
format=F1 %(asctime)s %(levelname)s %(message)s
datefmt=
class=logging.Formatter # 关于formatter类的详细情况,请查看本机文档在d:/python学习中有链接
[formatter_formdb]
format=%(asctime)s 类型 : %(name)s 内容 : %(message)s
datefmt=%Y-%m-%d %H:%M:%S
class=logging.Formatter

也可以在代码中配置日志,使用这个方法载入配置

logging.basicConfig()

一个非常详细的日志使用请看这里

http://www.cnblogs.com/dkblog/archive/2011/08/26/2155018.html

python-整理-logging日志的更多相关文章

  1. Python 中 logging 日志模块在多进程环境下的使用

    因为我的个人网站 restran.net 已经启用,博客园的内容已经不再更新.请访问我的个人网站获取这篇文章的最新内容,Python 中 logging 日志模块在多进程环境下的使用 使用 Pytho ...

  2. 【python】logging日志模块写入中文编码错误解决办法

    一.问题: 使用python的logging模块记录日志,有时会遇到中文编码问题错误. 二.解决办法: 在logging.FileHandler(path) 中添加指定编码方式 encoding='u ...

  3. python的logging日志模块(二)

    晚上比较懒,直接搬砖了. 1.简单的将日志打印到屏幕   import logging logging.debug('This is debug message') logging.info('Thi ...

  4. python的logging日志模块(一)

    最近修改了项目里的logging相关功能,用到了Python标准库里的logging模块,在此做一些记录.主要是从官方文档和stackoverflow上查询到的一些内容. 官方文档 技术博客 基本用法 ...

  5. python(6)-logging 日志模块

    logging的日志分为5个级别分别为debug(), info(), warning(), error(), critical() 先来看一下简单的代码: logging.basicConfig(f ...

  6. python的logging日志模块

    1. 简单的将日志打印到屏幕 import logging logging.debug('This is debug message') logging.info('This is info mess ...

  7. Python之logging日志模块

    logging 用于便捷既然日志切线程安全的模块 vim log_test.py import logging logging.basicConfig(filename='log.log', form ...

  8. python中logging日志基本用法,和进程安全问题

    低配版 import logging logging.debug('debug message') # 调试模式 logging.info('info message') # 正常运转模式 loggi ...

  9. python - django (logging 日志配置和简单使用)

    1. settings 配置 # 配置日志 LOGGING = { 'version': 1, 'disable_existing_loggers': True, 'formatters': { 's ...

  10. Python:Logging日志处理

    程序中,需要添加日志来记录大量信息. import logging # 第一步:创建logger self.logger = logging.getLogger() self.logger.setLe ...

随机推荐

  1. Gora官方文档之二:Gora对Map-Reduce的支持

    参考官方文档:http://gora.apache.org/current/tutorial.html 项目代码见:https://code.csdn.net/jediael_lu/mygoradem ...

  2. android图像模糊技术

    今天我们来更深入了解一下Android开发上的模糊技术.我读过几篇有关的文章,也在StackOverFlow上看过一些相关教程的帖子,所以我想在这里总结一下学到的东西. 为什么学习这个模糊技术? 现在 ...

  3. mysql 套事物实例

    public static DataSet GetPPriceList(string aircompany, string departPort, string arrivePort, string ...

  4. MyEclipse安装Eclipse Memory Analyzer插件,并进行错误文件分析流程

    在看深入JVM虚拟机一书(p50,2.4 实战OutOfMemoryError),有一个Java堆溢出的例子,使用到了Eclipse Memory Analyzer插件,由于自己现在使用的是MyEcl ...

  5. 痛并快乐的造轮子之旅:awk访问数据库之旅

    俺是一枚悲催的数据统计程序员,从先辈的手里接收了这样的代码: #! /bin/sh alias statdb="mysql -h 192.168.1.1 -u stat -paaa stat ...

  6. TOMCAT之性能跟踪入门

    先扫清前面的障碍,再慢慢进入核心 转一下网上的我关心的话题,实施起来 ~~~ 使用Nginx作为反向代理时,Tomcat的日志记录的客户端IP就不在是真实的客户端IP,而是Nginx代理的IP.要解决 ...

  7. idea

    一. 常用快捷键 搜索class Ctrl+N 搜索文件 Ctrl+Alt+N 当前窗口查找/全工程查找 Ctrl+F/Ctrl+Shift+F,F3/Shift+F3前后移动 上/下一个位置 Ctr ...

  8. Colorful Lecture Note(手工栈)

    题目1 : Colorful Lecture Note 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 Little Hi is writing an algorithm ...

  9. phpWeb

    Ruby on Rails框架在REST走得很前,开发时默认都按照RESTful风格搭建. <RESTful Web Services>是本好书 SOAP

  10. 【布艺DIY】 零基础 做包包 2小时 就OK!_豆瓣

    [布艺DIY] 零基础 做包包 2小时 就OK!_豆瓣 [布艺DIY] 零基础 做包包 2小时 就OK!