Python同时向控制台和文件输出日志logging的方法

yipeiwu_com7年前Python基础

本文实例讲述了Python同时向控制台和文件输出日志logging的方法。分享给大家供大家参考。具体如下:

python提供了非常方便的日志模块,可实现同时向控制台和文件输出日志的功能。

#-*- coding:utf-8 -*-
import logging
# 配置日志信息
logging.basicConfig(level=logging.DEBUG,
          format='%(asctime)s %(name)-12s %(levelname)-8s %(message)s',
          datefmt='%m-%d %H:%M',
          filename='myapp.log',
          filemode='w')
# 定义一个Handler打印INFO及以上级别的日志到sys.stderr
console = logging.StreamHandler()
console.setLevel(logging.INFO)
# 设置日志打印格式
formatter = logging.Formatter('%(name)-12s: %(levelname)-8s %(message)s')
console.setFormatter(formatter)
# 将定义好的console日志handler添加到root logger
logging.getLogger('').addHandler(console)
logging.info('Jackdaws love my big sphinx of quartz.')
logger1 = logging.getLogger('myapp.area1')
logger2 = logging.getLogger('myapp.area2')
logger1.debug('Quick zephyrs blow, vexing daft Jim.')
logger1.info('How quickly daft jumping zebras vex.')
logger2.warning('Jail zesty vixen who grabbed pay from quack.')
logger2.error('The five boxing wizards jump quickly.')

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

相关文章

用Python和WordCloud绘制词云的实现方法(内附让字体清晰的秘笈)

用Python和WordCloud绘制词云的实现方法(内附让字体清晰的秘笈)

环境及模块: Win7 64位 Python 3.6.4 WordCloud 1.5.0 Pillow 5.0.0 Jieba 0.39 目标: 绘制安徽省201...

Python编程之黑板上排列组合,你舍得解开吗

考虑这样一个问题,给定一个矩阵(多维数组,numpy.ndarray()),如何shuffle这个矩阵(也就是对其行进行全排列),如何随机地选择其中的k行,这叫组合,实现一种某一维度空间...

python字符串Intern机制详解

python字符串Intern机制详解

字符串在 Python 中是最简单也是最常用的数据类型之一,在 CPython 中字符串的实现原理使用了一种叫做 Intern(字符串驻留)的技术来提高字符串效率。究竟什么是 inter...

对numpy中向量式三目运算符详解

如果用到数据筛选功能,可以使用x if condition else y的逻辑实现。如果使用的是纯Python,可以使用不断迭代的方式对每一组元素组合进行相应的判断筛选。不过,如果使用n...

Pythony运维入门之Socket网络编程详解

Pythony运维入门之Socket网络编程详解

Socket是什么? Socket 是电脑网络中进程间数据流的端点Socket 是操作系统的通信机制应用程序通过Socket进行网络数据的传输 首先,简单了解一下TCP通信过程: TC...