最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python logging模塊用法示例

 更新時間:2018年08月28日 09:45:58   作者:—super—  
這篇文章主要介紹了Python logging模塊用法,結(jié)合實(shí)例形式分析了Python logging模塊相關(guān)配置、函數(shù)、組件等操作方法與注意事項(xiàng),需要的朋友可以參考下

本文實(shí)例講述了Python logging模塊用法。分享給大家供大家參考,具體如下:

logging模塊

函數(shù)式簡單配置

import logging
logging.debug('debug message')
logging.info('info message')
logging.warning('warning message')
logging.error('error message')
logging.critical('critical message')

logging.basicConfig()函數(shù)中可通過具體參數(shù)來更改logging模塊默認(rèn)行為,可用參數(shù)有:

  • filename:用指定的文件名創(chuàng)建FiledHandler,這樣日志會被存儲在指定的文件中。
  • filemode:文件打開方式,在指定了filename時使用這個參數(shù),默認(rèn)值為“a”還可指定為“w”。
  • format:指定handler使用的日志顯示格式。
  • datefmt:指定日期時間格式。
  • level:設(shè)置rootlogger(后邊會講解具體概念)的日志級別
  • stream:用指定的stream創(chuàng)建StreamHandler??梢灾付ㄝ敵龅?code>sys.stderr,sys.stdout或者文件(f=open('test.log','w')),默認(rèn)為sys.stderr。若同時列出了filenamestream兩個參數(shù),則stream參數(shù)會被忽略。

format參數(shù)中可能用到的格式化串:

%(name)s Logger的名字
%(levelno)s 數(shù)字形式的日志級別
%(levelname)s 文本形式的日志級別
%(pathname)s 調(diào)用日志輸出函數(shù)的模塊的完整路徑名,可能沒有
%(filename)s 調(diào)用日志輸出函數(shù)的模塊的文件名
%(module)s 調(diào)用日志輸出函數(shù)的模塊名
%(funcName)s 調(diào)用日志輸出函數(shù)的函數(shù)名
%(lineno)d 調(diào)用日志輸出函數(shù)的語句所在的代碼行
%(created)f 當(dāng)前時間,用UNIX標(biāo)準(zhǔn)的表示時間的浮 點(diǎn)數(shù)表示
%(relativeCreated)d 輸出日志信息時的,自Logger創(chuàng)建以 來的毫秒數(shù)
%(asctime)s 字符串形式的當(dāng)前時間。默認(rèn)格式是 “2003-07-08 16:49:45,896”。逗號后面的是毫秒
%(thread)d 線程ID??赡軟]有
%(threadName)s 線程名??赡軟]有
%(process)d 進(jìn)程ID。可能沒有
%(message)s 用戶輸出的消息

logging庫提供了多個組件:Logger、HandlerFilter、Formatter。Logger對象提供應(yīng)用程序可直接使用的接口,Handler發(fā)送日志到適當(dāng)?shù)哪康牡兀現(xiàn)ilter提供了過濾日志信息的方法,F(xiàn)ormatter指定日志顯示格式。另外,可以通過:logger.setLevel(logging.Debug)設(shè)置級別,當(dāng)然,也可以通過fh.setLevel(logging.Debug)單對文件流設(shè)置某個級別。

def my_logger(filename,leval,file = True,stream = True):
  logger = logging.getLogger()
  formatter = logging.Formatter (fmt = '%(asctime)s--%(message)s----%(name)s--%(levelname)s--%(lineno)d',
                  datefmt = '%d/%m/%y %H:%M:%S')
  logger.setLevel(leval)
  if file:
    file_handler = logging.FileHandler(filename, encoding='utf-8')
    logger.addHandler(file_handler)
    file_handler.setFormatter(formatter)
  if stream:
    stream_handler = logging.StreamHandler()
    stream_handler.setFormatter(formatter)
    logger.addHandler(stream_handler)
  return logger
logger = my_logger('logging',logging.DEBUG)
logger.warning('warn!!!')

運(yùn)行結(jié)果:

28/08/18 09:48:53--warn!!!----root--WARNING--27

更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python日志操作技巧總結(jié)》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門與進(jìn)階經(jīng)典教程》及《Python文件與目錄操作技巧匯總

希望本文所述對大家Python程序設(shè)計有所幫助。

相關(guān)文章

最新評論

吉安县| 东兰县| 侯马市| 灵璧县| 寿阳县| 丁青县| 儋州市| 松江区| 名山县| 武川县| 临颍县| 陆丰市| 密山市| 成安县| 若尔盖县| 大足县| 章丘市| 靖宇县| 渭源县| 禄丰县| 上虞市| 湖北省| 宜阳县| 安国市| 南和县| 光山县| 高邮市| 宁陕县| 平度市| 文化| 博湖县| 桃源县| 贡山| 桦甸市| 南雄市| 柯坪县| 金坛市| 密山市| 静安区| 隆德县| 靖州|