python通用日志使用小結(jié)
環(huán)境: python 3.10.x
背景
最近在進(jìn)行數(shù)據(jù)處理方面的事。 對爬蟲,數(shù)據(jù)處理任務(wù)加日志, 便于知曉任務(wù)是否正確執(zhí)行以及發(fā)生的錯誤。
日志模塊
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è)置日志按照時間滾動保存, 每天一個日志文件。最多保留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)說明:
有關(guān)日志的更多使用方法, 請查閱 python logging 的使用文檔。此處只是個人筆記記錄。
到此這篇關(guān)于python通用日志使用小結(jié)的文章就介紹到這了,更多相關(guān)python通用日志內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
利用Flask實現(xiàn)MySQL數(shù)據(jù)庫增刪改查API的全過程
這篇文章主要介紹了如何用Flask實現(xiàn)MySQL數(shù)據(jù)庫增刪改查API,本文圍繞用Flask實現(xiàn)MySQL數(shù)據(jù)庫增刪改查(CRUD)API展開,并附上完整代碼示例,幫助開發(fā)者掌握Flask結(jié)合MySQL開發(fā)API的方法,需要的朋友可以參考下2025-09-09
關(guān)于 Python json中l(wèi)oad和loads區(qū)別
這篇文章主要介紹了關(guān)于 Python json中l(wèi)oad和loads區(qū)別,文章也有簡單的說明它們之間的相同點,然后詳細(xì)介紹不同點,需要的朋友可以參考一下文章的具體內(nèi)容2021-11-11
Python繪圖魔法之如何用turtle庫開啟你的編程藝術(shù)之旅
Python的turtle庫是一個直觀有趣的圖形繪制函數(shù)庫,是python的標(biāo)準(zhǔn)庫之一,這篇文章主要介紹了Python繪圖魔法之如何用turtle庫開啟你的編程藝術(shù)之旅,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2025-11-11
Python如何使用pymongo連接MongoDB數(shù)據(jù)庫并進(jìn)行相關(guān)操作
PyMongo是驅(qū)動程序,使python程序能夠使用Mongodb數(shù)據(jù)庫,使用python編寫而成,下面這篇文章主要給大家介紹了關(guān)于Python如何使用pymongo連接MongoDB數(shù)據(jù)庫并進(jìn)行相關(guān)操作的相關(guān)資料,需要的朋友可以參考下2023-05-05
Python通過字典映射函數(shù)實現(xiàn)switch
這篇文章主要介紹了Python通過字典映射函數(shù)實現(xiàn)switch,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-11-11
Python爬蟲教程之利用正則表達(dá)式匹配網(wǎng)頁內(nèi)容
這篇文章主要給大家介紹了關(guān)于Python爬蟲教程之利用正則表達(dá)式匹配網(wǎng)頁內(nèi)容的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12
詳解Python中四種關(guān)系圖數(shù)據(jù)可視化的效果對比
python關(guān)系圖的可視化主要就是用來分析一堆數(shù)據(jù)中,每一條數(shù)據(jù)的節(jié)點之間的連接關(guān)系從而更好的分析出人物或其他場景中存在的關(guān)聯(lián)關(guān)系。本文將制作四個不同的關(guān)系圖的可視化效果,感興趣的可以了解一下2022-11-11

