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

python實(shí)現(xiàn)自定義日志的具體方法

 更新時(shí)間:2021年05月28日 08:27:36   作者:小妮淺淺  
在本篇文章里小編給大家整理的是一篇關(guān)于python實(shí)現(xiàn)自定義日志的具體方法,有興趣的朋友們可以學(xué)習(xí)下。

1、導(dǎo)入logging模塊:

import logging

2、創(chuàng)建日志收集器:

logger = logging.getLogger(“日志收集器的name”)

3、設(shè)置日志收集器的日志級(jí)別:

logger.setLevel(logging.INFO) #設(shè)置收集器的級(jí)別為INFO。

4、給日志收集器創(chuàng)建輸出渠道,根據(jù)第一部分的內(nèi)容知:日志輸出渠道包含控制臺(tái)輸出和文件輸出。

5、設(shè)置日志輸出的內(nèi)容格式。

# 設(shè)置日志的輸出格式
 
fmt = "%(asctime)s %(name)s %(levelname)s %(filename)s-%(lineno)d:%(message)s"
 
formatter = logging.Formatter(fmt)

6、將設(shè)置的日志格式綁定到創(chuàng)建的輸出渠道中,即將日志格式與輸出渠道關(guān)聯(lián)起來。

7、將設(shè)置好的輸出渠道,添加到日志收集器。

實(shí)例擴(kuò)展:

import os
import time
import logging

#返回一個(gè)logger實(shí)例,如果沒有指定name,返回root logger。
# 只要name相同,返回的logger實(shí)例都是同一個(gè)而且只有一個(gè),即name和logger實(shí)例是一一對(duì)應(yīng)的。
# 這意味著,無需把logger實(shí)例在各個(gè)模塊中傳遞。只要知道name,就能得到同一個(gè)logger實(shí)例。
logger = logging.getLogger('mylogger')
# 設(shè)置總?cè)罩炯?jí)別, 也可以給不同的handler設(shè)置不同的日志級(jí)別
#設(shè)置logger的level, level有以下幾個(gè)級(jí)別:
# 級(jí)別高低順序:NOTSET < DEBUG < INFO < WARNING < ERROR < CRITICAL
# 如果把looger的級(jí)別設(shè)置為INFO, 那么小于INFO級(jí)別的日志都不輸出, 大于等于INFO級(jí)別的日志都輸出 
logger.setLevel(logging.DEBUG)

# 控制臺(tái)日志和日志文件使用同一個(gè)formatter,formatter用于描述日志的格式
formatter = logging.Formatter(
	'%(asctime)s - %(filename)s[line:%(lineno)d] - <%(threadName)s %(thread)d>' +
	'- <Process %(process)d> - %(levelname)s: %(message)s'
)
# asctime:日志產(chǎn)生的時(shí)間;filename:產(chǎn)生日志的腳本文件名;lineno:該腳本文件哪一行代碼產(chǎn)生了日志
# threadName: 當(dāng)前線程名;thread: 當(dāng)前進(jìn)程名;Process進(jìn)程同thread線程
# levelname: logger的級(jí)別;meesage: 具體的日志信息


# 創(chuàng)建Handler, 輸出日志到控制臺(tái)和文件
# 日志文件FileHandler
basedir = os.path.abspath(".") #返回腳本所在的絕對(duì)路徑
log_dir = os.path.join(basedir, 'logs')  # 日志文件所在目錄,即‘腳本路徑/logs'
if not os.path.isdir(log_dir):
	os.mkdir(log_dir)
filename = time.strftime('%Y-%m-%d-%H-%M-%S', time.localtime(time.time())) + '.log'  # 日志文件名,以當(dāng)前時(shí)間命名
file_handler = logging.FileHandler(os.path.join(log_dir, filename))  # 創(chuàng)建日志文件handler
file_handler.setFormatter(formatter)  # 設(shè)置Formatter
file_handler.setLevel(logging.INFO)  # 單獨(dú)設(shè)置日志文件的日志級(jí)別

# 控制臺(tái)日志StreamHandler
stream_handler = logging.StreamHandler()
stream_handler.setFormatter(formatter)
# stream_handler.setLevel(logging.INFO)  # 單獨(dú)設(shè)置控制臺(tái)日志的日志級(jí)別,注釋掉則使用總?cè)罩炯?jí)別

# 將handler添加到logger中

logger.addHandler(file_handler)
logger.addHandler(stream_handler)

