kra-new/internal/service/system/system_info.go

24 lines
939 B
Go

package system
import (
"context"
"kra/internal/service/dto"
)
func (s *SystemConfigService) ServerInfo(ctx context.Context) (*dto.ServerInfoResponse, error) {
value, err := s.uc.ServerInfo(ctx)
if err != nil {
return nil, err
}
diskInfo := make([]dto.ServerDiskResponse, 0, len(value.Disk))
for _, disk := range value.Disk {
diskInfo = append(diskInfo, dto.ServerDiskResponse{MountPoint: disk.MountPoint, UsedMB: disk.UsedMB, UsedGB: disk.UsedGB, TotalMB: disk.TotalMB, TotalGB: disk.TotalGB, UsedPercent: disk.UsedPercent})
}
return &dto.ServerInfoResponse{
OS: dto.ServerOSResponse{GOOS: value.GOOS, NumCPU: value.NumCPU, Compiler: value.Compiler, GoVersion: value.GoVersion, NumGoroutine: value.NumGoroutine},
CPU: dto.ServerCPUResponse{CPUs: value.CPUs, Cores: value.Cores},
RAM: dto.ServerRAMResponse{UsedMB: value.UsedMB, TotalMB: value.TotalMB, UsedPercent: value.UsedPercent},
Disk: diskInfo,
}, nil
}