better errors

This commit is contained in:
2025-03-16 21:06:19 +01:00
parent a933dee30f
commit 70a09fbc7d

View File

@@ -791,12 +791,12 @@ func getProcessMemory(pid int) (int, int, error) {
case "VmRSS:": case "VmRSS:":
rss, err = strconv.Atoi(fields[1]) rss, err = strconv.Atoi(fields[1])
if err != nil { if err != nil {
return 0, 0, err return 0, 0, fmt.Errorf("failed to parse rss: %v", err)
} }
case "VmSwap:": case "VmSwap:":
swap, err = strconv.Atoi(fields[1]) swap, err = strconv.Atoi(fields[1])
if err != nil { if err != nil {
return 0, 0, err return 0, 0, fmt.Errorf("failed to parse swap: %v", err)
} }
} }
} }
@@ -815,7 +815,7 @@ func getProcessTreeMemory(pgid int) (int, int, error) {
totalRSS, totalSwap := 0, 0 totalRSS, totalSwap := 0, 0
entries, err := procDir.Readdir(-1) entries, err := procDir.Readdir(-1)
if err != nil { if err != nil {
return 0, 0, err return 0, 0, fmt.Errorf("failed to read /proc: %v", err)
} }
for _, entry := range entries { for _, entry := range entries {
@@ -840,13 +840,15 @@ func getProcessTreeMemory(pgid int) (int, int, error) {
if len(fields) >= 5 { if len(fields) >= 5 {
processPGID, err := strconv.Atoi(fields[4]) processPGID, err := strconv.Atoi(fields[4])
if err != nil { if err != nil {
return 0, 0, err return 0, 0, fmt.Errorf("failed to parse process PG ID: %v", err)
} }
if processPGID == pgid { if processPGID == pgid {
rss, swap, err := getProcessMemory(pid) rss, swap, err := getProcessMemory(pid)
if err == nil { if err == nil {
totalRSS += rss totalRSS += rss
totalSwap += swap totalSwap += swap
} else {
return 0, 0, fmt.Errorf("failed to get process memory: %v", err)
} }
} }
} }