@@ -697,8 +697,17 @@ class MarketResponse(BaseModel):
|
|||||||
exchange_id: str
|
exchange_id: str
|
||||||
|
|
||||||
|
|
||||||
|
class CpuInfo(BaseModel):
|
||||||
|
cpu: int
|
||||||
|
pct: float
|
||||||
|
|
||||||
|
|
||||||
class SysInfo(BaseModel):
|
class SysInfo(BaseModel):
|
||||||
cpu_pct: list[float]
|
cpu_pct: list[float]
|
||||||
|
cpu_load: list[CpuInfo]
|
||||||
|
cpu_load_avg: dict[str, float]
|
||||||
|
cpu_count: int
|
||||||
|
cpu_avg: float
|
||||||
ram_pct: float
|
ram_pct: float
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
+17
-1
@@ -1736,8 +1736,24 @@ class RPC:
|
|||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def _rpc_sysinfo() -> dict[str, Any]:
|
def _rpc_sysinfo() -> dict[str, Any]:
|
||||||
|
cpu_pct = psutil.cpu_percent(interval=0.1, percpu=True)
|
||||||
|
load_avg = psutil.getloadavg()
|
||||||
return {
|
return {
|
||||||
"cpu_pct": psutil.cpu_percent(interval=1, percpu=True),
|
"cpu_pct": cpu_pct,
|
||||||
|
"cpu_load": [
|
||||||
|
{
|
||||||
|
"cpu": idx,
|
||||||
|
"pct": pct,
|
||||||
|
}
|
||||||
|
for idx, pct in enumerate(cpu_pct)
|
||||||
|
],
|
||||||
|
"cpu_avg": sum(cpu_pct) / len(cpu_pct) if cpu_pct else 0.0,
|
||||||
|
"cpu_load_avg": {
|
||||||
|
"1m": load_avg[0],
|
||||||
|
"5m": load_avg[1],
|
||||||
|
"15m": load_avg[2],
|
||||||
|
},
|
||||||
|
"cpu_count": len(cpu_pct),
|
||||||
"ram_pct": psutil.virtual_memory().percent,
|
"ram_pct": psutil.virtual_memory().percent,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user