Browse Source

style: 使用ruff格式化服务监控模块,优化导入

master
insistence 7 months ago
parent
commit
91e31cfbf7
  1. 16
      ruoyi-fastapi-backend/module_admin/controller/server_controller.py
  2. 3
      ruoyi-fastapi-backend/module_admin/entity/vo/server_vo.py
  3. 22
      ruoyi-fastapi-backend/module_admin/service/server_service.py

16
ruoyi-fastapi-backend/module_admin/controller/server_controller.py

@ -1,16 +1,18 @@
from fastapi import APIRouter, Request
from fastapi import Depends
from module_admin.service.login_service import LoginService
from module_admin.service.server_service import *
from fastapi import APIRouter, Depends, Request
from module_admin.aspect.interface_auth import CheckUserInterfaceAuth
from utils.response_util import *
from utils.log_util import *
from module_admin.entity.vo.server_vo import ServerMonitorModel
from module_admin.service.login_service import LoginService
from module_admin.service.server_service import ServerService
from utils.response_util import ResponseUtil
from utils.log_util import logger
serverController = APIRouter(prefix='/monitor/server', dependencies=[Depends(LoginService.get_current_user)])
@serverController.get("", response_model=ServerMonitorModel, dependencies=[Depends(CheckUserInterfaceAuth('monitor:server:list'))])
@serverController.get(
'', response_model=ServerMonitorModel, dependencies=[Depends(CheckUserInterfaceAuth('monitor:server:list'))]
)
async def get_monitor_server_info(request: Request):
# 获取全量数据
server_info_query_result = await ServerService.get_server_monitor_info()

3
ruoyi-fastapi-backend/module_admin/entity/vo/server_vo.py

@ -1,6 +1,6 @@
from pydantic import BaseModel, ConfigDict, Field
from pydantic.alias_generators import to_camel
from typing import Optional, List
from typing import List, Optional
class CpuInfo(BaseModel):
@ -57,6 +57,7 @@ class ServerMonitorModel(BaseModel):
"""
服务监控对应pydantic模型
"""
model_config = ConfigDict(alias_generator=to_camel)
cpu: Optional[CpuInfo] = Field(description='CPU相关信息')

22
ruoyi-fastapi-backend/module_admin/service/server_service.py

@ -1,10 +1,10 @@
import psutil
from utils.common_util import bytes2human
import os
import platform
import psutil
import socket
import os
import time
from module_admin.entity.vo.server_vo import *
from module_admin.entity.vo.server_vo import CpuInfo, MemoryInfo, PyInfo, ServerMonitorModel, SysFiles, SysInfo
from utils.common_util import bytes2human
class ServerService:
@ -40,7 +40,9 @@ class ServerService:
computer_name = platform.node()
os_arch = platform.machine()
user_dir = os.path.abspath(os.getcwd())
sys = SysInfo(computerIp=computer_ip, computerName=computer_name, osArch=os_arch, osName=os_name, userDir=user_dir)
sys = SysInfo(
computerIp=computer_ip, computerName=computer_name, osArch=os_arch, osName=os_name, userDir=user_dir
)
# python解释器信息
current_pid = os.getpid()
@ -49,14 +51,14 @@ class ServerService:
python_version = platform.python_version()
python_home = current_process.exe()
start_time_stamp = current_process.create_time()
start_time = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(start_time_stamp))
start_time = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(start_time_stamp))
current_time_stamp = time.time()
difference = current_time_stamp - start_time_stamp
# 将时间差转换为天、小时和分钟数
days = int(difference // (24 * 60 * 60)) # 每天的秒数
hours = int((difference % (24 * 60 * 60)) // (60 * 60)) # 每小时的秒数
minutes = int((difference % (60 * 60)) // 60) # 每分钟的秒数
run_time = f"{days}{hours}小时{minutes}分钟"
run_time = f'{days}{hours}小时{minutes}分钟'
# 获取当前Python程序的pid
pid = os.getpid()
# 获取该进程的内存信息
@ -70,7 +72,7 @@ class ServerService:
total=bytes2human(memory_info.available),
used=bytes2human(current_process_memory_info.rss),
free=bytes2human(memory_info.available - current_process_memory_info.rss),
usage=round((current_process_memory_info.rss / memory_info.available) * 100, 2)
usage=round((current_process_memory_info.rss / memory_info.available) * 100, 2),
)
# 磁盘信息
@ -81,11 +83,11 @@ class ServerService:
disk_data = SysFiles(
dirName=i.device,
sysTypeName=i.fstype,
typeName="本地固定磁盘(" + i.mountpoint.replace('\\', '') + "",
typeName='本地固定磁盘(' + i.mountpoint.replace('\\', '') + '',
total=bytes2human(o.total),
used=bytes2human(o.used),
free=bytes2human(o.free),
usage=f'{psutil.disk_usage(i.device).percent}%'
usage=f'{psutil.disk_usage(i.device).percent}%',
)
sys_files.append(disk_data)

Loading…
Cancel
Save