Add training monitor implementation

Signed-off-by: Felipe Cardoso <felipe.cardoso@hotmail.it>
This commit is contained in:
2025-01-23 09:45:07 +01:00
parent 36ce6ac5ef
commit 1c4d78e916
5 changed files with 174 additions and 13 deletions

View File

@@ -9,6 +9,7 @@ from fastapi.middleware.cors import CORSMiddleware
from app.api.routes import training, samples
from app.core.config import settings
from app.services.sample_manager import SampleManager
from app.services.training_monitor import TrainingMonitor
# Configure logging
logging.basicConfig(
@@ -33,7 +34,10 @@ app.add_middleware(
# Create and store SampleManager instance
sample_manager = SampleManager()
training_monitor = TrainingMonitor()
app.state.sample_manager = sample_manager
app.state.training_monitor = training_monitor
@app.on_event("startup")
@@ -41,6 +45,8 @@ async def startup_event():
"""Initialize services on startup"""
logger.info("Starting up Training Monitor API")
await sample_manager.startup()
await training_monitor.startup()
@app.on_event("shutdown")
@@ -48,6 +54,8 @@ async def shutdown_event():
"""Cleanup on shutdown"""
logger.info("Shutting down Training Monitor API")
await sample_manager.shutdown()
await training_monitor.shutdown()
# Include routers with versioning
app.include_router(training.router, prefix=f"{settings.API_VER_STR}/training", tags=["training"])