零配置python日志,安裝即用

寫了很多年的python日志都是使用內(nèi)置的logging模塊來完成的,使用時都需要經(jīng)過繁瑣的配置。有時候,還可能出現(xiàn)丟失日志的情況,直到loguru的出現(xiàn)。

成都創(chuàng)新互聯(lián)公司是一家專業(yè)的成都網(wǎng)站建設(shè)公司,我們專注成都網(wǎng)站設(shè)計、成都做網(wǎng)站、外貿(mào)網(wǎng)站建設(shè)、網(wǎng)絡(luò)營銷、企業(yè)網(wǎng)站建設(shè),賣鏈接廣告投放為企業(yè)客戶提供一站式建站解決方案,能帶給客戶新的互聯(lián)網(wǎng)理念。從網(wǎng)站結(jié)構(gòu)的規(guī)劃UI設(shè)計到用戶體驗提高,創(chuàng)新互聯(lián)力求做到盡善盡美。

【閱讀全文】

loguru真的是十分的簡單的,安裝之后直接導入到python代碼塊中即可直接使用。

1、安裝環(huán)境

我們還是按照pip的方式來進行安裝,默認使用清華大學的鏡像站。

pip install loguru -i https://pypi.tuna.tsinghua.edu.cn/simple

安裝完成后就可以直接開始使用了。

2、常規(guī)日志打印

在控制臺打印常規(guī)日志時不用添加任何的配置直接使用,使用完成后我們可以來驗證一下打印效果。

from loguru import logger

# 使用debug級別打印一行日志

logger.debug('I am debug message.')

下面是我在pycharm上面取下來的日志效果圖。

可以看一下效果還是令人滿意的,這顏色搭配也比較nice,并且日志時間精確到秒級。想要看到的日志信息也基本囊括了。

3、寫入日志文件

想寫入日志文件也是比較簡單不用配置,只需要調(diào)用add函數(shù)添加文件即可。

# 添加日志文件

logger.add('./message-info.log')

# 打印一行debug日志

logger.debug('I am debug message.')

此時,不僅控制臺會出現(xiàn)一行日志,并且在message-info.log文件中也寫入了一條dubug日志信息。

若是在寫入文件時想要指定自己的輸出格式,則可以直接在add函數(shù)直接設(shè)置即可,同時可以設(shè)置輸出到日志文件中的級別。

# 按照特定的格式將info級別的日志寫入到日志文件中

log = logger.add('./info.log',format='{time} | {level} | {message}',level='INFO')

# 這時,多打印一些info級別的日志

logger.info('I am info message <1>.')

logger.info('I am info message <2>.')

logger.info('I am info message <3>.')

logger.info('I am info message <4>.')

logger.info('I am info message <5>.')

下面是在pycharm控制臺打印的日志效果

下面是日志文件中的展示效果,跟我們設(shè)定的日志格式是一樣的。

4、停止寫入日志文件

在上述過程中我們添加自定義日志格式的日志信息到info.log文件中時特意返回了一個log變量。

這個log其實是返回了一個日志文件的id,在需要停止向該日志文件中寫入日志時,只需要調(diào)用remove函數(shù)將該文件的日志id作為參數(shù)傳入即可停止向日志文件中寫入日志。

# 停止向日志文件中寫入日志

logger.remove(log)

此時,后面的 日志文件將不會再寫入日志文件中了。

5、滾動記錄日志文件

在實際情況中,我們并不是只會有一個日志文件。當一個日志文件超過一定的大小、或是在一個特定的時間周期都可以通過參數(shù)的設(shè)定來生成新的日志文件繼續(xù)記錄日志。

# 超過10M生成一個新的日志文件

logger.add('info.log',rotation='10 MB')

# 每天凌晨一點生成一個新的日志文件

logger.add('info.log',rotation='01:00')

并且,為了防止日志文件在長時間的記錄之后占用磁盤,一般還可以設(shè)置30天為周期清理日志文件,這樣就又解決了磁盤爆滿的問題。

# 設(shè)置該日志文件保留的時間為30天

logger.add('info.log',retention='30 days')

通常日志文件如果按照原始的方式存儲,那么占用空間還是比較大的。loguru也為我們想到了,就是通過指定文件壓縮的格式之后將日志文件進行壓縮。

logger.add('info.log',compression='zip')

6、異常日志捕獲

在實際coding過程中,特別是生產(chǎn)環(huán)境,若是出現(xiàn)一些異常信息沒有被寫入到日志文件中的情況時是特別難受的。在生產(chǎn)環(huán)境中,日志是解決問題的唯一辦法。

loguru提供了注解的方式可以將發(fā)生異常的函數(shù)信息直接寫入日志文件中,比如,有這樣一個函數(shù)在運行過程中發(fā)生了異常。

@logger.catch
def func(param):

    return 10 / param

func(0)

上面這個函數(shù)在分母是0的時候肯定是會拋出異常的,我們使用注解@logger.catch異常信息就會被寫入。

同時,在日志文件中也會記錄詳細的異常信息。

【往期精彩】

英語沒學好到底能不能做coder,別再糾結(jié)了先學起來...

數(shù)據(jù)清洗工具flashtext,效率直接提升了幾十倍數(shù)!

一個help函數(shù)解決了python的所有文檔信息查看...

python 自定義異常/raise關(guān)鍵字拋出異常

python 本地音樂播放器制作過程(附完整源碼)

分享標題:零配置python日志,安裝即用
路徑分享:http://m.kartarina.com/article24/dsoggje.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化、網(wǎng)站收錄云服務器網(wǎng)站營銷、軟件開發(fā)、建站公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

小程序開發(fā)
主站蜘蛛池模板: 无码高潮爽到爆的喷水视频app| 久久精品国产亚洲AV无码麻豆 | 国产精品无码DVD在线观看| 尤物永久免费AV无码网站| 国产精品99无码一区二区 | 国产午夜精华无码网站| 无码无遮挡又大又爽又黄的视频| 日韩精品无码一区二区三区AV| 国产av无码专区亚洲av桃花庵| 日韩精品无码免费一区二区三区| 亚洲av中文无码| av潮喷大喷水系列无码| 2020无码专区人妻系列日韩| 日韩精品专区AV无码| 亚洲一本大道无码av天堂 | 精品无码一区二区三区爱欲| 国产成人无码A区在线观看导航 | 天堂无码久久综合东京热 | 天堂无码久久综合东京热| 亚洲AV色吊丝无码| 亚洲中文字幕无码一区| 无码不卡中文字幕av| AAA级久久久精品无码片| 亚洲AV无码久久精品成人 | 亚洲av福利无码无一区二区 | 中文字幕无码日韩专区免费| 国产怡春院无码一区二区| 无码av人妻一区二区三区四区| 亚洲中文久久精品无码ww16| 一本大道久久东京热无码AV| 18禁成年无码免费网站无遮挡| 亚洲av永久无码精品秋霞电影秋 | 中文字幕av无码不卡| 国产成人无码aa精品一区| 成人免费无码大片A毛片抽搐| 色欲aⅴ亚洲情无码AV蜜桃| 亚洲AV成人无码天堂| 无码人妻精品内射一二三AV| 久久久无码精品午夜| 韩国无码AV片在线观看网站| 亚洲成A人片在线观看无码3D|