Initial commit
This commit is contained in:
35
backend/app/api/endpoints/system.py
Normal file
35
backend/app/api/endpoints/system.py
Normal file
@@ -0,0 +1,35 @@
|
||||
from fastapi import APIRouter, Depends
|
||||
from app.core.security import get_current_user, User
|
||||
from app.services.system import SystemService, SystemStats, BlockDevicesInfo
|
||||
|
||||
router = APIRouter()
|
||||
|
||||
|
||||
@router.get("/stats", response_model=SystemStats)
|
||||
async def get_system_stats(current_user: User = Depends(get_current_user)):
|
||||
"""Récupère les statistiques système (CPU, RAM, processus)"""
|
||||
return SystemService.get_system_stats()
|
||||
|
||||
|
||||
@router.get("/cpu")
|
||||
async def get_cpu(current_user: User = Depends(get_current_user)):
|
||||
"""Récupère uniquement les statistiques CPU"""
|
||||
return SystemService.get_cpu_usage()
|
||||
|
||||
|
||||
@router.get("/memory")
|
||||
async def get_memory(current_user: User = Depends(get_current_user)):
|
||||
"""Récupère uniquement les statistiques mémoire"""
|
||||
return SystemService.get_memory_usage()
|
||||
|
||||
|
||||
@router.get("/processes")
|
||||
async def get_processes(limit: int = 10, current_user: User = Depends(get_current_user)):
|
||||
"""Récupère la liste des processus actifs"""
|
||||
return SystemService.get_top_processes(limit=limit)
|
||||
|
||||
|
||||
@router.get("/disks", response_model=BlockDevicesInfo)
|
||||
async def get_block_devices(current_user: User = Depends(get_current_user)):
|
||||
"""Récupère les informations sur les disques et partitions avec lsblk"""
|
||||
return SystemService.get_block_devices()
|
||||
Reference in New Issue
Block a user