You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
53 lines
1.1 KiB
53 lines
1.1 KiB
from pydantic import BaseModel
|
|
from typing import Optional, List
|
|
|
|
|
|
class CpuInfo(BaseModel):
|
|
cpu_num: Optional[int]
|
|
used: Optional[str]
|
|
sys: Optional[str]
|
|
free: Optional[str]
|
|
|
|
|
|
class MemoryInfo(BaseModel):
|
|
total: Optional[str]
|
|
used: Optional[str]
|
|
free: Optional[str]
|
|
usage: Optional[str]
|
|
|
|
|
|
class SysInfo(BaseModel):
|
|
computer_ip: Optional[str]
|
|
computer_name: Optional[str]
|
|
os_arch: Optional[str]
|
|
os_name: Optional[str]
|
|
|
|
|
|
class PyInfo(BaseModel):
|
|
name: Optional[str]
|
|
version: Optional[str]
|
|
start_time: Optional[str]
|
|
run_time: Optional[str]
|
|
home: Optional[str]
|
|
project_dir: Optional[str]
|
|
|
|
|
|
class SysFiles(BaseModel):
|
|
dir_name: Optional[str]
|
|
sys_type_name: Optional[str]
|
|
disk_name: Optional[str]
|
|
total: Optional[str]
|
|
used: Optional[str]
|
|
free: Optional[str]
|
|
usage: Optional[str]
|
|
|
|
|
|
class ServerMonitorModel(BaseModel):
|
|
"""
|
|
服务监控对应pydantic模型
|
|
"""
|
|
cpu: Optional[CpuInfo]
|
|
py: Optional[PyInfo]
|
|
mem: Optional[MemoryInfo]
|
|
sys: Optional[SysInfo]
|
|
sys_files: Optional[List[SysFiles]]
|
|
|