tek Atrust
chore(deploy): build monolithic server for Hugging Face
d5ef46f
Raw
History Blame Contribute Delete
793 Bytes
"""
Threading Metrics Submodule
"""
import threading
import time
from dataclasses import dataclass, field
import psutil
@dataclass
class SystemMetrics:
"""Current system performance metrics"""
memory_percent: float
cpu_percent: float
available_memory_gb: float
active_threads: int
timestamp: float = field(default_factory=time.time)
def get_system_metrics() -> SystemMetrics:
"""Get current system performance metrics"""
memory = psutil.virtual_memory()
cpu_percent = psutil.cpu_percent(interval=None)
active_threads = threading.active_count()
return SystemMetrics(
memory_percent=memory.percent,
cpu_percent=cpu_percent,
available_memory_gb=memory.available / (1024**3),
active_threads=active_threads,
)