LingxinMeng преди 1 година
родител
ревизия
3e28411c84
променени са 1 файла, в които са добавени 38 реда и са изтрити 0 реда
  1. 38 0
      test/monitor/main/main.go

+ 38 - 0
test/monitor/main/main.go

@@ -0,0 +1,38 @@
+package main
+
+import (
+	"bufio"
+	"fmt"
+	"os/exec"
+	"strings"
+)
+
+func main() {
+	// 调用mpstat命令获取CPU使用情况,这里假设系统已经安装了sysstat包
+	cmd := exec.Command("mpstat", "-P", "ALL")
+	stdout, err := cmd.StdoutPipe()
+	if err != nil {
+		fmt.Println("Error creating stdout pipe:", err)
+		return
+	}
+
+	if err := cmd.Start(); err != nil {
+		fmt.Println("Error starting command:", err)
+		return
+	}
+
+	scanner := bufio.NewScanner(stdout)
+	fmt.Println("CPU Usage:")
+	for scanner.Scan() {
+		line := scanner.Text()
+		// 跳过标题行
+		if strings.Contains(line, "CPU") {
+			continue
+		}
+		fmt.Println(line)
+	}
+
+	if err := cmd.Wait(); err != nil {
+		fmt.Println("Error waiting for command:", err)
+	}
+}