A terminal-based system monitoring tool written in Go.
This tool provides a real-time view of your system's CPU usage, memory consumption, network activity, running processes,
and network connections. It's built using tview for the terminal user interface and gopsutil for data collection.
- System Information: Displays CPU and memory usage.
- Network Statistics: Shows download and upload speeds.
- Process List: Lists running processes with their PID, CPU usage, and memory usage.
- Network Connections: Shows active network connections with their associated process.
- Interactive UI:
- Switch between the process and network connection tables using the
Tabkey. - Run
whoison the remote address of a selected network connection. - Run
witron a selected process. - Open the local or remote address in a browser.
- Switch between the process and network connection tables using the
go install github.com/zerolethanh/sysmonitor@latestsysmonitorYou can also specify the maximum number of processes to display (default 100):
sysmonitor -limit 50Tab: Switch focus between the process table and the network connection table.Enter(on process table): Runwitrfor the selected process.Enter(on network connection table): Runwhoisfor the remote address of the selected connection.w(on network connection table): Runwitrfor the process associated with the selected connection.l(on network connection table): Open the local address in a browser.r(on network connection table): Open the remote address in a browser.
