Supervisor的使用

Posted liangping

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Supervisor的使用相关的知识,希望对你有一定的参考价值。

Supervisor的使用

github Supervisor的使用

介绍

Supervisor是一个C/S进程管理系统,它允许用户对类UNIX系统上的进程进行监控(也就是Superviosr不支持windows)。

各个组件

  • supervisord主进程

    负责管理进程的server,它会根据配置文件创建指定数量的应用程序的子进程,管理子进程的整个生命周期,对crash的进程重启,对进程变化发送事件通知等。同时内置web server和XML-RPC Interface,轻松实现进程管理。该服务的配置文件在/etc/supervisor/supervisord.conf。

  • supervisorctl 客户端的命令行工具

    提供一个类似shell的操作接口,通过它你可以连接到不同的supervisord进程上来管理它们各自的子程序,命令通过UNIX socket或者TCP来和服务通讯。用户通过命令行发送消息给supervisord,可以查看进程状态,加载配置文件,启停进程,查看进程标准输出和错误输出,远程操作等。服务端也可以要求客户端提供身份验证之后才能进行操作。

  • Web Server

    supervisor提供了web server功能,可通过web控制进程(需要设置[inethttpserver]配置项)。

安装

pip install supervisor

官方install文档

配置及使用

通过命令可以获得官方的模板配置文件

echo_supervisord_conf > supervisor_sample.conf

文件中都有详细的注释,然后我根据这个做了一个简单的demo测试,github源码

  • 启动supervisor
supervisord -c supervisor_demo.conf

然后访问http://127.0.0.1:9001/ (以配置文件中的为准),可以看到如下所示:

技术图片

然后可以看到程序已经执行,这里可以看到日志信息:

技术图片

  • 重新加载配置启动

    如果srver配置了用户密码,注意要执行命令时要写上,否则会执行失败

supervisorctl -u user -p 123 reload  

参考文档:

以上是关于Supervisor的使用的主要内容,如果未能解决你的问题,请参考以下文章

Node.js使用supervisor遭遇‘supervisor’不是内部或外部命令,如果解决?

ubuntu 守护进程supervisor的安装及使用(转载)

使用supervisor监控服务器持续运行的文件

python nginx+gunicorn+flask+supervisor

supervisor 使用教程

WebStorm中怎么配置supervisor来发布Node服务