国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 編程 > Python > 正文

python logging類庫(kù)使用例子

2020-02-23 06:11:55
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

一、簡(jiǎn)單使用

代碼如下:
def TestLogBasic():
    import logging
    logging.basicConfig(filename = 'log.txt', filemode = 'a', level = logging.NOTSET, format = '%(asctime)s - %(levelname)s: %(message)s')
    logging.debug('this is a message')
    logging.info("this is a info")
    logging.disable(30)#logging.WARNING
    logging.warning("this is a warnning")
    logging.critical("this is a critical issue")
    logging.error("this is a error")
    logging.addLevelName(88,"MyCustomError")
    logging.log(88,"this is an my custom error")
    try:
      raise Exception('this is a exception')
    except:
      logging.exception( 'exception')
    logging.shutdown()

TestLogBasic()

說(shuō)明:(此實(shí)例為最簡(jiǎn)單的用法,用來(lái)將log記錄到log文件中)

1)logging.basicConfig()中定義默認(rèn)的log到log.txt,log文件為append模式,處理所有的level大于logging.NOTSET的logging,log的格式定義為'%(asctime)s - %(levelname)s: %(message)s';

2)使用logging.debug()...等來(lái)log相應(yīng)level的log;

3)使用logging.disable()來(lái)disable某個(gè)logging level;

4)使用logging.addLevelName增加自定義的logging level;

5)使用logging.log來(lái)log自定義的logging level的log;

輸出的text的log如下:

代碼如下:
2011-01-18 10:02:45,415 - DEBUG: this is a message
2011-01-18 10:02:45,463 - INFO: this is a info
2011-01-18 10:02:45,463 - CRITICAL: this is a critical issue
2011-01-18 10:02:45,463 - ERROR: this is a error
2011-01-18 10:02:45,463 - MyCustomError: this is an my custom error
2011-01-18 10:02:45,463 - ERROR: exception
Traceback (most recent call last):
  File "testlog.py", line 15, in TestLogBasic
    raise Exception('this is a exception')
Exception: this is a exception

二、logging的level

代碼如下:
#logging level
#logging.NOTSET 0
#logging.DEBUG 10
#logging.INFO 20
#logging.WARNING 30
#logging.ERROR 40
#logging.CRITICAL 50

logging的level對(duì)應(yīng)于一個(gè)int,例如10,20...用戶可以自定義logging的level。

可以使用logging.setLevel()來(lái)指定要處理的logger級(jí)別,例如my_logger.setLevel(logging.DEBUG)表示只處理logging的level大于10的logging。
 

三、Handlers

Handler定義了log的存儲(chǔ)和顯示方式。

NullHandler不做任何事情。

StreamHandler實(shí)例發(fā)送錯(cuò)誤到流(類似文件的對(duì)象)。
FileHandler實(shí)例發(fā)送錯(cuò)誤到磁盤(pán)文件。
BaseRotatingHandler是所有輪徇日志的基類,不能直接使用。但是可以使用RotatingFileHandler和TimeRotatingFileHandler。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 额济纳旗| 鄂托克前旗| 密云县| 玉树县| 榆社县| 东海县| 凌云县| 鸡西市| 宁河县| 仁化县| 穆棱市| 都匀市| 西青区| 滁州市| 中江县| 紫金县| 嘉黎县| 黎城县| 齐齐哈尔市| 鹤岗市| 雷山县| 津南区| 石渠县| 板桥市| 仪陇县| 永丰县| 容城县| 陆丰市| 富裕县| 滁州市| 容城县| 姜堰市| 平潭县| 方城县| 巴中市| 田东县| 涞水县| 宝兴县| 左云县| 攀枝花市| 南召县|