Browse Source

feat:日志保存到本地

TzuxinChen 3 months ago
parent
commit
5bf9d0837b
3 changed files with 25 additions and 5 deletions
  1. 4 1
      .gitignore
  2. 21 4
      common/logger.py
  3. 0 0
      logs/__init__

+ 4 - 1
.gitignore

@@ -1,4 +1,7 @@
 .idea
 fastapi_main.py
 __pycache__
-.env
+.env
+.log
+result
+*.log

+ 21 - 4
common/logger.py

@@ -1,13 +1,30 @@
 import logging
+from logging.handlers import TimedRotatingFileHandler
 import sys
 
+# 创建日志器
 logger = logging.getLogger(__name__)
 logger.setLevel(logging.INFO)
 
-handler = logging.StreamHandler(sys.stdout)
-handler.setLevel(logging.INFO)
+# 创建控制台处理器 (StreamHandler)
+console_handler = logging.StreamHandler(sys.stdout)
+console_handler.setLevel(logging.INFO)
 
+# 创建按天分割的文件处理器 (TimedRotatingFileHandler)
+file_handler = TimedRotatingFileHandler(
+    filename='logs/app.log',  # 日志文件路径
+    when='midnight',                # 每天午夜生成新的日志文件
+    interval=1,                     # 间隔1天
+    backupCount=7,                  # 保留最近7天的日志文件
+    encoding='utf-8'                # 文件编码
+)
+file_handler.setLevel(logging.INFO)
+
+# 创建日志格式
 formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s')
-handler.setFormatter(formatter)
+console_handler.setFormatter(formatter)
+file_handler.setFormatter(formatter)
 
-logger.addHandler(handler)
+# 添加处理器到日志器
+logger.addHandler(console_handler)
+logger.addHandler(file_handler)

+ 0 - 0
logs/__init__