supervisor是一款很好用的進程管理工具,其命令也很簡單,其安裝過程以下:python
Ubuntu14:ubuntu
首先保證本地的Python環境是OK的,而且已經安裝supervisor包,若是沒有安裝能夠用easy_install:python2.7
easy_install supervisor
接下來安裝supervisor:socket
apt-get install supervisor
安裝好以後,不出問題的話supervisor服務已經啓動完成。工具
supervisor管理進程的配置文件,這裏就簡單舉例:spa
[program:task] #管理進程的命名 command=python test.py -c test.conf #執行的命令 stderr_logfile=/var/log/supervisor/test.log #錯誤日誌輸出路徑 stdout_logfile=/var/log/supervisor/test.log #日誌輸出路徑 directory=/root/test #命令執行的工做空間 autostart=true #自動啓動 user=root #指定用戶 autorestart=true #自動重啓
進程配置文件配好以後,而後執行:unix
supervisorctl reload
至此配置基本完成,進程也啓動起來了。rest
supervisor有supervisord和supervisorctl兩種命令類型,supervisord是服務相關的命令,supervisorctl是客戶端相關的命令,它們的使用方法很簡單.日誌
常見報錯:code
1,
Traceback (most recent call last): File "/usr/local/bin/supervisorctl", line 7, in <module> from supervisor.supervisorctl import main File "/usr/local/lib/python2.7/dist-packages/supervisor/supervisorctl.py", line 36, in <module> from supervisor.options import ClientOptions File "/usr/local/lib/python2.7/dist-packages/supervisor/options.py", line 26, in <module> from supervisor.datatypes import process_or_group_name ImportError: cannot import name process_or_group_name #這是在執行supervisor相關命令報的錯,基本能夠看出是安裝的問題 #解決方式 easy_install supervisor
2,
root@ubuntu:~# supervisorctl unix:///var/run/supervisor.sock no such file supervisor> #這有多是因爲supervisor服務沒有啓動 #解決辦法 service supervisor start
3,
error: <class ‘socket.error’>, [Errno 2] No such file or directory: file:/usr/lib/python2.7/socket.py line: 224 #錯誤緣由多是 supervisor 服務未啓動 #解決辦法 service supervisor start #也有多是配置文件中沒有指定用戶 #解決辦法 進入/etc/supervisor/conf.d 找到指定的配置文件,加入 user=root