Skip to content

donomii/bottom

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

bottom — process changes in your terminal

Test Release

top shows what is running. bottom logs what starts and stops.

Start: 421: compiler --input main.go
Exec: 421: compiler --input main.go
Stop: 421: compiler --input main.go

Bottom only observes processes. It does not terminate, suspend, inject into, or otherwise alter them.

Install

Install with Homebrew:

brew install donomii/tap/bottom-events

Install with Scoop:

scoop bucket add donomii https://github.com/donomii/scoop-bucket
scoop install bottom-events

Install from source with Go 1.25 or newer:

go install github.com/donomii/bottom@latest

From a checkout:

./run.sh

Use

Run bottom with no arguments for the readable process log:

bottom

The log goes to standard output, so ordinary shell redirection handles files:

bottom >process.log

-backend NAME selects auto, poll, linux-proc-connector, windows-etw, or macos-endpoint-security. -poll DURATION changes the polling and fallback interval. -tui explicitly selects the interactive display instead of the readable log.

Run one command and log only it and its observed descendants:

bottom trace -- make test

bottom trace -poll 10ms -tail 2s -- COMMAND controls descendant discovery and how long Bottom watches surviving descendants after the root command exits.

Platform support

Platform Automatic source Polling fallback
Linux Process connector /proc
macOS Endpoint Security when the signed binary is entitled Native process table
Windows ETW Tool Help process table
Other Unix Process table polling ps

Native source failures are logged and automatically fall back to polling. Capture gaps are printed explicitly.

The macOS requirements and signing procedure are in docs/endpoint-security.md.

Build and test

./build.sh
./test.sh
./benchmark.sh
./demo.sh
./install.sh

build.sh creates /Users/jer/mygit/bottom/bottom. run.sh starts the program without flags or configuration.

This is donomii/bottom, not the unrelated current-state system monitor at ClementTsang/bottom. Release packages use the bottom-events name while the installed command remains bottom.

Releases

Packages

Used by

Contributors

Languages