{ "info": { "author": "Dan Brooks", "author_email": "UNKNOWN", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Environment :: Console", "Intended Audience :: System Administrators", "License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 2.7" ], "description": "# pgm - Process Group Manager\npgm is a tool used for managing groups of processes. \nGroups of processes can be started and stopped together.\nIndividual processes are started in the background, but can be connected to later.\nWhen processes stop running, their output remains available for debugging until the\nprocesses is 'removed'.\n\n## Dependencies\nPGM currently uses tmux sessions to manage processes.\n\n## Example:\n\nInitialize a process group named 'mine'\n\n\t$ pgm init mine\n\t\nInitialize a group named 'mine' with config file\n\n\t$ pgm init mine --config launch.ini\n\nList all groups\n\n\t$ pgm groups\n\t1 Group:\n\tmine\n\nList all processes in group 'mine'\n\n\t$ pgm list mine\n\t3 Processes\n\tPGM Name\tPID Status\t Command\n\ttop\t\t 1001 Running\t\thtop\n\tnetstat\t\t1002 Running\t watch -n 1 'netstat -naltp'\n\tdisksize\t1003 Exited(1)\tdf -h\n\ttcpdump\t\t1004 Running\t \tsudo tcpdump -i eth0\n\nAdd the process 'syslog' to the session 'mine'\n\n\t$ pgm add mine syslog --cmd tail -f /var/log/syslog\n\tAdding process 'syslog' to 'mine' using: tail -f /var/log/syslog\t\n\nAdd a sudo process to the session 'mine'\n\n\t$ pgm add mine iftop --sudo --cmd iftop -i eth0\n\tAdding process 'iftop' to 'mine' using: sudo iftop -i eth0\n\t[sudo] password for csrobot: \n\nAdd a process 'syslog' to the session 'mine' using command from conf file\n\n $ pgm add mine syslog --config myconfig.ini\n\tAdding process 'syslog' to 'mine' using: tail -f /var/log/syslog\t\n\nConnect to process stdio\n\n\t$ pgm connect mine top\n\t(opens tmux session to that process)\n\nShow latest output of a process\n\n\t$ pgm tail mine disksize\n\tFilesystem Size Used Avail Use% Mounted on\n\t/dev/sda1 209G 136G 63G 69% /\n\nKill a process (Ctrl-c) Note: does not remove the process output from pgm\n\n\t$ pgm kill mine --name top\n\tSending Ctrl-c (SIGINT) to process 'top' in session 'mine'\n\nKill a process (Ctrl-c) and remove it\n\n\t$ pgm kill mine -r --name top\n\tSending Ctrl-c (SIGINT) to process 'top' in session 'mine'\n\tRemoving 'top' from session 'mine\n\nKill all processes (Ctrl-c)\n\n $ pgm kill mine --all\n\nKill a process (Ctrl-d)\n\n\t$ pgm kill mine -d --name top\n\tSending Ctrl-d (EOF) to process 'top' in session 'mine'\n\nKill a process (Ctrl-\\)\n\n\t$ pgm kill mine -q --name top\n\tSending Ctrl-\\ (SIGQUIT) to process 'top' in session 'mine'\n\nKill a process\n\n\t$ pgm kill mine -9 --name top\n\tSending SIGINT to process 'top' in session 'mine'\n\nRemove an exited process (only works on exited processes)\n\n\t$ pgm rm mine --name top\n\tRemoving 'top' from session 'mine'", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/mrdanbrooks/pgm", "keywords": "pgm,tmux", "license": "Apache v2.0", "maintainer": null, "maintainer_email": null, "name": "pgm", "package_url": "https://pypi.org/project/pgm/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/pgm/", "project_urls": { "Download": "UNKNOWN", "Homepage": "https://github.com/mrdanbrooks/pgm" }, "release_url": "https://pypi.org/project/pgm/0.0.2/", "requires_dist": null, "requires_python": null, "summary": "Process Group Management", "version": "0.0.2" }, "last_serial": 1740243, "releases": { "0.0.2": [ { "comment_text": "", "digests": { "md5": "922bd9fbe17a7afd1fc5f27fb320ca9b", "sha256": "ef66b76bcd91b91b9de3334daff227d9825f4d6291b664234f967184b44294ed" }, "downloads": -1, "filename": "pgm-0.0.2.tar.gz", "has_sig": false, "md5_digest": "922bd9fbe17a7afd1fc5f27fb320ca9b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12538, "upload_time": "2015-09-27T00:58:30", "url": "https://files.pythonhosted.org/packages/ce/3d/4e2572efded47657feb8988028d96a9db1d6ed3e164a91e1c2e0e4c53c64/pgm-0.0.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "922bd9fbe17a7afd1fc5f27fb320ca9b", "sha256": "ef66b76bcd91b91b9de3334daff227d9825f4d6291b664234f967184b44294ed" }, "downloads": -1, "filename": "pgm-0.0.2.tar.gz", "has_sig": false, "md5_digest": "922bd9fbe17a7afd1fc5f27fb320ca9b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12538, "upload_time": "2015-09-27T00:58:30", "url": "https://files.pythonhosted.org/packages/ce/3d/4e2572efded47657feb8988028d96a9db1d6ed3e164a91e1c2e0e4c53c64/pgm-0.0.2.tar.gz" } ] }