• linux 进程监控软件 supervisor


    2017年8月21日 17:51:33 星期一

    supervisor python写的, 用来监控进程是否启动,

    之前监控进程是否启动, 没有就拉起的shell代码是写在crontab里的, 这个软件提供了配置管理功能

    参考文章:

    配置1:  http://www.cnblogs.com/lianer/p/5560922.html

    配置2: http://www.cnblogs.com/shijingjing07/p/6024066.html

    //=======安装======//

    下载python安装器: https://pypi.python.org/pypi/setuptools

    python 2.6/2.7 安装"安装器": http://blog.csdn.net/ab198604/article/details/8681851  (注, centos 6.x yum默认是python 2.6, 安装命令 python setup.py install, 升级pytho 2.7后yum会不可用)

    官方安装指导: http://www.supervisord.org/installing.html

    官方配置文件解释: http://www.supervisord.org/configuration.html

    //=======配置翻译=======//

    [program:x]

    冒号紧跟在program后边

    x是应用的名字, 也被supervisor的相关控制命令来使用;x值不能为空, 也不能含有冒号和括号;x的值还用于%(program_name)s表达式

    如果x=foo且指令numprocs=3, process_name=%(program_name)s_%(process_num)02d 那么就会启动3个进程, 名字分别为foo_01,foo_02,foo_03;

    如果不指定这几个值,那么就启动一个进程, 名字为x

    命令 是否必须 默认值 解释
    command y   要执行、监控的命令
    process_name n %(program_name)s 启动后进程名, 常结合numprocs指令值使用
    numprocs n 1 启动进程数
    numprocs_start n 0 整数偏移量,从numprocs中的第几个开始启动
    priority n 999 当执行start all/stop all时启动/停止的顺序, 值越小越先启动越后停止
    autostart n true supervisord启动的时候自动启动
    startsecs n 1 启动后延迟多少秒后执行命令
    startretries n 3 失败后重试次数
    autorestart n unexpected 重新拉起 false、unexpected(发现程序退出,根据exit_code选择性是否重启)、true(发现程序退出,则无条件重启)
    exitcodes n 0,2 配合autorestart=unexpected时使用

    举例:

    1 [program:activityCandleSendCouponQueue]
    2 directory=/mnt/hostcode/openapi/basic_service
    3 command=php7 artisan queue:work redis --queue=activityCandleSendCoupon
    4 autorestart=true
    5 stdout_logfile=/usr/local/supervisor/activityCandleSendCouponQueue.log
    1 ps -ef | grep queue
    2 www       3578  3575  0 Aug23 pts/1    00:00:15 php7 artisan queue:work redis --queue=activityCandleSendCoupon
  • 相关阅读:
    boost::asio 连接管理11 如何关闭连接
    boost::asio async_write也不能保证一次发完所有数据 二
    boost::asio async_write也不能保证一次发完所有数据 一
    boost参考博客
    C++ 多线程编程总结
    Boost::asio io_service 实现分析
    使用boost io_service时,需要注意的东西
    Boost::Thread 多线程的基础知识
    boost::thread类
    Boost::thread库的使用
  • 原文地址:https://www.cnblogs.com/iLoveMyD/p/7410706.html
Copyright © 2020-2023  润新知