Browse Source

调整硬件信息代码

master
xyiege 5 months ago
parent
commit
fa4448ab38
  1. 37
      aufs/core/hdinfo.go

37
aufs/core/hdinfo.go

@ -1,6 +1,7 @@
package core package core
import ( import (
"aufs/config"
"encoding/json" "encoding/json"
"fmt" "fmt"
"net" "net"
@ -9,6 +10,7 @@ import (
"os/exec" "os/exec"
"os/user" "os/user"
"runtime" "runtime"
"strings"
) )
// json 结构体 // json 结构体
@ -26,7 +28,8 @@ type HdResp struct {
// 服务器的硬件信息 // 服务器的硬件信息
func Hdinfo(w http.ResponseWriter, r *http.Request) { func Hdinfo(w http.ResponseWriter, r *http.Request) {
// 获取服务器的信息 // 获取服务器的信息
hostip, err := GetHostIP() hostip, err := config.GetLocalIP()
if err != nil { if err != nil {
fmt.Println("获取主机IP失败:", err) fmt.Println("获取主机IP失败:", err)
return return
@ -41,9 +44,11 @@ func Hdinfo(w http.ResponseWriter, r *http.Request) {
Status: "success", Status: "success",
Hip: hostip, Hip: hostip,
Hname: hostname, Hname: hostname,
Cpu: runtime.NumCPU(), Cpu: fmt.Sprintf("%d", runtime.NumCPU()), // cpu、的数量
Mem: fmt.Sprintf("%d", runtime.NumGoroutine()),
Disks: "", // 因 getDiskInfo 未定义,暂时使用空字符串占位,需实现 getDiskInfo 函数后再修改 Mem: fmt.Sprintf("%d", runtime.NumGoroutine()),
Disks: "", // 因 getDiskInfo 未定义,暂时使用空字符串占位,需实现 getDiskInfo 函数后再修改,
Net: getMachieNet(), // 因 getMachieNet 未定义,暂时使用空字符串占位,需实现 getMachieNet 函数后再修改,
} }
// 开启跨域 // 开启跨域
@ -51,21 +56,35 @@ func Hdinfo(w http.ResponseWriter, r *http.Request) {
json.NewEncoder(w).Encode(response) json.NewEncoder(w).Encode(response)
} }
func getMachieNet() { func getMachieNet() string {
var ret []string
ifaces, err := net.Interfaces() ifaces, err := net.Interfaces()
if err != nil { if err != nil {
fmt.Println("无法获取网络接口信息:", err) fmt.Println("无法获取网络接口信息:", err)
} else { } else {
for _, iface := range ifaces { for _, iface := range ifaces {
fmt.Println("网络接口名称:", iface.Name) ret = append(ret, iface.Name)
fmt.Println("硬件地址 (MAC):", iface.HardwareAddr) ret = append(ret, iface.HardwareAddr.String())
// ip地址信息等
var ipaddr []string
addrs, _ := iface.Addrs() addrs, _ := iface.Addrs()
for _, addr := range addrs { for _, addr := range addrs {
fmt.Println("IP地址:", addr.String()) ipaddr = append(ipaddr, addr.String())
} }
fmt.Println() // 合并到ret 中
ret = append(ret, strings.Join(ipaddr, ","))
// fmt.Println("网络接口名称:", iface.Name)
// fmt.Println("硬件地址 (MAC):", iface.HardwareAddr)
// addrs, _ := iface.Addrs()
// for _, addr := range addrs {
// fmt.Println("IP地址:", addr.String())
// }
// fmt.Println()
} }
} }
return strings.Join(ret, ",")
} }
func getCurrentUser() (*user.User, error) { func getCurrentUser() (*user.User, error) {

Loading…
Cancel
Save