Python 日志模块logging

  • 原创
  • Madman
  • /
  • /
  • 0
  • 9998 次阅读

Synopsis: Python程序中可以使用内置的logging模块,方便的记录运行日志,将日志信息进行分类存储,当程序出现BUG时,可以通过分析日志来定位问题所在

1. 基本概念

import logging


logging.basicConfig(format='%(asctime)s - %(name)s - %(levelname)s - %(message)s')

logging.debug('This is debug message')
logging.info('This is info message')
logging.warning('This is warning message')
logging.error('This is error message')
logging.critical('This is critical message')

输出结果:

2018-06-27 15:21:37,941 - root - WARNING - This is warning message
2018-06-27 15:21:37,941 - root - ERROR - This is error message
2018-06-27 15:21:37,942 - root - CRITICAL - This is critical message

其中,2018-06-27 15:21:37,941对应%(asctime)s,表示当前时间;root对应%(name)s,表示logger实例的名称,默认名称是root;WARNING对应%(levelname)s,表示日志级别(可以看到默认是WARNING,它以下的INFO和DEBUG都不显示);This is warning message对应%(message)s,表示用户要输出的日志内容

1.1 日志级别

级别Level 对应数值
logging.NOTSET 0
logging.DEBUG 10
logging.INFO 20
logging.WARNING (默认级别) 30
logging.ERROR 40
logging.CRITICAL 50
In [1]: import logging

In [2]: logging.NOTSET
Out[2]: 0

In [3]: logging.DEBUG
Out[3]: 10

In [4]: logging.INFO
Out[4]: 20

In [5]: logging.WARNING
Out[5]: 30

In [6]: logging.ERROR
Out[6]: 40

In [7]: logging.CRITICAL
Out[7]: 50

如本文开头示例,默认日志级别是WARNING,它以下的INFO和DEBUG都不显示。

假设设置了日志级别为INFO,则会输出级别大于或等于INOF的日志,而小于它的如DEBUG则不会输出:

import logging


logging.basicConfig(format='%(asctime)s - %(name)s - %(levelname)s - %(message)s', level=logging.INFO)

logging.debug('This is debug message')
logging.info('This is info message')
logging.warning('This is warning message')
logging.error('This is error message')
logging.critical('This is critical message')

输出结果:

2018-06-27 15:39:15,582 - root - INFO - This is info message
2018-06-27 15:39:15,583 - root - WARNING - This is warning message
2018-06-27 15:39:15,
                                
                            
  • Miao jingjing
  • jackleek
  • raojingpeng
  • __豆约翰__
  • Collect Your Poker Winnings cl181357.tw1.ru Dz
  • Exchange Your Signed-and-Verified Prize co859448.tw1.ru 1x
  • Acquire Your Online Token Extra cl181357.tw1.ru JT
  • Dig Out Your Enigmatic Reward cl181357.tw1.ru tv
  • Take Your Money Wheel Cash cl181357.tw1.ru j9
  • Use Your Remarkably Large Money co859448.tw1.ru tt
  • Exchange Your Jeweled Crown Extra uirhukehgm.temp.swtest.ru oE
  • Claim Your Jackpot Surprise cl181357.tw1.ru 8V
  • Open Your Comical Games uirhukehgm.temp.swtest.ru Y3
  • Immediately Grab Your Gift uirhukehgm.temp.swtest.ru Ai
  • Redeem Your Diverting Games Bonus uirhukehgm.temp.swtest.ru fL
  • A Unique Present, Personally Yours co859448.tw1.ru 8x
  • Delight in Your Top-Quality User Money co859448.tw1.ru RC
  • Redeem Your Internet Wares cl181357.tw1.ru ts
  • Obtain Your Astonishing Prize uirhukehgm.temp.swtest.ru yw
  • Take Out Your Easy Games uirhukehgm.temp.swtest.ru 61
  • Immediately Get Your Cash uirhukehgm.temp.swtest.ru yf
  • Activate Your Sic Bo Reward uirhukehgm.temp.swtest.ru Df
  • Claim Your Strong User Cash uirhukehgm.temp.swtest.ru lZ
  • Withdraw Your Surprise Gift co859448.tw1.ru nO
未经允许不得转载: LIFE & SHARE - 王颜公子 » Python 日志模块logging

分享

作者

作者头像

Madman

如需 Linux / Python 相关问题付费解答,请按如下方式联系我

0 条评论

暂时还没有评论.

专题系列