logo of Akmatori
06.01.2025

Enhancing Process Management with procs: A Modern ps Replacement

head-image

Managing system processes is crucial for DevOps and SRE professionals. The traditional ps command has been a staple for this task. However, a modern alternative called procs offers enhanced features and usability.

What is procs?

procs is a command-line tool written in Rust. It serves as a modern replacement for the ps command. It provides a more intuitive and informative way to view system processes. (GitHub)

Key Features of procs

  • Colored and Human-Readable Output: procs displays processes with colored output, improving readability. It automatically detects your terminal's theme to adjust colors accordingly.

  • Multi-Column Keyword Search: You can search across multiple columns simultaneously, making it easier to find specific processes.

  • Additional Information: Unlike ps, procs provides extra details such as:

    • TCP/UDP ports used by processes
    • Read/Write throughput
    • Docker container names
    • Extended memory information
  • Pager Support: If the output exceeds your terminal's height, procs can automatically use a pager for easy navigation.

  • Watch Mode: Similar to the top command, procs offers a watch mode to monitor processes in real-time.

  • Tree View: Visualize process hierarchies with the tree view feature.

Supported Platforms

procs supports multiple platforms:

  • Linux: Fully supported.
  • macOS: Experimental support.
  • Windows: Supported.
  • FreeBSD: Experimental support.

Installation

You can install procs using various methods:

  • Homebrew (macOS):

    brew install procs
    
  • Cargo (Rust's package manager):

    cargo install procs
    
  • Precompiled Binaries: Download from the release page and place the binary in your system's PATH.

For detailed installation instructions, refer to the official GitHub repository.

Basic Usage

To display all processes, simply run:

procs

For keyword-based searches:

procs <keyword>

For example, to find processes related to "nginx":

procs nginx

To monitor processes in real-time:

procs --watch

To view processes in a hierarchical tree structure:

procs --tree

Customization

procs allows extensive customization through a configuration file. You can define which columns to display, set color schemes, and adjust other display settings. The configuration file is typically located at:

  • Linux: ~/.config/procs/config.toml
  • macOS: ~/Library/Preferences/com.github.dalance.procs/config.toml
  • Windows: ~/AppData/Roaming/dalance/procs/config/config.toml

Conclusion

procs enhances process management with its modern features and user-friendly interface. It's a valuable tool for professionals seeking more from their process monitoring commands.

For efficient incident management and to prevent on-call burnout, consider using Akmatori. Akmatori automates incident response, reduces downtime, and simplifies troubleshooting.

Additionally, for reliable virtual machines and bare metal servers worldwide, check out Gcore.

Maximize your website or application's performance and reliability!