我們要搭建日志系統,我們使用loguru,挺不錯的一個開源的日志系統。可以使用
pip install loguru
我們在common創建log.py使用方式也很簡單
import os import time from loguru import logger #日志的路徑 log_path = os.path.join(os.getcwd(), 'logs') if not os.path.exists(log_path): os.mkdir(log_path) #日志輸出的文件格式 log_path_error = os.path.join(log_path, f'{time.strftime("%Y-%m-%d")}_error.log') logger.add(log_path_error, rotation="12:00", retention="5 days", enqueue=True)
我們看下如何使用
#首先去導入 from common.logs import logger # 新建用戶 @usersRouter.post("/users/", tags=["users"]) def create_user(user: UserCreate, db: Session = Depends(get_db)): """ - **email**: 用戶的郵箱 - **password**: 用戶密碼 """ logger.info("創建用戶") db_crest = get_user_emai(db, user.email) user.password = get_password_hash(user.password) if not db_crest: logger.success("創建用戶成功") user=db_create_user(db=db, user=user) return reponse(code=0,data={'user':user.email},message="success") logger.error("賬號:{}不能重復".format(user.email)) return reponse(data={'msg':"賬號不能重復"},code=1,message="error")
在使用的地方去引入,我們去啟動即可。
啟動后,默認創建了這個文件
我們看下請求的輸出
而且在控制台的輸出會根據你用的類型不一樣,對應的日志的顏色也是不一樣的,我們看下文件的中的輸出
也是按照固定的格式給我們輸出的,還包含了我們是在哪一行輸出的,什么方法中,方便我們后續的排查問題。
代碼存儲https://gitee.com/liwanlei/fastapistuday
文章首發在公眾號,歡迎關注。