Skip to content

feat: Add SystemCalls and Interrupts support for AIX load metrics#1981

Closed
Dylan-M wants to merge 11 commits into
shirou:masterfrom
Dylan-M:dylanmyers/aix_load
Closed

feat: Add SystemCalls and Interrupts support for AIX load metrics#1981
Dylan-M wants to merge 11 commits into
shirou:masterfrom
Dylan-M:dylanmyers/aix_load

Conversation

@Dylan-M
Copy link
Copy Markdown
Contributor

@Dylan-M Dylan-M commented Dec 23, 2025

Description

Add support for SystemCalls() and Interrupts() functions for AIX platform to retrieve system calls and interrupt counts since boot.

Part 3 of splitting #1969: load package
Depends on #1979 #1980

Changes

  • Add SystemCalls() and Interrupts() functions to load_aix.go that delegate to context-aware implementations
  • Implement SystemCallsWithContext() and InterruptsWithContext() in load_aix_nocgo.go using vmstat command
  • Add parseVmstatLine() helper function to parse vmstat output and extract context switches, interrupts, and syscalls
  • Add getVmstatMetrics() helper function for shared metric extraction logic
  • Implement test dependency injection via testInvoker and getInvoker() for better testability
  • Update AvgWithContext() to use the new getInvoker() abstraction
  • Improve MiscWithContext() to properly parse AIX process states (A, I, W, T, Z) and populate context switches from vmstat
  • Update command invocations to use the new invoker abstraction for consistency

Testing

Changes have been validated with gofmt and golangci-lint.

@Dylan-M Dylan-M force-pushed the dylanmyers/aix_load branch from c39a999 to 7ec4780 Compare December 23, 2025 17:40
@Dylan-M Dylan-M force-pushed the dylanmyers/aix_load branch from 7ec4780 to e610fdf Compare December 23, 2025 17:49
@Dylan-M Dylan-M marked this pull request as ready for review December 23, 2025 18:02
@Dylan-M Dylan-M force-pushed the dylanmyers/aix_load branch from e610fdf to e058adb Compare January 24, 2026 14:41
@Dylan-M Dylan-M force-pushed the dylanmyers/aix_load branch from e058adb to 34f7dd9 Compare January 26, 2026 14:32
@Dylan-M Dylan-M closed this Jan 26, 2026
@Dylan-M Dylan-M reopened this Jan 26, 2026
@Dylan-M Dylan-M force-pushed the dylanmyers/aix_load branch 2 times, most recently from b9d2e44 to a8f7194 Compare February 16, 2026 14:34
@Dylan-M Dylan-M force-pushed the dylanmyers/aix_load branch from a8f7194 to 4b901ed Compare February 27, 2026 15:17
@Dylan-M Dylan-M force-pushed the dylanmyers/aix_load branch from 1c44ef2 to 4bed649 Compare March 20, 2026 21:19
@Dylan-M Dylan-M force-pushed the dylanmyers/aix_load branch from 4bed649 to 5cf9aed Compare March 20, 2026 21:33
@shirou
Copy link
Copy Markdown
Owner

shirou commented Mar 21, 2026

As I commented on #1980 (comment), I'm going to close this PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants