统一日志类的定义

This commit is contained in:
mark.tian
2025-12-08 13:37:04 +08:00
parent a55c321fce
commit f9c74a1dda
8 changed files with 51 additions and 16 deletions

View File

@@ -11,10 +11,10 @@ from sqlalchemy import text
from fastapi import Request from fastapi import Request
from sqlalchemy.ext.asyncio import AsyncSession from sqlalchemy.ext.asyncio import AsyncSession
from app.config import settings from app.config import settings
from app.logger import get_logger from app.logger import get_callback_service_logger
from app.database import CallbackFailureLog from app.database import CallbackFailureLog
logger = get_logger("callback_service") logger = get_callback_service_logger()
async def log_callback_request( async def log_callback_request(

View File

@@ -3,9 +3,9 @@ Celery应用配置
""" """
from celery import Celery from celery import Celery
from app.config import settings from app.config import settings
from app.logger import get_logger from app.logger import get_celery_logger
logger = get_logger("celery") logger = get_celery_logger()
# 创建Celery应用实例 # 创建Celery应用实例
celery_app = Celery( celery_app = Celery(

View File

@@ -6,7 +6,7 @@ from sqlalchemy import create_engine
import json import json
from app.celery_app import celery_app from app.celery_app import celery_app
from app.config import settings from app.config import settings
from app.logger import get_logger from app.logger import get_celery_tasks_logger
from app.callback_service import ( from app.callback_service import (
save_callback_data_items, save_callback_data_items,
get_uncompleted_callback_log, get_uncompleted_callback_log,
@@ -16,7 +16,7 @@ from app.callback_service import (
) )
from app.redis_lock import redis_manager from app.redis_lock import redis_manager
logger = get_logger("celery_tasks") logger = get_celery_tasks_logger()
# 创建同步数据库连接用于Celery任务 # 创建同步数据库连接用于Celery任务
engine = create_engine( engine = create_engine(

View File

@@ -3,10 +3,10 @@ from sqlalchemy.ext.asyncio import create_async_engine, AsyncSession, async_sess
from sqlalchemy.orm import DeclarativeBase from sqlalchemy.orm import DeclarativeBase
from sqlalchemy import Column, String, Integer, DateTime, Text, JSON, Index, text, Boolean from sqlalchemy import Column, String, Integer, DateTime, Text, JSON, Index, text, Boolean
from app.config import settings from app.config import settings
from app.logger import get_logger from app.logger import db_logger
from sqlalchemy.sql.expression import func from sqlalchemy.sql.expression import func
logger = get_logger("database") logger = db_logger
class Base(DeclarativeBase): class Base(DeclarativeBase):

View File

@@ -1,6 +1,5 @@
import logging import logging
import logging.handlers import logging.handlers
import os
from pathlib import Path from pathlib import Path
from typing import Optional from typing import Optional
@@ -106,4 +105,40 @@ def get_logger(name: Optional[str] = None) -> logging.Logger:
app_logger = get_logger("app") app_logger = get_logger("app")
api_logger = get_logger("api") api_logger = get_logger("api")
db_logger = get_logger("database") db_logger = get_logger("database")
external_api_logger = get_logger("external_api") external_api_logger = get_logger("external_api")
# 各模块专用日志器
main_logger = get_logger("main")
routes_logger = get_logger("routes")
celery_logger = get_logger("celery")
celery_tasks_logger = get_logger("celery_tasks")
callback_service_logger = get_logger("callback_service")
redis_logger = get_logger("redis")
# 向后兼容的默认日志器
logger = app_logger
# 便捷获取各模块日志器的函数
def get_main_logger():
"""获取main模块日志器"""
return main_logger
def get_routes_logger():
"""获取routes模块日志器"""
return routes_logger
def get_celery_logger():
"""获取celery模块日志器"""
return celery_logger
def get_celery_tasks_logger():
"""获取celery_tasks模块日志器"""
return celery_tasks_logger
def get_callback_service_logger():
"""获取callback_service模块日志器"""
return callback_service_logger
def get_redis_logger():
"""获取redis模块日志器"""
return redis_logger

View File

@@ -3,9 +3,9 @@ import asyncio
import uuid import uuid
from typing import Optional from typing import Optional
from app.config import settings from app.config import settings
from app.logger import get_logger from app.logger import get_redis_logger
logger = get_logger("redis") logger = get_redis_logger()
class RedisLock: class RedisLock:

View File

@@ -3,10 +3,10 @@ from sqlalchemy.ext.asyncio import AsyncSession
from app.database import get_db from app.database import get_db
from app.models import CallbackResponse from app.models import CallbackResponse
from app.config import settings from app.config import settings
from app.logger import get_logger from app.logger import get_routes_logger
from app.callback_service import log_callback_request from app.callback_service import log_callback_request
logger = get_logger("routes") logger = get_routes_logger()
router = APIRouter() router = APIRouter()

View File

@@ -10,12 +10,12 @@ import os
from app.config import settings from app.config import settings
from app.database import engine from app.database import engine
from app.routes import router from app.routes import router
from app.logger import get_logger, LoggerManager from app.logger import LoggerManager, get_main_logger
# 初始化日志系统 # 初始化日志系统
LoggerManager.setup_logging() LoggerManager.setup_logging()
logger = get_logger("main") logger = get_main_logger()
# Celery Worker 进程管理 # Celery Worker 进程管理
celery_worker_process = None celery_worker_process = None