python通用日志使用小結(jié)
環(huán)境: python 3.10.x
背景
最近在進(jìn)行數(shù)據(jù)處理方面的事。 對(duì)爬蟲(chóng),數(shù)據(jù)處理任務(wù)加日志, 便于知曉任務(wù)是否正確執(zhí)行以及發(fā)生的錯(cuò)誤。
日志模塊
spider_log.py
import logging from logging.handlers import TimedRotatingFileHandler import os cwd = os.path.dirname(os.path.abspath(__file__)) log_path = os.path.join(cwd, "logs") if not os.path.exists(log_path): os.mkdir(log_path) logger = logging.getLogger() logger.setLevel(logging.INFO) ch = logging.StreamHandler() #fh = logging.handlers.RotatingFileHandler(log_path, encoding='utf-8', mode="a", maxBytes =30*1024*1024, backupCount =10) fh = TimedRotatingFileHandler(filename= os.path.join(log_path, "spider.log"), when='midnight', backupCount=30) fh.suffix = "%Y-%m-%d.log" fh.encoding = "utf-8" formatter = logging.Formatter( "%(asctime)s - %(module)s - %(funcName)s - line:%(lineno)d - %(levelname)s - %(message)s" ) ch.setFormatter(formatter) fh.setFormatter(formatter) logger.addHandler(ch) #將日志輸出至屏幕 logger.addHandler(fh) #將日志輸出至文件
此處, 設(shè)置日志按照時(shí)間滾動(dòng)保存, 每天一個(gè)日志文件。最多保留30天日志文件。
日志使用
1、import 日志模塊
2、添加日志記錄
test.py
from spider_log import logger import logging import json logger.log(msg=json.dumps({"Task":"product-spider","url":"https://example.com"}), level=logging.INFO) logger.log(msg="Exception: timeout 10s" , level=logging.ERROR)
說(shuō)明:
有關(guān)日志的更多使用方法, 請(qǐng)查閱 python logging 的使用文檔。此處只是個(gè)人筆記記錄。
到此這篇關(guān)于python通用日志使用小結(jié)的文章就介紹到這了,更多相關(guān)python通用日志內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python?Pygame實(shí)戰(zhàn)之紅心大戰(zhàn)游戲的實(shí)現(xiàn)
說(shuō)起Windows自帶的游戲,相信許多80、90后的朋友都不陌生。本文就將利用Python中的Pygame模塊實(shí)現(xiàn)一下windows經(jīng)典游戲之一的紅心大戰(zhàn),需要的可以參考一下2022-02-02python pip安裝的包放在哪個(gè)目錄(site-packages目錄的位置)
這篇文章主要介紹了python pip安裝的包放在哪個(gè)目錄(site-packages目錄的位置),通常安裝在python安裝目錄下的lib/site-packages目錄下,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-06-06Python?數(shù)據(jù)分析教程探索性數(shù)據(jù)分析
這篇文章主要介紹了Python?數(shù)據(jù)分析教程探索性數(shù)據(jù)分析,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-08-08詳解Python自帶的日期日歷處理calendar庫(kù)的使用
在?Python?開(kāi)發(fā)中,我們經(jīng)常需要處理日期和時(shí)間,雖然?datetime?庫(kù)是最常用的選擇,但其實(shí)?Python?標(biāo)準(zhǔn)庫(kù)中的?calendar?模塊也是一個(gè)強(qiáng)大的工具,下面我們就來(lái)看看它的具體使用吧2024-12-12python程序運(yùn)行進(jìn)程、使用時(shí)間、剩余時(shí)間顯示功能的實(shí)現(xiàn)代碼
這篇文章主要介紹了python程序運(yùn)行進(jìn)程、使用時(shí)間、剩余時(shí)間顯示功能,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2019-07-07非常詳細(xì)的Django連接mysql數(shù)據(jù)庫(kù)步驟記錄
我的Mysql中已經(jīng)有了項(xiàng)目需要使用的相關(guān)數(shù)據(jù)庫(kù),現(xiàn)在需要通過(guò)django來(lái)獲取Mysql里的數(shù)據(jù)并使用,下面這篇文章主要給大家介紹了關(guān)于非常詳細(xì)的Django連接mysql數(shù)據(jù)庫(kù)步驟,需要的朋友可以參考下2022-10-10利用Python輕松實(shí)現(xiàn)視頻轉(zhuǎn)GIF動(dòng)圖
在看視頻的時(shí)候覺(jué)得某段非常有意思想弄成動(dòng)圖,但是無(wú)從下手!本文就將介紹如何利用Python搞定這一需求,感興趣的小伙伴可以學(xué)習(xí)一下2022-01-01Python趣味實(shí)戰(zhàn)之手把手教你實(shí)現(xiàn)舉牌小人生成器
前幾天寫(xiě)了一個(gè)嬰兒級(jí)別的爬蟲(chóng)圖文教程,大家很喜歡.恰好周末看到有人咨詢(xún)這個(gè) “舉牌小人” 怎么做?基于此,我想借此為大家再寫(xiě)一篇 “爬蟲(chóng)應(yīng)用” 的文章,教你制作一個(gè)好玩兒的 “舉牌小人” ,需要的朋友可以參考下2021-06-06