33 lines
1.3 KiB
Python
33 lines
1.3 KiB
Python
from fastapi import Request, Response
|
|
|
|
from common.annotation.cache_annotation import ApiCache
|
|
from common.aspect.interface_auth import UserInterfaceAuthDependency
|
|
from common.aspect.pre_auth import PreAuthDependency
|
|
from common.constant import ApiNamespace
|
|
from common.router import APIRouterPro
|
|
from common.vo import DataResponseModel
|
|
from module_admin.entity.vo.server_vo import ServerMonitorModel
|
|
from module_admin.service.server_service import ServerService
|
|
from utils.log_util import logger
|
|
from utils.response_util import ResponseUtil
|
|
|
|
server_controller = APIRouterPro(
|
|
prefix='/monitor/server', order_num=14, tags=['系统监控-服务监控'], dependencies=[PreAuthDependency()]
|
|
)
|
|
|
|
|
|
@server_controller.get(
|
|
'',
|
|
summary='获取服务器监控信息接口',
|
|
description='用于获取当前服务器的监控信息',
|
|
response_model=DataResponseModel[ServerMonitorModel],
|
|
dependencies=[UserInterfaceAuthDependency('monitor:server:list')],
|
|
)
|
|
@ApiCache(namespace=ApiNamespace.MONITOR_SERVER_INFO)
|
|
async def get_monitor_server_info(request: Request) -> Response:
|
|
# 获取全量数据
|
|
server_info_query_result = await ServerService.get_server_monitor_info()
|
|
logger.info('获取成功')
|
|
|
|
return ResponseUtil.success(data=server_info_query_result)
|