feat: 初始化告警平台后端项目

- 创建 FastAPI 项目结构
- 实现告警数据模型(SQLAlchemy)
- 实现 multipart/form-data 告警接收接口
- 实现阿里云 OSS 图片上传模块
- 实现告警查询和处理 API
- 实现异步大模型分析模块
This commit is contained in:
2026-02-02 09:40:02 +08:00
commit baa895a6f1
14 changed files with 1069 additions and 0 deletions

34
app/utils/logger.py Normal file
View File

@@ -0,0 +1,34 @@
import logging
import sys
from datetime import datetime
def setup_logger():
logger = logging.getLogger("alert_platform")
logger.setLevel(logging.DEBUG if settings.app.debug else logging.INFO)
handler = logging.StreamHandler(sys.stdout)
handler.setLevel(logging.DEBUG)
formatter = logging.Formatter(
"%(asctime)s - %(name)s - %(levelname)s - %(message)s"
)
handler.setFormatter(formatter)
logger.addHandler(handler)
if settings.app.debug:
log_dir = Path("logs")
log_dir.mkdir(exist_ok=True)
file_handler = logging.FileHandler(
log_dir / f"alert_platform_{datetime.now().strftime('%Y%m%d')}.log",
encoding="utf-8",
)
file_handler.setLevel(logging.DEBUG)
file_handler.setFormatter(formatter)
logger.addHandler(file_handler)
return logger
logger = setup_logger()