日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

supervisor使用指南

發(fā)布時(shí)間:2025/3/15 编程问答 16 豆豆
生活随笔 收集整理的這篇文章主要介紹了 supervisor使用指南 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

目錄

  • 安裝和配置
  • 常用命令介紹
  • 關(guān)閉supervisor

安裝和配置

直接使用pip安裝即可

sudo pip install supervisor

安裝完成后,選擇一個(gè)常用目錄(用于存放supervisor配置信息和輸出日志),此目錄在下文中用<sv_path>表示,執(zhí)行:

# 在該目錄下生成配置文件'my.conf' cd <sv_path> echo_supervisord_conf > ./my.conf

在<sv_path>下創(chuàng)建兩個(gè)文件夾,分別為supervisor和log(此名稱隨便起),前者用于存放supervisor.sock和supervisor.pid,后者用于存放進(jìn)程的日志:

cd <sv_path> mkdir supervisor mkdir log

然后,使用vim打開my.conf文件(該文件中,分號是注釋,為了簡潔,就不展示注釋掉的語句了),進(jìn)行修改:

[unix_http_server] ; 這里修改為前面建立的路徑 file=<sv_path>/supervisor/supervisor.sock ; the path to the socket file[inet_http_server] ; inet (TCP) server disabled by default port=127.0.0.1:9001 ; ip_address:port specifier, *:port for all iface[supervisord] ; 這里修改為前面建立的路徑 logfile=<sv_path>/log/supervisord.log ; main log file; default $CWD/supervisord.log logfile_maxbytes=50MB ; max main logfile bytes b4 rotation; default 50MB logfile_backups=10 ; # of main logfile backups; 0 means none, default 10 loglevel=info ; log level; default info; others: debug,warn,trace ; 這里修改為前面建立的路徑 pidfile=<sv_path>/supervisor/supervisord.pid ; supervisord pidfile; default supervisord.pid nodaemon=false ; start in foreground if true; default false silent=false ; no logs to stdout if true; default false minfds=1024 ; min. avail startup file descriptors; default 1024 minprocs=200 ; min. avail process descriptors;default 200[rpcinterface:supervisor] supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface[supervisorctl] ; 這里修改為前面建立的路徑 serverurl=unix://<sv_path>/supervisor/supervisor.sock ; use a unix:// URL for a unix socket

接下來,在my.conf文件中,配置需要守護(hù)的進(jìn)程:

; program后面的auto_connect是進(jìn)程名稱,可自定義 [program:auto_connect] command=python xxx.py ; the program (relative uses PATH, can take args) directory=<your_code_path> ; directory to cwd to before exec (def no cwd) autostart=true ; start at supervisord start (default: true) startretries=99999 ; max # of serial start failures when starting (default 3) redirect_stderr=true ; redirect proc stderr to stdout (default false) stdout_logfile=<sv_path>/log/auto_connect.log ; stdout log path, NONE for none; default AUTO[program:natapp] ; 注意,這種不在PATH里的命令,要使用絕對路徑 command=<your_natapp_command_path>/natapp autostart=true startretries=99999 redirect_stderr=true stdout_logfile=<sv_path>//log/natapp.log[program:frp] command=<your_frp_command_path>/frpc -c <your_frp_ini_path>/frpc.ini autostart=true startretries=99999 redirect_stderr=true stdout_logfile=<sv_path>/log/frp.log

接下來,啟動(dòng)supervisor即可:

# 這里的my.conf建議使用絕對路徑 supervisord -c <sv_path>/my.conf


常用命令介紹

  • supervisorctl update
    假如改動(dòng)了my.conf,執(zhí)行此命令后,會將有改動(dòng)的進(jìn)程重啟,無改動(dòng)的進(jìn)程無影響
  • supervisorctl reload
    假如改動(dòng)了my.conf,執(zhí)行此命令后,所有進(jìn)程都將重啟
  • supervisorctl status
    查看所有守護(hù)進(jìn)程的運(yùn)行狀態(tài)
  • supervisorctl start program_name
    啟動(dòng)名為program_name的進(jìn)程
  • supervisorctl restart program_name
    重啟名為program_name的進(jìn)程
  • supervisorctl stop program_name
    關(guān)閉名為program_name的進(jìn)程
  • supervisorctl stop all
    關(guān)閉全部進(jìn)程

關(guān)閉supervisor

# 通過ps命令找到之前運(yùn)行的supervisor的pid,假設(shè)為sv_pid ps -ef | grep supervisor kill -s 9 sv_pid # 執(zhí)行unlink命令,否則再次啟動(dòng)supervisor時(shí)會報(bào)錯(cuò) unlink <sv_path>/supervisor/supervisor.sock

總結(jié)

以上是生活随笔為你收集整理的supervisor使用指南的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。