Python 配置日志

Python 2.6+

def cfgLogging():
    from logging.handlers import RotatingFileHandler
    console = logging.StreamHandler()
    console.setLevel(logging.DEBUG)
    Rthandler = RotatingFileHandler(‘/var/log/net-mornitor.log‘, maxBytes=10*1024*1024,backupCount=5)
    Rthandler.setLevel(logging.DEBUG)
    formatter = logging.Formatter(‘%(asctime)s %(name)-12s: %(levelname)-8s | %(message)s‘)
    Rthandler.setFormatter(formatter)
    console.setFormatter(formatter)
    mainlogger = logging.getLogger(‘‘)
    mainlogger.addHandler(Rthandler)
    mainlogger.addHandler(console)
    mainlogger.setLevel(logging.INFO)

Python2.7+

#coding:utf-8

import logging.config

def cfgLogging():
    LOGGING = {
               ‘version‘: 1,
               ‘disable_existing_loggers‘: True,
               ‘formatters‘: {
                              ‘default‘: {‘format‘: ‘[%(asctime)-25s] [%(relativeCreated)-15s] %(name)-12s pid:%(process)d %(message)s‘},
                               # default‘: {
                               #           ‘format‘ : ‘%(asctime)s %(message)s‘,
                               #           ‘datefmt‘ : ‘%Y-%m-%d %H:%M:%S‘
                               # }
                },
               ‘handlers‘: {
                            ‘console‘:{
                                       ‘level‘:‘DEBUG‘,
                                       ‘class‘:‘logging.StreamHandler‘,
                                       ‘formatter‘: ‘default‘
                            },
                            ‘file‘: {
                                     ‘level‘: ‘DEBUG‘,
                                     ‘class‘: ‘logging.handlers.RotatingFileHandler‘,
                                     ‘formatter‘: ‘default‘,
                                     ‘filename‘ : ‘runlog.log‘,
                                     ‘maxBytes‘:    20 * 1024 * 1024,  # 10M
                                     ‘backupCount‘: 5,
                                     ‘encoding‘ : ‘utf8‘,
                            }
                },
               ‘loggers‘ : {
                            # 定义了一个logger
                            ‘‘ : {
                                          ‘level‘ : ‘DEBUG‘,
                                          ‘handlers‘ : [‘console‘, ‘file‘],
                                          ‘propagate‘ : True
                            }
                }
    }
    logging.config.dictConfig(LOGGING)
时间: 2024-10-12 07:26:46

Python 配置日志的相关文章

【转】python之配置日志的几种方式

[转]python之配置日志的几种方式 作为开发者,我们可以通过以下3种方式来配置logging: 1)使用Python代码显式的创建loggers, handlers和formatters并分别调用它们的配置函数: 2)创建一个日志配置文件,然后使用fileConfig()函数来读取该文件的内容: 3)创建一个包含配置信息的dict,然后把它传递个dictConfig()函数: 需要说明的是,logging.basicConfig()也属于第一种方式,它只是对loggers, handlers

转 使用Python的logging.config.fileConfig配置日志

Python的logging.config.fileConfig方式配置日志,通过解析conf配置文件实现.文件 logglogging.conf 配置如下: [loggers]keys=root,fileLogger,rotatingFileLogger [handlers]keys=consoleHandler,fileHandler,rotatingFileHandler [formatters]keys=simpleFormatter [logger_root]level=DEBUGha

python 的日志logging模块

1.简单的将日志打印到屏幕 import logging logging.debug('This is debug message') logging.info('This is info message') logging.warning('This is warning message') <strong>屏幕上打印:</strong><br /> WARNING:root:This is warning message 默认情况下,logging将日志打印到屏幕,

python 的日志logging模块介绍

最近在写使用python生成App的程序,发现直接用print打印信息不太方便和规范,所以使用了logging日志模块,简单记录下用法,正式项目中应该使用logging.config配置日志,可以实现类似log4j的日志文件大小限制,格式控制,输出位置等. 1.简单的将日志打印到屏幕 import logging logging.debug('This is debug message') logging.info('This is info message') logging.warning(

python标准日志模块logging的使用方法

最近写一个爬虫系统,需要用到python的日志记录模块,于是便学习了一下.python的标准库里的日志系统从Python2.3开始支持.只要import logging这个模块即可使用.如果你想开发一个日志系统, 既要把日志输出到控制台, 还要写入日志文件,只要这样使用: 复制代码代码如下: import logging# 创建一个loggerlogger = logging.getLogger('mylogger')logger.setLevel(logging.DEBUG)# 创建一个han

python的日志模块logging和syslog

syslog模块是在unix环境下工作的模块,不能用于windows,在windows环境下可以使用logging模块. 一.syslog syslog模块可以用于记录系统运行的信息,这个模块提供的方法有,syslog(priority,message),它将message送入系统日志,priority的默认选项为LOG_INFO,openlog([ident[,logoption[,facility]]]),它用于打开日志,ident会被加到每条日志,logoption是日志选项,facili

Python之日志处理(logging模块)

本节内容 日志相关概念 logging模块简介 使用logging提供的模块级别的函数记录日志 logging模块日志流处理流程 使用logging四大组件记录日志 配置logging的几种方式 向日志输出中添加上下文信息 参考文档 一.日志相关概念 日志是一种可以追踪某些软件运行时所发生事件的方法.软件开发人员可以向他们的代码中调用日志记录相关的方法来表明发生了某些事情.一个事件可以用一个可包含可选变量数据的消息来描述.此外,事件也有重要性的概念,这个重要性也可以被称为严重性级别(level)

Anaconda多环境多版本python配置指导

Anaconda多环境多版本python配置指导 来自:http://www.jianshu.com/p/d2e15200ee9b 原文地址:http://conda.pydata.org/docs/test-drive.html conda测试指南 在开始这个conda测试之前,你应该已经下载并安装好了Anaconda或者Miniconda注意:在安装之后,你应该关闭并重新打开windows命令行. 一.Conda测试过程: 使用conda.首先我们将要确认你已经安装好了conda 配置环境.

Sublime Text 3 python 配置

Sublime Text 3 python 配置 Package Control 安装方法 1.通过快捷键 ctrl+` 或者 View > Show Console 打开控制台,然后粘贴相应的 Python 安装代码: 2.Sublime Text 3 安装代码并回车: import urllib.request,os; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib