supervisor是一款很好用的进程管理工具,其命令也很简单,其安装过程如下:
Ubuntu14:
首先保证本地的Python环境是OK的,并且已经安装supervisor包,如果没有安装可以用easy_install:
easy_install supervisor
接下来安装supervisor:
apt-get install supervisor
安装好之后,不出问题的话supervisor服务已经启动完成。
supervisor管理进程的配置文件,这里就简单举例:
[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 #自动重启
进程配置文件配好之后,然后执行:
supervisorctl reload
至此配置基本完成,进程也启动起来了。
supervisor有supervisord和supervisorctl两种命令类型,supervisord是服务相关的命令,supervisorctl是客户端相关的命令,它们的使用方法很简单.
常见报错:
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,
[email protected]:~# 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
时间: 2024-10-05 04:23:36