Skip to main content
Join the official Python Developers Survey 2018 and win valuable prizes: Start the survey!

Process Group Management

Project description

# pgm - Process Group Manager pgm is a tool used for managing groups of processes. Groups of processes can be started and stopped together. Individual processes are started in the background, but can be connected to later. When processes stop running, their output remains available for debugging until the processes is ‘removed’.

## Dependencies PGM currently uses tmux sessions to manage processes.

## Example:

Initialize a process group named ‘mine’

$ pgm init mine

Initialize a group named ‘mine’ with config file

$ pgm init mine –config launch.ini

List all groups

$ pgm groups 1 Group: mine

List all processes in group ‘mine’

$ pgm list mine 3 Processes PGM Name PID Status Command top 1001 Running htop netstat 1002 Running watch -n 1 ‘netstat -naltp’ disksize 1003 Exited(1) df -h tcpdump 1004 Running sudo tcpdump -i eth0

Add the process ‘syslog’ to the session ‘mine’

$ pgm add mine syslog –cmd tail -f /var/log/syslog Adding process ‘syslog’ to ‘mine’ using: tail -f /var/log/syslog

Add a sudo process to the session ‘mine’

$ pgm add mine iftop –sudo –cmd iftop -i eth0 Adding process ‘iftop’ to ‘mine’ using: sudo iftop -i eth0 [sudo] password for csrobot:

Add a process ‘syslog’ to the session ‘mine’ using command from conf file

$ pgm add mine syslog –config myconfig.ini
Adding process ‘syslog’ to ‘mine’ using: tail -f /var/log/syslog

Connect to process stdio

$ pgm connect mine top (opens tmux session to that process)

Show latest output of a process

$ pgm tail mine disksize Filesystem Size Used Avail Use% Mounted on /dev/sda1 209G 136G 63G 69% /

Kill a process (Ctrl-c) Note: does not remove the process output from pgm

$ pgm kill mine –name top Sending Ctrl-c (SIGINT) to process ‘top’ in session ‘mine’

Kill a process (Ctrl-c) and remove it

$ pgm kill mine -r –name top Sending Ctrl-c (SIGINT) to process ‘top’ in session ‘mine’ Removing ‘top’ from session ‘mine

Kill all processes (Ctrl-c)

$ pgm kill mine –all

Kill a process (Ctrl-d)

$ pgm kill mine -d –name top Sending Ctrl-d (EOF) to process ‘top’ in session ‘mine’

Kill a process (Ctrl-)

$ pgm kill mine -q –name top Sending Ctrl-(SIGQUIT) to process ‘top’ in session ‘mine’

Kill a process

$ pgm kill mine -9 –name top Sending SIGINT to process ‘top’ in session ‘mine’

Remove an exited process (only works on exited processes)

$ pgm rm mine –name top Removing ‘top’ from session ‘mine’

Project details


Release history Release notifications

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
pgm-0.0.2.tar.gz (12.5 kB) Copy SHA256 hash SHA256 Source None Sep 27, 2015

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page