到此這篇關(guān)于python實(shí)現(xiàn)自定義日志的具體方法的文章就介紹到這了,更多相關(guān)python自定義日志如何實(shí)現(xiàn)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python命令行運(yùn)行報(bào)錯(cuò)ModuleNotFoundError:No module named‘XXX‘找不到自定義模塊

    python命令行運(yùn)行報(bào)錯(cuò)ModuleNotFoundError:No module named‘X

    這篇文章主要介紹了python命令行運(yùn)行報(bào)錯(cuò)ModuleNotFoundError:No module named‘XXX‘找不到自定義模塊問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • python統(tǒng)計(jì)列表中元素出現(xiàn)次數(shù)的三種方法

    python統(tǒng)計(jì)列表中元素出現(xiàn)次數(shù)的三種方法

    這篇文章主要介紹了python統(tǒng)計(jì)列表中元素出現(xiàn)次數(shù)的三種方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面跟著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-08-08
  • pyecharts繪制時(shí)間輪播圖柱形圖+餅圖+玫瑰圖+折線圖

    pyecharts繪制時(shí)間輪播圖柱形圖+餅圖+玫瑰圖+折線圖

    這篇文章主要介紹了pyecharts繪制時(shí)間輪播圖柱形圖+餅圖+玫瑰圖+折線圖,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,感興趣的小伙伴可以參考一下
    2022-06-06
  • Python中將圖像轉(zhuǎn)換為PDF的方法實(shí)現(xiàn)

    Python中將圖像轉(zhuǎn)換為PDF的方法實(shí)現(xiàn)

    本文主要介紹了Python中將圖像轉(zhuǎn)換為PDF的方法實(shí)現(xiàn),主要使用img2pdf和PyPDF2軟件包,具有一定的參考價(jià)值,感興趣的可以了解一下
    2023-08-08
  • python?tornado協(xié)程調(diào)度原理示例解析

    python?tornado協(xié)程調(diào)度原理示例解析

    這篇文章主要為大家介紹了python?tornado協(xié)程調(diào)度原理示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-09-09
  • 解決python cv2.imread 讀取中文路徑的圖片返回為None的問題

    解決python cv2.imread 讀取中文路徑的圖片返回為None的問題

    這篇文章主要介紹了解決python cv2.imread 讀取中文路徑的圖片返回為None的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-06-06
  • Selenium定時(shí)刷新網(wǎng)頁的實(shí)現(xiàn)代碼

    Selenium定時(shí)刷新網(wǎng)頁的實(shí)現(xiàn)代碼

    這篇文章主要介紹了Selenium定時(shí)刷新網(wǎng)頁的實(shí)現(xiàn)代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-10-10
  • python-字典dict和集合set

    python-字典dict和集合set

    這篇文章主要介紹了python-字典dict和集合set,字典是python中的一種數(shù)據(jù)結(jié)構(gòu)。集合(set)與字典相同均存儲(chǔ)key,但只存儲(chǔ)key,key不可重復(fù),所以set中的值不可重復(fù),而且是無序,下面來看看更多相關(guān)內(nèi)容吧
    2021-12-12
  • python正則表達(dá)式用法超詳細(xì)講解大全

    python正則表達(dá)式用法超詳細(xì)講解大全

    正則表達(dá)式是一種用來匹配字符串的強(qiáng)有力的武器,利用字符來匹配字符的思想,基于顯示規(guī)則進(jìn)行模式匹配,可以高效組合成不同樣式的字符串,下面這篇文章主要給大家介紹了關(guān)于python正則表達(dá)式用法超詳細(xì)講解的相關(guān)資料,需要的朋友可以參考下
    2022-10-10
  • 深入解析Python中函數(shù)的參數(shù)與作用域

    深入解析Python中函數(shù)的參數(shù)與作用域

    這篇文章主要介紹了Python中函數(shù)的參數(shù)與作用域,是Python入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2016-03-03

最新評(píng)論

宁安市| 金塔县| 楚雄市| 漳平市| 石屏县| 卢氏县| 镇原县| 广汉市| 兴文县| 崇州市| 商南县| 榆林市| 富顺县| 德州市| 奉贤区| 交口县| 栾城县| 疏附县| 察隅县| 桂林市| 光泽县| 中宁县| 河源市| 泸水县| 潍坊市| 耿马| 施秉县| 广东省| 松溪县| 惠水县| 宜兴市| 高州市| 辉南县| 平塘县| 科技| 罗平县| 忻州市| 仪陇县| 丰镇市| 茂名市| 定结县|