ããã¯ãUbuntu OnlineãFedora OnlineãWindows ãªã³ã©ã€ã³ ãšãã¥ã¬ãŒã¿ãŒãMAC OS ãªã³ã©ã€ã³ ãšãã¥ã¬ãŒã¿ãŒãªã©ãè€æ°ã®ç¡æãªã³ã©ã€ã³ ã¯ãŒã¯ã¹ããŒã·ã§ã³ã®ããããã䜿çšããŠãOnWorks ç¡æãã¹ãã£ã³ã° ãããã€ããŒã§å®è¡ã§ããã³ãã³ã echo_supervisord_conf ã§ãã
ããã°ã©ã ïŒ
NAME
echo_supervisord_conf - ã¹ãŒããŒãã€ã¶ãŒæ§æããã¥ã¡ã³ã
ã¹ãŒããŒãã€ã¶ã¯ããŠãŒã¶ãŒãæ°å€ãç£èŠããã³å¶åŸ¡ã§ããã¯ã©ã€ã¢ã³ã/ãµãŒã㌠ã·ã¹ãã ã§ãã
UNIX ç³»ãªãã¬ãŒãã£ã³ã° ã·ã¹ãã äžã®ããã»ã¹ã®æ°ã
ããã¯ãlaunchdãdaemontoolsãrunit ãªã©ã®ããã°ã©ã ãšåãç®æšã®äžéšãå ±æããŠããŸãã ããã§ã¯ãªã
ãããã®ããã°ã©ã ã®äžéšã¯ã代ããã«å®è¡ããããšãæå³ãããã®ã§ã¯ãããŸããã INIT ãããã»ã¹IDããšããŠ
1"ã代ããã«ããããžã§ã¯ããŸãã¯ãããžã§ã¯ãã«é¢é£ããããã»ã¹ãå¶åŸ¡ããããã«äœ¿çšããããšãç®çãšããŠããŸãã
顧客ã«æäŸãããããŒãæã«ä»ã®ããã°ã©ã ãšåæ§ã«éå§ãããããšãç®çãšããŠããŸãã
ããã¥ã¢ã«
äœæ a ã File
Supervisor ã®ã€ã³ã¹ããŒã«ãå®äºããããå®è¡ããŸãã echo_supervisord_confã ãã®æå¿
ããµã³ãã«ãSupervisor æ§æãã¡ã€ã«ã端æ«ã® stdout ã«åºåããŸãã
ãã¡ã€ã«ã端æ«ã«ãšã³ãŒãããããšã確èªãããã次ã®ããã«ã³ãã³ããååŒã³åºãããŸãã
echo_supervisord_conf > /etc/supervisord.conf. root ãæã£ãŠããªãå Žåãããã¯æ©èœããŸãã
ã¢ã¯ã»ã¹ã
root ã¢ã¯ã»ã¹æš©ããªãå ŽåããŸã㯠ç£èŠè .conf å ã®ãã¡ã€ã«
/etc/supervisord.conf`ãçŸåšã®ãã£ã¬ã¯ããªã«é 眮ã§ããŸãïŒecho_supervisord_conf >
ç£èŠè .confïŒãããŠéå§ ã¹ãŒããŒãã€ã¶ãŒ -c ãæå®ããããã®ãã©ã°
èšå®ãã¡ã€ã«ã®å Žæã
ããšãã°ã ã¹ãŒããŒãã€ã¶ãŒ -c ç£èŠè .confã ã䜿çšãã -c ãã©ã°ã¯å®éã«ã¯åé·ã§ã
ãã®å Žåããªããªã ã¹ãŒããŒãã€ã¶ãŒ çŸåšã®ãã£ã¬ã¯ããªãæ€çŽ¢ã㊠ç£èŠè .conf
ãã¡ã€ã«ã®ä»ã®å Žæãæ€çŽ¢ããåã«ãããã¯æ©èœããŸãã
ãã¡ã€ã«ã·ã¹ãã ã«æ§æãã¡ã€ã«ãäœæãããããããå€æŽããŠã
奜ã¿ã
ã File
ã¹ãŒããŒãã€ã¶ãŒæ§æãã¡ã€ã«ã¯æ £ç¿çã«ååãä»ããããŠããŸã ç£èŠè .confã 䜿çšãããŠããã®ã¯ã
äž¡èšèªã§ ã¹ãŒããŒãã€ã¶ãŒ ãš ã¹ãŒããŒãã€ã¶ãŒctl. ããããã®ã¢ããªã±ãŒã·ã§ã³ã -c
ãªãã·ã§ã³ (ã¢ããªã±ãŒã·ã§ã³ã«æ§æãã¡ã€ã«åãäŒããããã«äœ¿çšããããªãã·ã§ã³
æ瀺çã«ïŒãã¢ããªã±ãŒã·ã§ã³ã¯æ¬¡ã®ååã®ãã¡ã€ã«ãæ¢ããŸã ç£èŠè .conf äžã§
次ã®å Žæãæå®ãããé åºã§ã æåã«èŠã€ãã£ããã¡ã€ã«ã䜿çšãããŸãã
1. $CWD/ã¹ãŒããŒãã€ã¶ãŒd.conf
2. $CWD/etc/supervisord.conf
3. /etc/supervisord.conf
4. ../etc/supervisord.conf (å®è¡å¯èœãã¡ã€ã«ã«çžå¯Ÿç)
5. ../supervisord.conf (å®è¡å¯èœãã¡ã€ã«ã«çžå¯Ÿç)
泚:
äžéšã®ãã£ã¹ããªãã¥ãŒã·ã§ã³ã§ã¯ãSupervisor ãç¬èªã®ã«ã¹ã¿ãã€ãºã§ããã±ãŒãžåãããŠããŸãã ãããã¯
Supervisor ã®å€æŽãããããŒãžã§ã³ã¯ãä»ã®å Žæããæ§æãã¡ã€ã«ãããŒãããå ŽåããããŸãã
ããã«èšèŒãããŠãããã®ãããã ç¹ã«ã䜿çšãã Ubuntu ããã±ãŒãžãèŠã€ãã£ãŠããŸãã
/etc/ã¹ãŒããŒãã€ã¶ãŒ/ã¹ãŒããŒãã€ã¶ãŒd.conf.
File ãã©ãŒããã
ç£èŠè .conf Windows-INI ã¹ã¿ã€ã« (Python ConfigParser) ãã¡ã€ã«ã§ãã ã»ã¯ã·ã§ã³ããããŸãïŒãããã
ã§ç€ºããã [ããã]) ããã³ã»ã¯ã·ã§ã³å ã®ããŒãšå€ã®ãã¢ã ã»ã¯ã·ã§ã³ãšãã®
蚱容å€ã以äžã«ç€ºããŸãã
ç°å¢ Variables
ãã®æç¹ã§ç°å¢ã«ååšããç°å¢å€æ° ã¹ãŒããŒãã€ã¶ãŒ is
started ã¯ãPython æåååŒæ§æã䜿çšããŠæ§æãã¡ã€ã«ã§äœ¿çšã§ããŸã
%(ENV_X)s:
ãããã°ã©ã ïŒäŸã
ã³ãã³ã=/usr/bin/example --loglevel=%(ENV_LOGLEVEL)s
äžèšã®äŸã§ã¯ãåŒ %(ENV_LOGLEVEL)s ã®å€ã«æ¡åŒµãããŸã
ç°å¢å€æ° ãã°ã¬ãã«.
泚:
Supervisor 3.2 以éã§ã¯ã %(ENV_X)s åŒã¯ãã¹ãŠã®ãªãã·ã§ã³ã§ãµããŒããããŠããŸãã ã®
äžéšã®ãªãã·ã§ã³ã¯ãµããŒãããŠããŸãããã»ãšãã©ã®ãªãã·ã§ã³ã¯ãµããŒãããŠããŸããã ã®ããã¥ã¡ã³ããåç §ããŠãã ããã
以äžã®åãªãã·ã§ã³ã
[unix_http_server] ã»ã¯ã·ã§ã³ èšå®
ãã® ç£èŠè .conf ãã¡ã€ã«ã«ã¯ããšããååã®ã»ã¯ã·ã§ã³ãå«ãŸããŠããŸã [unix_http_server] ãã®äžã§
UNIX ãã¡ã€ã³ ãœã±ããããªãã¹ã³ãã HTTP ãµãŒããŒã®æ§æãã©ã¡ãŒã¿ã¯ã次ã®ããã«ããå¿ èŠããããŸãã
æ¿å ¥ãããŸãã æ§æãã¡ã€ã«ã« [unix_http_server] ã»ã¯ã·ã§ã³ãUNIX ãã¡ã€ã³
ãœã±ãã HTTP ãµãŒããŒã¯éå§ãããŸããã 蚱容ãããæ§æå€ã¯æ¬¡ã®ãšããã§ãã
ç¶ãã
[unix_http_server] ã»ã¯ã·ã§ã³ 䟡å€èŠ³
file
UNIX ãã¡ã€ã³ãœã±ãããžã®ãã¹ (äŸ: /tmp/supervisord.sockïŒã¹ãŒããŒãã€ã¶ãŒã
HTTP/XML-RPC ãªã¯ãšã¹ãããªãã¹ã³ããŸãã ã¹ãŒããŒãã€ã¶ãŒctl XML-RPC ã䜿çšããŠéä¿¡ããŸã
ã¹ãŒããŒãã€ã¶ãŒ ãã®ããŒããä»ããŠã ãã®ãªãã·ã§ã³ã«ã¯å€ãå«ããããšãã§ããŸã %(ãã)sãå±éããŸã
ããããã£ã¬ã¯ããªã« ã¹ãŒããŒãã€ã¶ãŒ èšå®ãã¡ã€ã«ãèŠã€ãããŸããã
ããã©ã«ãïŒ ãªãã
å¿ é ïŒãããã
å°å ¥: 3.0
chmod
UNIX ãã¡ã€ã³ ãœã±ããã® UNIX èš±å¯ã¢ãŒã ãããã次ã®å€ã«å€æŽããŸãã
ã¹ã¿ãŒãã¢ãã
ããã©ã«ã: 0700
å¿ é ïŒãããã
å°å ¥: 3.0
chown
ãœã±ãã ãã¡ã€ã«ã®ãŠãŒã¶ãŒãšã°ã«ãŒãããã®å€ã«å€æŽããŸãã UNIXãŠãŒã¶ãŒåã®å¯èœæ§ããããŸã
ïŒäŸãã° ã¯ãªã¹ã ) ãŸãã¯ã³ãã³ã§åºåããã UNIX ãŠãŒã¶ãŒåãšã°ã«ãŒã (äŸ: ã¯ãªã¹ã ïŒãã€ãŒã«).
ããã©ã«ã: Supervisord ãéå§ãããŠãŒã¶ãŒã®ãŠãŒã¶ãŒåãšã°ã«ãŒãã䜿çšããŸãã
å¿ é ïŒãããã
å°å ¥: 3.0
ãŠãŒã¶å
ãã® HTTP ãµãŒããŒãžã®èªèšŒã«å¿ èŠãªãŠãŒã¶ãŒåã
ããã©ã«ã: ãŠãŒã¶ãŒåã¯å¿ èŠãããŸããã
å¿ é ïŒãããã
å°å ¥: 3.0
password
ãã® HTTP ãµãŒããŒãžã®èªèšŒã«å¿ èŠãªãã¹ã¯ãŒãã ããã¯ã¯ãªã¢ããã¹ãã«ããããšãã§ããŸã
ãã¹ã¯ãŒãããŸãã¯æååãåã«ä»ããŠããå Žå㯠SHA-1 ããã·ã¥ãšããŠæå®ã§ããŸã {瀟}ã ã®ããã«
äŸã {SHA}82ab876d1387bfafe46cc1c8a2ef074eae50cb1d ã® SHA ä¿åããŒãžã§ã³ã§ãã
ãã¹ã¯ãŒããthepasswordãã
ããã·ã¥ããããã¹ã¯ãŒã㯠XNUMX é²åœ¢åŒã§ãªããã°ãªããªãããšã«æ³šæããŠãã ããã
ããã©ã«ã: ãã¹ã¯ãŒãã¯å¿ èŠãããŸããã
å¿ é ïŒãããã
å°å ¥: 3.0
[unix_http_server] ã»ã¯ã·ã§ã³ äŸ
[unix_http_server]
ãã¡ã€ã« = /tmp/supervisor.sock
chmod = 0777
chown= 誰ã:ã°ã«ãŒããªã
ãŠãŒã¶ãŒå = ãŠãŒã¶ãŒ
ãã¹ã¯ãŒã = 123
[inet_http_server] ã»ã¯ã·ã§ã³ èšå®
ãã® ç£èŠè .conf ãã¡ã€ã«ã«ã¯ããšããååã®ã»ã¯ã·ã§ã³ãå«ãŸããŠããŸã [inet_http_server] ãã®äžã§
TCP (ã€ã³ã¿ãŒããã) ãœã±ãã㧠listen ãã HTTP ãµãŒããŒã®æ§æãã©ã¡ãŒã¿ãŒ
æ¿å ¥ãããŸãã æ§æãã¡ã€ã«ã« [inet_http_server] ã»ã¯ã·ã§ã³ãinet HTTP
ãµãŒããŒã¯èµ·åãããŸããã èšå®å¯èœãªå€ã¯æ¬¡ã®ãšããã§ãã
[inet_http_server] ã»ã¯ã·ã§ã³ 䟡å€èŠ³
ããŒã
TCP ãã¹ã:ããŒãå€ãŸã㯠(äŸ: 127.0.0.1:9001) ã¹ãŒããŒãã€ã¶ãŒããªãã¹ã³ãã
HTTP/XML-RPC ãªã¯ãšã¹ãã ã¹ãŒããŒãã€ã¶ãŒctl XML-RPC ã䜿çšããŠéä¿¡ããŸã ã¹ãŒããŒãã€ã¶ãŒ
ãã®ããŒããä»ããŠã ãã·ã³å ã®ãã¹ãŠã®ã€ã³ã¿ãŒãã§ã€ã¹ã§ãªãã¹ã³ããã«ã¯ã次ã䜿çšããŸã ïŒ9001 or *:9001.
ããã©ã«ã: ããã©ã«ããªãã
å¿ é ïŒã¯ãã
å°å ¥: 3.0
ãŠãŒã¶å
ãã® HTTP ãµãŒããŒãžã®èªèšŒã«å¿ èŠãªãŠãŒã¶ãŒåã
ããã©ã«ã: ãŠãŒã¶ãŒåã¯å¿ èŠãããŸããã
å¿ é ïŒãããã
å°å ¥: 3.0
password
ãã® HTTP ãµãŒããŒãžã®èªèšŒã«å¿ èŠãªãã¹ã¯ãŒãã ããã¯ã¯ãªã¢ããã¹ãã«ããããšãã§ããŸã
ãã¹ã¯ãŒãããŸãã¯æååãåã«ä»ããŠããå Žå㯠SHA-1 ããã·ã¥ãšããŠæå®ã§ããŸã {瀟}ã ã®ããã«
äŸã {SHA}82ab876d1387bfafe46cc1c8a2ef074eae50cb1d ã® SHA ä¿åããŒãžã§ã³ã§ãã
ãã¹ã¯ãŒããthepasswordãã
ããã·ã¥ããããã¹ã¯ãŒã㯠XNUMX é²åœ¢åŒã§ãªããã°ãªããªãããšã«æ³šæããŠãã ããã
ããã©ã«ã: ãã¹ã¯ãŒãã¯å¿ èŠãããŸããã
å¿ é ïŒãããã
å°å ¥: 3.0
[inet_http_server] ã»ã¯ã·ã§ã³ äŸ
[inet_http_server]
ããŒã = 127.0.0.1:9001
ãŠãŒã¶ãŒå = ãŠãŒã¶ãŒ
ãã¹ã¯ãŒã = 123
[ç£ä¿®] ã»ã¯ã·ã§ã³ èšå®
ãã® ç£èŠè .conf ãã¡ã€ã«ã«ã¯ããšããååã®ã»ã¯ã·ã§ã³ãå«ãŸããŠããŸã [ç£ä¿®] ã©ã®ã°ããŒãã«èšå®ã§
ã® ã¹ãŒããŒãã€ã¶ãŒ ããã»ã¹ãæ¿å ¥ããå¿ èŠããããŸãã ãããã¯æ¬¡ã®ãšããã§ãã
[ç£ä¿®] ã»ã¯ã·ã§ã³ 䟡å€èŠ³
ãã°ãã¡ã€ã«
Supervisord ããã»ã¹ã®ã¢ã¯ãã£ãã㣠ãã°ãžã®ãã¹ã ãã®ãªãã·ã§ã³ã«ã¯ã
å€ %(ãã)sããã¯ãsupervisord æ§æãæ ŒçŽãããŠãããã£ã¬ã¯ããªã«å±éãããŸãã
ãã¡ã€ã«ãèŠã€ãããŸããã
ããã©ã«ã: $CWD/supervisord.log
å¿ é ïŒãããã
å°å ¥: 3.0
logfile_maxbytes
ã¢ã¯ãã£ãã㣠ãã° ãã¡ã€ã«ãåé€ãããåã«æ¶è²»ãããå¯èœæ§ãããæ倧ãã€ãæ°ã
å転ããŸã (ãKBãããMBãããGBããªã©ã®æ¥å°ŸèŸã®ä¹æ°ãå€ã«äœ¿çšã§ããŸã)ã èšå®
ãã° ãµã€ãºãç¡å¶éã§ããããšã瀺ãã«ã¯ããã®å€ã 0 ã«èšå®ããŸãã
ããã©ã«ãïŒ50MB
å¿ é ïŒãããã
å°å ¥: 3.0
ãã°ãã¡ã€ã«ã®ããã¯ã¢ãã
ã¢ã¯ãã£ãã㣠ãã° ãã¡ã€ã«ã®ããŒããŒã·ã§ã³ã®çµæãšããŠä¿æããããã¯ã¢ããã®æ°ã èšå®ãããŠããå Žå
0 ã«ãããšãããã¯ã¢ããã¯ä¿æãããŸããã
ããã©ã«ã: 10
å¿ é ïŒãããã
å°å ¥: 3.0
loglevel
ãã®ã³ã° ã¬ãã«ãsupervisord ã¢ã¯ãã£ãã㣠ãã°ã«äœãæžã蟌ãŸãããã決å®ããŸãã ã®äžã€
é倧ãª, ãšã©ãŒ, èŠåãã, info, debug, ãã¬ãŒã¹ãŸã㯠ãããã¹ããã. ãã°ã¬ãã«ã§æ³šæããŠãã ãã debug,
Supervisord ãã° ãã¡ã€ã«ã¯ããã®åããã»ã¹ã® stderr/stdout åºåãèšé²ããŸãã
ããã³ããã»ã¹ç¶æ ã®å€æŽã«é¢ããæ¡åŒµæ å ±æ å ±ãããã¯ããããã°ã«åœ¹ç«ã¡ãŸãã
æ£ããèµ·åããŠããªãããã»ã¹ã åç §: activity_log_levelsã
ããã©ã«ãïŒ æ å ±
å¿ é ïŒãããã
å°å ¥: 3.0
pidãã¡ã€ã«
Supervisord ã pid ãã¡ã€ã«ãä¿æããå Žæã ãã®ãªãã·ã§ã³ã«ã¯ã
å€ %(ãã)sããã¯ãsupervisord æ§æãæ ŒçŽãããŠãããã£ã¬ã¯ããªã«å±éãããŸãã
ãã¡ã€ã«ãèŠã€ãããŸããã
ããã©ã«ã: $CWD/ã¹ãŒããŒãã€ã¶ãŒd.pid
å¿ é ïŒãããã
å°å ¥: 3.0
umask
Supervisord ããã»ã¹ã® umaskã
ããã©ã«ã: 022
å¿ é ïŒãããã
å°å ¥: 3.0
ã®ã ããã
true ã®å Žåãsupervisord ã¯ããŒã¢ã³åãã代ããã«ãã©ã¢ã°ã©ãŠã³ãã§éå§ããŸãã
ããã©ã«ãïŒ ééã
å¿ é ïŒãããã
å°å ¥: 3.0
ãã³ããº
Supervisord ãå®è¡ããåã«å©çšå¯èœã§ãªããã°ãªããªããã¡ã€ã«èšè¿°åã®æå°æ°ã
æ£åžžã«èµ·åããŸãã setrlimit ãžã®åŒã³åºããè¡ããããœããããã³
ç£èŠå¯Ÿè±¡ããã»ã¹ãæºããã¹ãå³ããå¶é ãã³ããº. ããŒããªãããã¯
Supervisord ã root ãšããŠå®è¡ãããŠããå Žåã«çºçããŸãã Supervisord ã¯ãã¡ã€ã«èšè¿°åãèªç±ã«äœ¿çšãã
OS ããååŸã§ããªãå Žåã¯é害ã¢ãŒãã«ãªãããããããšäŸ¿å©ã§ãã
å®è¡äžã«äžè¶³ããªãããã«æå°å€ãæå®ã§ããŸãã
ãã®ãªãã·ã§ã³ã¯ãããã»ã¹ããšã® fd å¶éãäœã Solaris ã§ç¹ã«åœ¹ç«ã¡ãŸãã
ããã©ã«ãã
ããã©ã«ã: 1024
å¿ é ïŒãããã
å°å ¥: 3.0
minproc
Supervisord ã®åã«äœ¿çšå¯èœã«ããå¿ èŠãããããã»ã¹èšè¿°åã®æå°æ°
æ£åžžã«èµ·åããŸãã ãœãããäžããããšããããã« setrlimit ãžã®åŒã³åºããè¡ãããŸãã
ç£èŠå¯Ÿè±¡ããã»ã¹ã®å³ããå¶é minproc. ããŒããªãããã¯
ã¹ãŒããŒãã€ã¶ãŒãã«ãŒããšããŠå®è¡ãããŠããå Žåã«ã®ã¿çºçããŸãã Supervisord ã¯é害ã¢ãŒãã«å ¥ããŸã
OS ãããã»ã¹èšè¿°åã䜿ãæããããšããååãª
ããã»ã¹èšè¿°åã¯ã ã¹ãŒããŒãã€ã¶ãŒ ã¹ã¿ãŒãã¢ãã
ããã©ã«ã: 200
å¿ é ïŒãããã
å°å ¥: 3.0
ããŒã¯ãªãŒã³ã¢ãã
Supervisord ãæ¢åã®ãã®ãã¯ãªã¢ã§ããªãããã«ãã AUTO èµ·åæã®åãã° ãã¡ã€ã«ã
ãããã°ã«åœ¹ç«ã¡ãŸãã
ããã©ã«ãïŒ ééã
å¿ é ïŒãããã
å°å ¥: 3.0
ãã£ã€ã«ããã°ãã£ã¬ã¯ããª
ã«äœ¿çšããããã£ã¬ã¯ã㪠AUTO åãã° ãã¡ã€ã«ã ãã®ãªãã·ã§ã³ã«ã¯å€ãå«ããããšãã§ããŸã
%(ãã)sãããã¯ã ã¹ãŒããŒãã€ã¶ãŒ configuration file
çºèŠãããã
ããã©ã«ã: Python ã®å€ tempfile.get_tempdir()
å¿ é ïŒãããã
å°å ¥: 3.0
user
æ瀺ãã ã¹ãŒããŒãã€ã¶ãŒ äœããè¡ãåã«ããŠãŒã¶ãŒããã® UNIX ãŠãŒã¶ãŒ ã¢ã«ãŠã³ãã«åãæ¿ãã
æå³ã®ããåŠçã ãŠãŒã¶ãŒãåãæ¿ããããšãã§ããã®ã¯ã ã¹ãŒããŒãã€ã¶ãŒ ãšããŠéå§ãããŸã
ã«ãŒããŠãŒã¶ãŒã ããã ã¹ãŒããŒãã€ã¶ãŒ ãŠãŒã¶ãŒãåãæ¿ããããšã¯ã§ããŸãããç¶è¡ããŸããã
ã®ãã°ã¡ãã»ãŒãž é倧㪠ç¹æš©ãããããã§ããªããšèšã£ãŠããã¬ãã«ã
ããã©ã«ã: ãŠãŒã¶ãŒãåãæ¿ããªãã§ãã ãã
å¿ é ïŒãããã
å°å ¥: 3.0
ãã£ã¬ã¯ããªã«ãžã§ããéå§ããŸãã
æ¥æ ã¹ãŒããŒãã€ã¶ãŒ ããŒã¢ã³åããã«ã¯ããã®ãã£ã¬ã¯ããªã«åãæ¿ããŸãã ãã®ãªãã·ã§ã³ã«ã¯ã
å€ %(ãã)sãããã¯ã ã¹ãŒããŒãã€ã¶ãŒ ã®ç£èŠ
ãã¡ã€ã«ãèŠã€ãããŸããã
ããã©ã«ã: cd ããªã
å¿ é ïŒãããã
å°å ¥: 3.0
ã¹ããªããã¢ã³ã·
åãã° ãã¡ã€ã«ãããã¹ãŠã® ANSI ãšã¹ã±ãŒã ã·ãŒã±ã³ã¹ãåãé€ããŸãã
ããã©ã«ãïŒ ééã
å¿ é ïŒãããã
å°å ¥: 3.0
ç°å¢
ãã©ãŒã å ã®ããŒãšå€ã®ãã¢ã®ãªã¹ã KEY="val",KEY2="val2" ã«é 眮ãããŸã
ã¹ãŒããŒãã€ã¶ãŒ ããã»ã¹ã®ç°å¢ (çµæãšããŠããã®ãã¹ãŠã®åããã»ã¹ã®ç°å¢)
ç°å¢)ã ãã®ãªãã·ã§ã³ã«ã¯å€ãå«ããããšãã§ããŸã %(ãã)sã«å±éãããŸãã
Supervisord èšå®ãã¡ã€ã«ãèŠã€ãã£ããã£ã¬ã¯ããªã å«ãå€
è±æ°å以å€ã®æåã¯åŒçšç¬Šã§å²ãå¿ èŠããããŸã (äŸ: KEY="val:123",KEY2="val,456").
ãã以å€ã®å Žåãå€ãåŒçšããããšã¯ãªãã·ã§ã³ã§ãããæšå¥šãããŸãã ããŒã»ã³ãããšã¹ã±ãŒãããã«ã¯
æåã¯ãåçŽã« XNUMX ã€äœ¿çšããŸãã ïŒäŸãã° URI="/first%%20name") 泚æ ãã®ãµãããã»ã¹ã¯
èµ·åã«äœ¿çšãããã·ã§ã«ã®ç°å¢å€æ°ãç¶æ¿ãã ã¹ãŒããŒãã€ã¶ãŒ ãé€ããŠ
ããããã³ããã°ã©ã ã® ç°å¢ ãªãã·ã§ã³ã èŠã
ãµãããã»ã¹ç°å¢ã
ããã©ã«ã: å€ãªã
å¿ é ïŒãããã
å°å ¥: 3.0
èå¥å
RPC ã€ã³ã¿ãŒãã§ã€ã¹ã§äœ¿çšãããããã®ã¹ãŒããŒãã€ã¶ ããã»ã¹ã®èå¥åæååã
ããã©ã«ã: ã¹ãŒããŒãã€ã¶ãŒ
å¿ é ïŒãããã
å°å ¥: 3.0
[ç£ä¿®] ã»ã¯ã·ã§ã³ äŸ
[ç£ä¿®]
ãã°ãã¡ã€ã« = /tmp/supervisord.log
logfile_maxbytes = 50MB
logfile_backups=10
ãã°ã¬ãã« = æ å ±
pidfile = /tmp/supervisord.pid
ã®ã ããã = false
æå°å€ = 1024
minproc = 200
umask = 022
ãŠãŒã¶ãŒ = ã¯ãªã¹ã
èå¥å = ã¹ãŒããŒãã€ã¶
ãã£ã¬ã¯ã㪠= / tmpã«
nocleanup = true
childlogdir = / tmpã«
ã¹ããªããã¢ã³ã· = false
ç°å¢ = KEY1="å€ 1"ãKEY2="å€ 2"
[ã¹ãŒããŒãã€ã¶ãŒctl] ã»ã¯ã·ã§ã³ èšå®
æ§æãã¡ã€ã«ã«ã¯ã ã¹ãŒããŒãã€ã¶ãŒctl ã€ã³ã¿ã©ã¯ãã£ãã·ã§ã«
ããã°ã©ã ã ãããã®ãªãã·ã§ã³ã以äžã«ç€ºããŸãã
[ã¹ãŒããŒãã€ã¶ãŒctl] ã»ã¯ã·ã§ã³ 䟡å€èŠ³
ãµãŒããŒURL
Supervisord ãµãŒããŒãžã®ã¢ã¯ã»ã¹ã«äœ¿çšãã URLã
http://localhostïŒ9001. UNIX ãã¡ã€ã³ ãœã±ããã®å Žåã¯ã次ã䜿çšããŸãã
unix:///absolute/path/to/file.sock.
ããã©ã«ã: http://localhostïŒ9001
å¿ é ïŒãããã
å°å ¥: 3.0
ãŠãŒã¶å
èªèšŒã§äœ¿çšããããã« Supervisord ãµãŒããŒã«æž¡ããŠãŒã¶ãŒåã ããã¯
ãšåãã§ãã ãŠãŒã¶å ããŒããŸã㯠UNIX ã® Supervisord ãµãŒããŒæ§æãã
ã¢ã¯ã»ã¹ããããšããŠãããã¡ã€ã³ãœã±ããã
ããã©ã«ã: ãŠãŒã¶ãŒåãªã
å¿ é ïŒãããã
å°å ¥: 3.0
password
èªèšŒã«äœ¿çšããããã« Supervisord ãµãŒããŒã«æž¡ããã¹ã¯ãŒãã ããã¯
ã®ã¯ãªã¢ããã¹ã ããŒãžã§ã³ã§ãã password ã® Supervisord ãµãŒããŒæ§æãã
ã¢ã¯ã»ã¹ããããšããŠããããŒããŸã㯠UNIX ãã¡ã€ã³ ãœã±ããã ãã®å€ã¯æ¬¡ã®ããã«æž¡ãããšã¯ã§ããŸãã
SHA ããã·ã¥ã ãã®ãã¡ã€ã«ã§æå®ãããŠããä»ã®ãã¹ã¯ãŒããšã¯ç°ãªãã
ã¯ãªã¢ããã¹ãã
ããã©ã«ãïŒãã¹ã¯ãŒããªã
å¿ é ïŒãããã
å°å ¥: 3.0
ããã³ãã
Supervisorctl ããã³ãããšããŠäœ¿çšãããæååã
ããã©ã«ã: ã¹ãŒããŒãã€ã¶ãŒ
å¿ é ïŒãããã
å°å ¥: 3.0
å±¥æŽãã¡ã€ã«
ãšããŠäœ¿çšãããã¹ èªã¿èŸŒãŸããè¡ æ°žç¶å±¥æŽãã¡ã€ã«ã ãã®æ©èœãæå¹ã«ãããšã
ãã¹ãéžæãããšãsupervisorctl ã³ãã³ãããã¡ã€ã«ã«ä¿æããã次ã䜿çšã§ããŸãã
æåŸã® Supervisorctl ã§å®è¡ããã³ãã³ããåŒã³åºãããã® readline (äŸ: äžåãç¢å°)
ã»ãã·ã§ã³ã
ããã©ã«ãïŒ ãã¡ã€ã«ããªã
å¿ é ïŒãããã
å°å ¥ïŒ3.0a5
[ã¹ãŒããŒãã€ã¶ãŒctl] ã»ã¯ã·ã§ã³ äŸ
[ã¹ãŒããŒãã€ã¶ãŒctl]
ãµãŒããŒURL = unix:///tmp/supervisor.sock
ãŠãŒã¶ãŒå = ã¯ãªã¹
ãã¹ã¯ãŒã = 123
ããã³ãã = mysupervisor
[ããã°ã©ã :x] ã»ã¯ã·ã§ã³ èšå®
æ§æãã¡ã€ã«ã«ã¯ XNUMX ã€ä»¥äžã®ãã¡ã€ã«ãå«ãŸããŠããå¿ èŠããããŸã ããã°ã©ã ç£èŠå¯Ÿè±¡ã®ã»ã¯ã·ã§ã³
ã©ã®ããã°ã©ã ãéå§ããŠå¶åŸ¡ããå¿ èŠãããããç¥ãããã ããããŒå€ã¯è€åå€ã§ãã
ããã¯ããããã°ã©ã ããšããåèªã®çŽåŸã«ã³ãã³ãç¶ãããã®åŸã«ããã°ã©ã åãç¶ããŸãã ããããŒ
ã®å€ [ããã°ã©ã :foo] ãfooããšããååã®ããã°ã©ã ãèšè¿°ããŸãã ååã䜿ãããŠããŸã
ãã®çµæãšããŠäœæãããããã»ã¹ãå¶åŸ¡ããã¯ã©ã€ã¢ã³ã ã¢ããªã±ãŒã·ã§ã³å
æ§æã äœæãšã©ãŒã§ãã ããã°ã©ã ååã®ãªãã»ã¯ã·ã§ã³ã ã®
name ã«ã¯ãã³ãã³æåãŸãã¯ãã©ã±ããæåãå«ããããšã¯ã§ããŸããã ååã®å€ã¯
ã®å€ãšããŠäœ¿çšãããŸãã %(ããã°ã©ã å)s ä»ã®å€å ã§ã®æåååŒã®å±é
æå®ãããå Žæã
泚:
A [ããã°ã©ã :x] ã»ã¯ã·ã§ã³ã¯ãå®éã«ã¯ã¹ãŒããŒãã€ã¶ãŒã«ãšã£ãŠãåçš®ã®ããã»ã¹ã°ã«ãŒãããè¡šããŸã
ïŒ3.0çŸåšïŒã ã°ã«ãŒãã®ã¡ã³ããŒã¯ã numprocs
ãš ããã»ã¹å æ§æã®ãã©ã¡ãŒã¿ãŒã ããã©ã«ãã§ã¯ãnumprocs ãš
process_name ã¯ããã©ã«ãããå€æŽãããã«æ®ãããã°ã«ãŒãã¯
[ããã°ã©ã :x] ååãä»ããããŸã x ãšããååã®åäžã®ããã»ã¹ããããŸã x åæåã ãã®
å€ãã¹ãŒããŒãã€ã¶ ãªãªãŒã¹ãšã®åŸæ¹äºææ§ããããã«æäŸããŸãã
ããã°ã©ã ã»ã¯ã·ã§ã³ãåçš®ã®ããã»ã¹ ã°ã«ãŒãå®çŸ©ãšããŠæ±ããªãã§ãã ããã
ããããããšãã°ã [ããã°ã©ã :foo] ã®ã»ã¯ã·ã§ã³ numprocs ã®3ãša
ããã»ã¹å ã®è¡šçŸ %(ããã°ã©ã å)s_%(ããã»ã¹çªå·)02dããfooãã°ã«ãŒãã¯
ãšããååã® XNUMX ã€ã®ããã»ã¹ãå«ãŸããŠããŸãã foo_00, foo_01, foo_02ãããã«ããã次ã®ããšãå¯èœã«ãªããŸãã
åäžã®ããã»ã¹ã䜿çšããŠãå€ãã®éåžžã«é¡äŒŒããããã»ã¹ãéå§ãã [ããã°ã©ã :x] ã»ã¯ã·ã§ã³ã å šãŠ
ãã°ãã¡ã€ã«åããã¹ãŠã®ç°å¢æååãããã³ããã°ã©ã ã®ã³ãã³ãã«ãå«ããããšãã§ããŸã
åæ§ã® Python æåååŒãããããã«ãããã«ç°ãªããã©ã¡ãŒã¿ãŒãæž¡ããŸãã
ããã»ã¹ã
[ããã°ã©ã :x] ã»ã¯ã·ã§ã³ 䟡å€èŠ³
command
ãã®ããã°ã©ã ã®éå§æã«å®è¡ãããã³ãã³ãã ã³ãã³ãã¯æ¬¡ã®ããããã§ãã
絶察ïŒäŸ /path/to/ããã°ã©ã åïŒãŸãã¯çžå¯ŸïŒäŸ çªçµåïŒã ããããã
çžå¯Ÿãç£ç£è ã®ç°å¢ $ PATH å®è¡å¯èœãã¡ã€ã«ãæ€çŽ¢ãããŸãã
ããã°ã©ã ã¯åŒæ°ãåãå ¥ããããšãã§ããŸãã /ãã¹/ãž/ããã°ã©ã foo ããŒ. ã³ãã³ãã©ã€ã³ã¯äœ¿çšã§ããŸã
äºéåŒçšç¬Šã§åŒæ°ãã°ã«ãŒãåãããã®äžã«ã¹ããŒã¹ãå ¥ããŠããã°ã©ã ã«æž¡ããŸãã
/ãã¹/ãž/ããã°ã©ã /åå -p ãfoo ããŒ". ã®å€ã«æ³šæããŠãã ããã command Python ãå«ãå ŽåããããŸã
æåååŒãäŸãã° /path/to/ããã°ã©ã å --port=80%(ããã»ã¹çªå·)02d æ¡å€§ãããããããŸãã
ããž /path/to/ããã°ã©ã å -ããŒã= 8000 å®è¡æã«ã æåååŒãè©äŸ¡ããã
ããŒãå«ãèŸæžã«å¯Ÿã㊠ã°ã«ãŒãå, ãã¹ãããŒãå, ããã»ã¹çªå·,
ããã°ã©ã å, ãã¡ã (supervisord èšå®ãã¡ã€ã«ã®ãã£ã¬ã¯ããª)ãããã³ãã¹ãŠ
æ¥é èŸãä»ãã Supervisord ã®ç°å¢å€æ° ç°å¢_. å¶åŸ¡ãããããã°ã©ã ã¯
ã¹ãŒããŒãã€ã¶ãŒã¯ããŒã¢ã³åã®è²¬ä»»ããããšæ³å®ããŠãããããããèªäœã¯ããŒã¢ã³ã§ã¯ãããŸããã
ãµãããã»ã¹ (nondaemonizing_of_subprocesses ãåç §)ã
ããã©ã«ã: ããã©ã«ããªãã
å¿ é ïŒã¯ãã
å°å ¥: 3.0
ããã»ã¹å
ãã®ã¹ãŒããŒãã€ã¶ ããã»ã¹åãæ§æããããã«äœ¿çšããã Python æåååŒ
åŠçããã å€æŽããªãéããéåžžããããèšå®ããããšã«ã€ããŠå¿é ããå¿ èŠã¯ãããŸããã
numprocs. æåååŒã¯ã以äžãå«ãèŸæžã«å¯ŸããŠè©äŸ¡ãããŸãã
ã°ã«ãŒãå, ãã¹ãããŒãå, ããã»ã¹çªå·, ããã°ã©ã å, ãã¡ã (ã®ãã£ã¬ã¯ããª
Supervisord æ§æãã¡ã€ã«)ã
ããã©ã«ã: %(ããã°ã©ã å)s
å¿ é ïŒãããã
å°å ¥: 3.0
numprocs
Supervisor ã¯ãnumprocs ã§æå®ãããæ°ã®ãã®ããã°ã©ã ã®ã€ã³ã¹ã¿ã³ã¹ãéå§ããŸãã ããŒã
numprocs > 1 ã®å Žåã ããã»ã¹å åŒã«ã¯å«ããå¿ èŠããããŸã %(ããã»ã¹çªå·)s ïŒãŸãã¯ã
ãå«ããã®ä»ã®æå¹ãª Python æåååŒ ããã»ã¹çªå·ïŒ ãã®äžã§ã
ããã©ã«ã: 1
å¿ é ïŒãããã
å°å ¥: 3.0
numprocs_start
æ°å€ãèšç®ããããã«äœ¿çšãããæŽæ°ãªãã»ããã numprocs éå§ããã
ããã©ã«ã: 0
å¿ é ïŒãããã
å°å ¥: 3.0
åªå é äœ
éå§ããã³ã·ã£ããããŠã³ã®é åºã«ãããããã°ã©ã ã®çžå¯Ÿçãªåªå 床ã äœã
åªå 床ã¯ãèµ·åæã«æåã«èµ·åããæåŸã«ã·ã£ããããŠã³ããããã°ã©ã ã瀺ããŸãã
éçŽã³ãã³ãã¯ãããŸããŸãªã¯ã©ã€ã¢ã³ãã§äœ¿çšãããŸã (ããã¹ãŠéå§ã/ããã¹ãŠåæ¢ããªã©)ã ããé«ã
åªå é äœã¯ãæåŸã«éå§ããæåã«ã·ã£ããããŠã³ããããã°ã©ã ã瀺ããŸãã
ããã©ã«ã: 999
å¿ é ïŒãããã
å°å ¥: 3.0
èªåã¹ã¿ãŒã
true ã®å Žåããã®ããã°ã©ã ã¯ãsupervisord ã®éå§æã«èªåçã«éå§ãããŸãã
ããã©ã«ãïŒ NS
å¿ é ïŒãããã
å°å ¥: 3.0
éå§ç§
èµ·ååŸãããã°ã©ã ãå®è¡ãç¶ç¶ããããã«å¿ èŠãªåèšç§æ°
éå§ãæåãããšèŠãªã (ããã»ã¹ã èµ·å ãžã®ç¶æ
ã©ã³ãã³ã° å·ïŒã ã«èšå® 0 ããã°ã©ã ãå®è¡ãç¶ããå¿ èŠããªãããšã瀺ã
ç¹å®ã®æéã
泚:
ããã»ã¹ããäºæ³ããããçµäºã³ãŒãã§çµäºããå Žåã§ã ( çµäºã³ãŒãïŒã éå§
ããã»ã¹ãããæ©ãçµäºããå Žåã§ãã倱æãšèŠãªãããŸãã éå§ç§.
ããã©ã«ã: 1
å¿ é ïŒãããã
å°å ¥: 3.0
éå§åè©Šè¡
äžé£ã®å€±æè©Šè¡ã®åæ°ã ã¹ãŒããŒãã€ã¶ãŒ ããããšãããšèš±å¯ãããŸã
ãããããŠããã»ã¹ãå®è¡ã«ç§»ãåã«ããã°ã©ã ãéå§ãã FATAL å·ã èŠã
説æã®ããã® process_states FATAL ã§ã®ã¿åæ¢ãããããšãã§ããŸãã
ããã©ã«ã: 3
å¿ é ïŒãããã
å°å ¥: 3.0
èªååèµ·å
ãã©ãããæå®ããŸã ã¹ãŒããŒãã€ã¶ãŒ ããã»ã¹ãçµäºããå Žåãããã»ã¹ãèªåçã«åèµ·åããå¿ èŠããããŸã
äŒå Žã¯ ã©ã³ãã³ã° å·ã ã®XNUMXã€ã§ããå¯èœæ§ããããŸã false, äºæããªããŸã㯠trueã å Žå falseã ããã»ã¹
èªååèµ·åãããŸããã ããã äºæããªããããã»ã¹ã¯åèµ·åãããŸã
ããã°ã©ã ã¯ãããã«é¢é£ä»ããããçµäºã³ãŒãã®ãããã§ããªãçµäºã³ãŒãã§çµäºããŸã
ããã»ã¹ã®æ§æ (åç § çµäºã³ãŒãïŒ ãã trueãããã»ã¹ã¯ç¡æ¡ä»¶ã«ãªããŸã
çµäºã³ãŒãã«é¢ä¿ãªããçµäºæã«åèµ·åãããŸãã
泚:
èªååèµ·å ãã©ãããå¶åŸ¡ããŸã ã¹ãŒããŒãã€ã¶ãŒ ããã°ã©ã ãçµäºããå Žåãããã°ã©ã ãèªååèµ·åããŸã
æ£åžžã«èµ·åããåŸ (ããã»ã¹ã¯ ã©ã³ãã³ã° ç¶æ ïŒã
ã¹ãŒããŒãã€ã¶ãŒ ããã»ã¹ã®èµ·åæã«ç°ãªãåèµ·åã¡ã«ããºã ããããŸã
(ããã»ã¹ã¯ èµ·å å·ïŒã ããã»ã¹èµ·åäžã®ãªãã©ã€ã¯
ã«ãã£ãŠå¶åŸ¡ãããŸã éå§ç§ ãš éå§åè©Šè¡.
ããã©ã«ã: äºæ³å€
å¿ é ïŒãããã
å°å ¥: 3.0
çµäºã³ãŒã
ã§äœ¿çšããããã®ããã°ã©ã ã®ãäºæ³ããããçµäºã³ãŒãã®ãªã¹ã èªååèµ·åã ãã
èªååèµ·å ãã©ã¡ãŒã¿ã¯ äºæããªããããã³ããã»ã¹ã¯ãã以å€ã®æ¹æ³ã§çµäºããŸã
ã¹ãŒããŒãã€ã¶åæ¢èŠæ±ã®çµæãšããŠã ã¹ãŒããŒãã€ã¶ãŒ ãã®å Žåãããã»ã¹ãåèµ·åããŸã
ãã®ãªã¹ãã§å®çŸ©ãããŠããªãçµäºã³ãŒãã§çµäºããŸãã
ããã©ã«ã: 0,2
å¿ é ïŒãããã
å°å ¥: 3.0
åæ¢ä¿¡å·
åæ¢ãèŠæ±ããããšãã«ããã°ã©ã ã匷å¶çµäºããããã«äœ¿çšãããã·ã°ãã«ã ããã¯ãTERMã
HUPãINTãQUITãKILLãUSR1ããŸã㯠USR2ã
ããã©ã«ãïŒ åŠæ
å¿ é ïŒãããã
å°å ¥: 3.0
stopwaitsec
OS ã SIGCHILD ãè¿ãã®ãåŸ æ©ããç§æ° ã¹ãŒããŒãã€ã¶ãŒ åŸã«
ããã°ã©ã ã«åæ¢ä¿¡å·ãéä¿¡ãããŸããã ãã®ç§æ°ãçµéããåã«
ã¹ãŒããŒãã€ã¶ãŒ ããã»ã¹ãã SIGCHILD ãåãåãã ã¹ãŒããŒãã€ã¶ãŒ ããã殺ãããšããŸã
æåŸã® SIGKILL ã§ã
ããã©ã«ã: 10
å¿ é ïŒãããã
å°å ¥: 3.0
ã¹ãããã¢ã¹ã°ã«ãŒã
true ã®å Žåããã©ã°ã«ããââãã¹ãŒããŒãã€ã¶ãŒã¯åæ¢ã·ã°ãã«ãããã»ã¹ ã°ã«ãŒãå šäœã«éä¿¡ããŸãã
ãããŠæå³ãã ãã©ã¹ã°ã«ãŒã æ¬åœã§ãã ããã¯ããããã°äžã® Flask ãªã©ã®ããã°ã©ã ã«åœ¹ç«ã¡ãŸãã
ã¢ãŒãã§ã¯ãåæ¢ä¿¡å·ãåã«äŒæ¬ããããå€ç«ãããŸãŸã«ãªããŸãã
ããã©ã«ãïŒ ééã
å¿ é ïŒãããã
å°å ¥ïŒ3.0b1
ãã©ã¹ã°ã«ãŒã
true ã®å ŽåãSIGKILL ãããã°ã©ã ã«éä¿¡ããŠçµäºããå Žåããã®ããã°ã©ã ã«éä¿¡ããŸãã
代ããã«ããã»ã¹ ã°ã«ãŒãå šäœãåŠçãããã®åãåæ§ã«åŠçããŸãã
ã䜿çšãã Python ããã°ã©ã ãã«ãããã»ãã·ã³ã°.
ããã©ã«ãïŒ ééã
å¿ é ïŒãããã
å°å ¥ïŒ3.0a11
user
æ瀺ãã ã¹ãŒããŒãã€ã¶ãŒ ãã® UNIX ãŠãŒã¶ãŒ ã¢ã«ãŠã³ããã
ããã°ã©ã ã ãŠãŒã¶ãŒãåãæ¿ããããšãã§ããã®ã¯ã ã¹ãŒããŒãã€ã¶ãŒ root ãŠãŒã¶ãŒãšããŠå®è¡ãããŸãã ããã
ã¹ãŒããŒãã€ã¶ãŒ æå®ãããŠãŒã¶ãŒã«åãæ¿ããããšãã§ããªãå Žåãããã°ã©ã ã¯éå§ãããŸããã
泚:
ãŠãŒã¶ãŒã¯æ¬¡ã䜿çšããŠå€æŽãããŸã setuid ããã ãã ããã¯ãã°ã€ã³ ã·ã§ã«ãèµ·åããã
ã®ãããªç°å¢å€æ°ãå€æŽããŸãã USER or ããŒã ã èŠã
詳现ã«ã€ããŠã¯ãsubprocess_environment ãåç §ããŠãã ããã
ããã©ã«ã: ãŠãŒã¶ãŒãåãæ¿ããªãã§ãã ãã
å¿ é ïŒãããã
å°å ¥: 3.0
ãªãã€ã¬ã¯ã_stderr
true ã®å Žåãããã»ã¹ã® stderr åºåã ã«éãè¿ãããŸãã ã¹ãŒããŒãã€ã¶ãŒ ãã®æšæºåºåã§
ãã¡ã€ã«èšè¿°å (UNIX ã·ã§ã«çšèªã§ã¯ãããã¯å®è¡ã«çžåœããŸãã /ããã°ã©ã
2>ïŒ1).
泚:
èšå®ããªãã§ãã ãã redirect_stderr=true 㧠[ã€ãã³ããªã¹ããŒ:x] ã»ã¯ã·ã§ã³ã ã€ãã³ããªã¹ããŒ
ã€ãããŸã (Linuxã§èšããšããã®stdoutïŒ ãš stdin ãšéä¿¡ãã ã¹ãŒããŒãã€ã¶ãŒã å Žå stderr ãªãã€ã¬ã¯ãããã
ããã®åºå stderr eventlistener ãããã³ã«ã«å¹²æžããŸãã
ããã©ã«ãïŒ ééã
å¿ é ïŒãããã
å°å ¥: 3.0ã2.0 ã眮ãæããŸã log_stdout ãš log_stderr
stdout_logfile
ããã»ã¹ã® stdout åºåããã®ãã¡ã€ã«ã«å ¥ããŸã (ãŸããredirect_stderr ã true ã®å Žåã¯ã
ãã®ãã¡ã€ã«ã® stderr åºå)ã ããã stdout_logfile èšå®ãããŠããªãããèšå®ãããŠããŸã AUTOãç£ç£è
ãã¡ã€ã«ã®å Žæãèªåçã«éžæããŸãã ãããã«èšå®ãããŠããå Žå NONEããç£ç£è ã®æå¿
ãã°ãã¡ã€ã«ãäœæããŸããã AUTO ãã° ãã¡ã€ã«ãšãã®ããã¯ã¢ããã¯ã次ã®å Žåã«åé€ãããŸãã ã¹ãŒããŒãã€ã¶ãŒ
åèµ·åããŸãã ã® stdout_logfile å€ã«ã¯ Python æåååŒãå«ããããšãã§ããŸãã
ããŒãå«ãèŸæžã«å¯ŸããŠè©äŸ¡ããã ã°ã«ãŒãå, ãã¹ãããŒãå,
ããã»ã¹çªå·, ããã°ã©ã å, ãã¡ã (supervisord èšå®ãã¡ã€ã«ã®ãã£ã¬ã¯ããª)ã
泚:
XNUMX ã€ã®ããã»ã¹ã XNUMX ã€ã®ãã° ãã¡ã€ã«ãå ±æããããšã¯ã§ããŸãã (stdout_logfile)
å転æïŒstdout_logfile_maxbytesïŒ æå¹ã«ãªã£ãŠããŸãã ããã«ããããã¡ã€ã«
ç ŽæããŠããŸãã
ããã©ã«ã: AUTO
å¿ é ïŒãããã
å°å ¥: 3.0ã2.0 ã眮ãæããŸã ãã°ãã¡ã€ã«
stdout_logfile_maxbytes
ã«ãã£ãŠæ¶è²»ãããå¯èœæ§ã®ããæ倧ãã€ãæ° stdout_logfile å転ããåã«
(ãKBãããMBãããGBããªã©ã®æ¥å°ŸèŸä¹æ°ãå€ã«äœ¿çšã§ããŸã)ã ãããèšå®
ãã° ãµã€ãºãç¡å¶éã§ããããšã瀺ãã«ã¯ãå€ã 0 ã«èšå®ããŸãã
ããã©ã«ãïŒ50MB
å¿ é ïŒãããã
å°å ¥: 3.0ã2.0 ã眮ãæããŸã logfile_maxbytes
stdout_logfile_backups
æ° stdout_logfile ããã»ã¹ã® stdout ãã°ããçæããããä¿æããããã¯ã¢ãã
ãã¡ã€ã«ã®ããŒããŒã·ã§ã³ã 0 ã«èšå®ãããšãããã¯ã¢ããã¯ä¿æãããŸããã
ããã©ã«ã: 10
å¿ é ïŒãããã
å°å ¥: 3.0ã2.0 ã眮ãæããŸã ãã°ãã¡ã€ã«ã®ããã¯ã¢ãã
stdout_capture_maxbytes
ããã»ã¹ããstdout ãã£ãã㣠ã¢ãŒããã®å Žåã«ãã£ãã㣠FIFO ã«æžã蟌ãŸããæ倧ãã€ãæ°
(capture_mode ãåç §)ã æŽæ°ã§ãªããã°ãªããŸãã ("KB"ã"MB"ã"GB" ãªã©ã®æ¥å°ŸèŸã®ä¹æ°
å€ã§äœ¿çšã§ããŸã)ã ãã®å€ã 0 ã®å Žåãããã»ã¹ ãã£ãã㣠ã¢ãŒãã¯ãªãã«ãªããŸãã
ããã©ã«ã: 0
å¿ é ïŒãããã
å°å ¥: 3.0ã2.0 ã眮ãæããŸã ãã°ãã¡ã€ã«ã®ããã¯ã¢ãã
stdout_events_enabled
true ã®å Žåãããã»ã¹ããã®
stdout ãã¡ã€ã«èšè¿°åã ã€ãã³ãã¯ããã¡ã€ã«èšè¿°åãããã§ãªãå Žåã«ã®ã¿çºè¡ãããŸã
ããŒã¿ãåä¿¡ãããæç¹ã§ãã£ãã㣠ã¢ãŒã (capture_mode ãåç §)ã
ããã©ã«ã: 0
å¿ é ïŒãããã
å°å ¥ïŒ3.0a7
stderr_logfile
ããã»ã¹ã® stderr åºåããã®ãã¡ã€ã«ã«å ¥ããŸãã ãªãã€ã¬ã¯ã_stderr æ¬åœã§ãã åãå ¥ããŸã
ãšåãå€ã®å stdout_logfile åã Python æåååŒãå«ãŸããå ŽåããããŸãã
泚:
XNUMX ã€ã®ããã»ã¹ã XNUMX ã€ã®ãã° ãã¡ã€ã«ãå ±æããããšã¯ã§ããŸãã (stderr_logfile)
å転æïŒstderr_logfile_maxbytesïŒ æå¹ã«ãªã£ãŠããŸãã ããã«ããããã¡ã€ã«
ç ŽæããŠããŸãã
ããã©ã«ã: AUTO
å¿ é ïŒãããã
å°å ¥: 3.0
stderr_logfile_maxbytes
ã®ãã°ãã¡ã€ã« ããŒããŒã·ã§ã³åã®æ倧ãã€ãæ° stderr_logfile. åãå ¥ããŸã
ãšåãå€ã®å stdout_logfile_maxbytes.
ããã©ã«ãïŒ50MB
å¿ é ïŒãããã
å°å ¥: 3.0
stderr_logfile_backups
ããã»ã¹ stderr ãã° ãã¡ã€ã«ã®ããŒããŒã·ã§ã³ããçãããä¿æããããã¯ã¢ããã®æ°ã
0 ã«èšå®ãããšãããã¯ã¢ããã¯ä¿æãããŸããã
ããã©ã«ã: 10
å¿ é ïŒãããã
å°å ¥: 3.0
stderr_capture_maxbytes
ããã»ã¹ããstderr ãã£ãã㣠ã¢ãŒããã®å Žåã«ãã£ãã㣠FIFO ã«æžã蟌ãŸããæ倧ãã€ãæ°
(capture_mode ãåç §)ã æŽæ°ã§ãªããã°ãªããŸãã ("KB"ã"MB"ã"GB" ãªã©ã®æ¥å°ŸèŸã®ä¹æ°
å€ã§äœ¿çšã§ããŸã)ã ãã®å€ã 0 ã®å Žåãããã»ã¹ ãã£ãã㣠ã¢ãŒãã¯ãªãã«ãªããŸãã
ããã©ã«ã: 0
å¿ é ïŒãããã
å°å ¥: 3.0
stderr_events_enabled
true ã®å Žåãããã»ã¹ããã®
stderr ãã¡ã€ã«èšè¿°åã ã€ãã³ãã¯ããã¡ã€ã«èšè¿°åãããã§ãªãå Žåã«ã®ã¿çºè¡ãããŸã
ããŒã¿ãåä¿¡ãããæç¹ã§ãã£ãã㣠ã¢ãŒã (capture_mode ãåç §)ã
ããã©ã«ãïŒ ééã
å¿ é ïŒãããã
å°å ¥ïŒ3.0a7
ç°å¢
ãã©ãŒã å ã®ããŒãšå€ã®ãã¢ã®ãªã¹ã KEY="val",KEY2="val2" ã«é 眮ãããŸã
åããã»ã¹ã®ç°å¢ã ç°å¢æååã«ã¯ Python æååãå«ãŸããå ŽåããããŸã
ãå«ãèŸæžã«å¯ŸããŠè©äŸ¡ãããåŒ ã°ã«ãŒãå,
ãã¹ãããŒãå, ããã»ã¹çªå·, ããã°ã©ã å, ãã¡ã (supervisord ã®ãã£ã¬ã¯ããª
æ§æãã¡ã€ã«)ã è±æ°å以å€ã®æåãå«ãå€ã¯åŒçšç¬Šã§å²ãå¿ èŠããããŸã (äŸ:
KEY="val:123",KEY2="val,456"ïŒã ãã以å€ã®å Žåãå€ã®åŒçšã¯ãªãã·ã§ã³ã§ããã
ãå§ãããŸãã 泚æ ãµãããã»ã¹ãã®ç°å¢å€æ°ãç¶æ¿ããããš
ããã§ãªãŒããŒã©ã€ãããããã®ãé€ããŠãã·ã§ã«ã¯ãsupervisordããéå§ããããã«äœ¿çšãããŸãã èŠã
ãµãããã»ã¹ç°å¢ã
ããã©ã«ã: äœåãªç°å¢ã¯ãããŸãã
å¿ é ïŒãããã
å°å ¥: 3.0
ãã£ã¬ã¯ããªã«ãžã§ããéå§ããŸãã
ãã£ã¬ã¯ããªãè¡šããã¡ã€ã«ãã¹ ã¹ãŒããŒãã€ã¶ãŒ äžæçã« chdir ããå¿ èŠããããŸã
åäŸãåŠåããåã«ã
ããã©ã«ã: chdir ãªã (ã¹ãŒããŒãã€ã¶ãŒã®ç¶æ¿)
å¿ é ïŒãããã
å°å ¥: 3.0
umask
ããã»ã¹ã® umask ãè¡šã 002 é²æ° (äŸ: 022ãXNUMX)ã
ããã©ã«ã: ç¹å¥ãª umask ãªã (ã¹ãŒããŒãã€ã¶ãŒã®ç¶æ¿)
å¿ é ïŒãããã
å°å ¥: 3.0
ãµãŒããŒURL
ãµãããã»ã¹ ããã»ã¹ã«ç°å¢ã§æž¡ããã URL SUPERVISOR_SERVER_URL
ïŒåç §ããŠãã ãã Supervisor.childutils) ãµãããã»ã¹ãç°¡åã«éä¿¡ã§ããããã«ãã
å éš HTTP ãµãŒããŒã æäŸãããå Žåãããã¯åãæ§æãšæ§é ãæã€ã¹ãã§ã
[ã¹ãŒããŒãã€ã¶ãŒctl] ååã®ã»ã¯ã·ã§ã³ãªãã·ã§ã³ã ããã AUTO ã«èšå®ãããŠããããèšå®ãããŠããªãå Žåã
ã¹ãŒããŒãã€ã¶ãŒã¯èªåçã«ãµãŒã㌠URL ãäœæãããµãŒããŒãåªå ããŸãã
ããã¯ãã€ã³ã¿ãŒããã ãœã±ããã§ãªãã¹ã³ãããã®ããã UNIX ãã¡ã€ã³ ãœã±ããã§ãªãã¹ã³ããŸãã
ããã©ã«ãïŒèªå
å¿ é ïŒãããã
å°å ¥: 3.0
[ããã°ã©ã :x] ã»ã¯ã·ã§ã³ äŸ
ãããã°ã©ã ïŒããã
ã³ãã³ã=/ bin / cat
ããã»ã¹å=%(ããã°ã©ã å)s
numprocs=1
ãã£ã¬ã¯ããª=/ tmpã«
umask=022
åªå 床= 999
èªåéå§= true
èªååèµ·å=äºæããªã
éå§ç§ = 10
éå§è©Šè¡åæ°=3
çµäºã³ãŒã=0,2
åæ¢ä¿¡å·=TERM
åæ¢åŸ æ©ç§=10
stopasgroup=false
killasgroup=false
ãŠãŒã¶ãŒ=ã¯ãªã¹ã
redirect_stderr=false
stdout_logfile=/a/ãã¹
stdout_logfile_maxbytes=1MB
stdout_logfile_backups=10
stdout_capture_maxbytes=1MB
stdout_events_enabled=false
stderr_logfile=/a/ãã¹
stderr_logfile_maxbytes=1MB
stderr_logfile_backups=10
stderr_capture_maxbytes=1MB
stderr_events_enabled=false
ç°å¢=A="1",B="2"
ãµãŒããŒURL=èªå
[å«ã] ã»ã¯ã·ã§ã³ èšå®
ãã® ç£èŠè .conf ãã¡ã€ã«ã«ã¯ããšããååã®ã»ã¯ã·ã§ã³ãå«ãŸããå ŽåããããŸã [å«ã]. æ§æã
ãã¡ã€ã«ã«ã¯ [å«ã] ã»ã¯ã·ã§ã³ã«ã¯ããfilesããšããååã®åäžã®ããŒãå«ãŸããŠããå¿ èŠããããŸãã ã®
ãã®ããŒã®å€ã¯ãä»ã®æ§æãã¡ã€ã«ãæå®ããŸãã
æ§æã
[å«ã] ã»ã¯ã·ã§ã³ 䟡å€èŠ³
ãã¡ã€ã«
ã¹ããŒã¹ã§åºåãããäžé£ã®ãã¡ã€ã« ã°ããã åãã¡ã€ã« ã°ããã¯ã絶察ãŸãã¯çžå¯Ÿã®å ŽåããããŸãã
ãã¡ã€ã« ã°ãããçžå¯Ÿã§ããå Žåã¯ã
ãããå«ãèšå®ãã¡ã€ã«ã ãã°ãããã¯ã
Unix ã·ã§ã«ã§äœ¿çšãããèŠåã«åŸã£ãŠæå®ããããã¿ãŒã³ã ãã«ãå±éãªã
å®äºããŸãããã *, ?ãããã³ ã§è¡šãããæåç¯å² [] æ£ããäžèŽããŸãã
ã€ã³ã¯ã«ãŒã ãã¡ã€ã«ããã®ååž°çãªã€ã³ã¯ã«ãŒãã¯ãµããŒããããŠããŸããã
ããã©ã«ã: ããã©ã«ããªã (å¿ é )
å¿ é ïŒã¯ãã
å°å ¥: 3.0
[å«ã] ã»ã¯ã·ã§ã³ äŸ
[å«ã]
ãã¡ã€ã« = /an/absolute/filename.conf /an/absolute/*.conf foo.conf config??.conf
[ã°ã«ãŒã:Ã] ã»ã¯ã·ã§ã³ èšå®
ãåçš®ã®ãããã»ã¹ ã°ã«ãŒã (å¥åãããã°ã©ã ã) ã XNUMX ã€ã®ã°ã«ãŒãã«ãŸãšãããšäŸ¿å©ãªããšããããããŸãã
ã¹ãŒããŒãã€ã¶ãŒãããŠããããšããŠå¶åŸ¡ã§ããããã«ããç°çš®ãããã»ã¹ ã°ã«ãŒã
ããŸããŸãªã³ã³ãããŒã©ãŒ ã€ã³ã¿ãŒãã§ã€ã¹ã
ããã°ã©ã ã XNUMX ã€ã®åäœãšããŠæ±ãããšãã§ããããã«ã°ã«ãŒãã«é 眮ããã«ã¯ã次ã®ããã«å®çŸ©ããŸãã [ã°ã«ãŒã:Ã]
æ§æãã¡ã€ã«ã§ã ã°ã«ãŒã ããããŒå€ã¯è€åã§ãã ãšããèšèã§ã
"group" ã®çŽåŸã«ã³ãã³ãç¶ãããã®åŸã«ã°ã«ãŒãåãç¶ããŸãã ã®ããããŒå€ [ã°ã«ãŒã:ãµãŒ]
ãfooããšããååã®ã°ã«ãŒãã«ã€ããŠèª¬æããŸãã ååã¯ã¯ã©ã€ã¢ã³ã ã¢ããªã±ãŒã·ã§ã³å ã§äœ¿çšãããŸã
ãã®æ§æã®çµæãšããŠäœæãããããã»ã¹ãå¶åŸ¡ããŸãã ããã¯
äœæãšã©ãŒ ã°ã«ãŒãããã ååã®ãªãã»ã¯ã·ã§ã³ã ååã«
ã³ãã³æåãŸãã¯ãã©ã±ããæåã
[ã°ã«ãŒã:Ã]ãXNUMXã€ä»¥äžããå¿ èŠããããŸã [ããã°ã©ã :x] ããªãã®ä»ã®å Žæã®ã»ã¯ã·ã§ã³
æ§æãã¡ã€ã«ã§ãããã°ã«ãŒãã¯ããããååã§åç §ããå¿ èŠããããŸãã ããã°ã©ã ã®å€ã§ãã
ãåçš®ã®ãããã»ã¹ ã°ã«ãŒã (ããã°ã©ã ã»ã¯ã·ã§ã³ã§è¡šããã) ã
çµç±ã®ãç°çš®ãã°ã«ãŒã [ã°ã«ãŒã:Ã] ã»ã¯ã·ã§ã³ã® ããã°ã©ã è¡ãå質ãªã°ã«ãŒã
ããã°ã©ã ã»ã¯ã·ã§ã³ã¯ãå®è¡æã«ã¹ãŒããŒãã€ã¶ã«ååšããªãããšãæå³ããŸãã 代ããã«ããã¹ãŠ
åçš®ã®ã°ã«ãŒãã®ããããã«å±ããããã»ã¹ã¯ã
ç°çš®æã ããšãã°ã次ã®ã°ã«ãŒãæ§æããããšããŸãã
[ã°ã«ãŒã:ãµãŒ]
ããã°ã©ã =ããŒãããº
åªå 床= 999
äžèšãèãããšãsupervisord ã®èµ·åæã«ã ã㌠㚠ã㺠åçš®ã®ã°ã«ãŒãã¯
ååšãããã®äžã«ãã£ãããã»ã¹ã¯çŸåšã foo
ã°ã«ãŒãã
[ã°ã«ãŒã:Ã] ã»ã¯ã·ã§ã³ 䟡å€èŠ³
ããã°ã©ã
ããã°ã©ã åã®ã³ã³ãåºåããªã¹ãã ãªã¹ããããŠããããã°ã©ã ãã¡ã³ããŒã«ãªããŸã
ã°ã«ãŒãã®ã
ããã©ã«ã: ããã©ã«ããªã (å¿ é )
å¿ é ïŒã¯ãã
å°å ¥: 3.0
åªå é äœ
ã«é¡äŒŒããåªå çªå· [ããã°ã©ã :x] ã°ã«ãŒãã«å²ãåœãŠããããã©ã€ãªãªãã£å€ã
ããã©ã«ã: 999
å¿ é ïŒãããã
å°å ¥: 3.0
[ã°ã«ãŒã:Ã] ã»ã¯ã·ã§ã³ äŸ
[ã°ã«ãŒã:ãµãŒ]
ããã°ã©ã =ããŒãããº
åªå 床= 999
[fcgi-ããã°ã©ã :x] ã»ã¯ã·ã§ã³ èšå®
ã¹ãŒããŒãã€ã¶ãŒã¯ã®ã°ã«ãŒãã管çã§ããŸã é«éCGI ãã¹ãŠãåããœã±ããã§ãªãã¹ã³ããããã»ã¹ã
ãããŸã§ãFastCGI ã®å±éã®æè»æ§ã¯å¶éãããŠããŸããã å®å šãªããã»ã¹ãååŸããã«ã¯
管çãApache 㧠mod_fastcgi ã䜿çšã§ããŸãããApache ã®
æ¥ç¶ããšã« XNUMX ã€ã®ããã»ã¹ãŸãã¯ã¹ã¬ããã®éå¹ççãªåæå®è¡ã¢ãã«ã ã«å ããŠ
ããå€ãã® CPU ããã³ã¡ã¢ãª ãªãœãŒã¹ãå¿ èŠãšãããããæ¥ç¶ã¢ãã«ããšã®ããã»ã¹/ã¹ã¬ããã¯
é ããªãœãŒã¹ã«ãã£ãŠããã«é£œåç¶æ ã«ãªããä»ã®ãªãœãŒã¹ãæäŸãããªããªããŸãã ã®
lighttpd ã nginx ãªã©ã®æ°ããã€ãã³ãé§åå Web ãµãŒããŒãå©çšããããã«ã
çµã¿èŸŒã¿ã®ããã»ã¹ ãããŒãžã£ãŒãå«ããªãã§ãã ãããcgi-fcgi ãªã©ã®ã¹ã¯ãªããã䜿çšããå¿ èŠããããŸããã
ã¹ããŒã³-fcgiã ãããã¯ãsupervisord ãªã©ã®ããã»ã¹ ãããŒãžã£ãŒãšçµã¿åãããŠäœ¿çšââã§ããŸãã
ãŸã㯠daemontools ã§ãããå FastCGI åããã»ã¹ãç¬èªã®ãœã±ããã«ãã€ã³ãããå¿ èŠããããŸãã ã®
ããã®æ¬ ç¹ã¯æ¬¡ã®ãšããã§ã: äžå¿ èŠã«è€é㪠Web ãµãŒããŒæ§æãèŠèŠãã
åèµ·åããèé害æ§ãäœäžããŸãã æ§æãããœã±ãããå°ãªããWeb ãµãŒããŒ
FastCGI ããã»ã¹ã®ã°ã«ãŒãããœã±ãããå ±æã§ããå Žåãæ§æã¯ã¯ããã«å°ãããªããŸãã å ±æ
ãœã±ããã¯èŠªããã»ã¹ã«ãã£ãŠãã€ã³ãããããŸãŸã§ããããããœã±ããã¯æ£åžžãªåèµ·åãå¯èœã«ããŸã
åããã»ã¹ã®ãããããåèµ·åãããŠããéã æåŸã«ãå ±æãœã±ããã¯ããã«
ç¹å®ã®ããã»ã¹ã倱æããå Žåãä»ã®ããã»ã¹ããµãŒãã¹ãç¶ç¶ã§ããããããã©ãŒã«ã ãã¬ã©ã³ã
ã€ã³ããŠã³ãæ¥ç¶ã
çµ±åããã FastCGI ã¹ããŒã³ ãµããŒãã«ãããSupervisor ã¯äž¡æ¹ã®é·æãæäŸããŸãã
ãœã±ãããå ±æãã FastCGI ããã»ã¹ã®ã°ã«ãŒãã䜿çšããŠããã«æ©èœã®ããã»ã¹ç®¡çãå®çŸããŸãã
ç¹å®ã® Web ãµãŒããŒã«çžãããããšãªãã ããã¯ãæžå¿µäºé ã®æ確ãªåé¢ã§ãã
ããã«ãããWeb ãµãŒããŒãšããã»ã¹ ãããŒãžã£ãŒãããããã®ãã¹ããå°œãããããã«ãªããŸãã
泚:
Supervisor ã®ãœã±ãã ãããŒãžã£ã¯ãããšããš FastCGI ããã»ã¹ããµããŒãããããã«éçºãããŸããã
ãã ããFastCGI ã«éå®ãããŸããã ä»ã®ãããã³ã«ãç¹å¥ãªãã®ãªãã§äœ¿çšã§ããŸã
æ§æã ãã¡ã€ã«èšè¿°åããéããŠãããœã±ããã«ã¢ã¯ã»ã¹ã§ããããã°ã©ã (äŸ:
ã ãœã±ãã.fromfd Python ã§ã¯) ãœã±ãã ãããŒãžã£ã䜿çšã§ããŸãã ã¹ãŒããŒãã€ã¶ãŒã¯
æåã®åã fork ããåã«ããœã±ãããèªåçã«äœæãããã€ã³ããããªãã¹ã³ããŸãã
ã°ã«ãŒãã ãœã±ããã¯ããã¡ã€ã«èšè¿°åçªå·ã®ååã«æž¡ãããŸã 0 ïŒãŒãïŒã
ã°ã«ãŒãå ã®æåŸã®åãçµäºãããšãSupervisor ã¯ãœã±ãããéããŸãã
å©çšå¯èœãªãã¹ãŠã®ãªãã·ã§ã³ [ããã°ã©ã :x] ã»ã¯ã·ã§ã³ãå°éãããŸã fcgi-ããã°ã©ã
ã»ã¯ã·ã§ã³ã
[fcgi-ããã°ã©ã :x] ã»ã¯ã·ã§ã³ 䟡å€èŠ³
[fcgi-ããã°ã©ã :x] ã»ã¯ã·ã§ã³ã«ã¯åäžã®ããŒãããã [ããã°ã©ã :x] ã»ã¯ã·ã§ã³ã«ã¯ãããŸããã
ãœã±ãã
ãã®ããã°ã©ã ã® FastCGI ãœã±ãã (TCP ãŸã㯠UNIX ãã¡ã€ã³ ãœã±ãã)ã TCP ãœã±ããã®å Žåã
次ã®åœ¢åŒã䜿çšããŸãã tcp://ããŒã«ã«ãã¹ã:9002. UNIX ãã¡ã€ã³ ãœã±ããã®å Žåã¯ã次ã䜿çšããŸãã
unix:///absolute/path/to/file.sock. æåååŒã¯ã
ã㌠"program_name" ãš "here" ãå«ãèŸæž (ãã¡ã€ã«ã®ãã£ã¬ã¯ããª
Supervisord æ§æãã¡ã€ã«)ã
ããã©ã«ã: ããã©ã«ããªãã
å¿ é ïŒã¯ãã
å°å ¥: 3.0
ãœã±ããææè
UNIX ãã¡ã€ã³ ãœã±ããã®å Žåããã®ãã©ã¡ãŒã¿ãŒã䜿çšããŠããŠãŒã¶ãŒãšã°ã«ãŒããæå®ã§ããŸãã
FastCGI ãœã±ããã UNIX ãŠãŒã¶ãŒå (äŸ: chrism) ãŸã㯠UNIX ãŠãŒã¶ãŒåãšã°ã«ãŒãã®å¯èœæ§ããããŸãã
ã³ãã³ã§åºåããŸã (äŸ: chrism:wheel)ã
ããã©ã«ã: fcgi-program ã«èšå®ããããŠãŒã¶ãŒãšã°ã«ãŒãã䜿çšããŸã
å¿ é ïŒãããã
å°å ¥: 3.0
ãœã±ããã¢ãŒã
UNIX ãã¡ã€ã³ ãœã±ããã®å Žåããã®ãã©ã¡ãŒã¿ã䜿çšããŠèš±å¯ã¢ãŒããæå®ã§ããŸãã
ããã©ã«ã: 0700
å¿ é ïŒãããã
å°å ¥: 3.0
çžè«ãã [ããã°ã©ã :x] ã»ã¯ã·ã§ã³ èšå® ä»ã®èš±å®¹ãããããŒã«ã€ããŠã¯ãäžèšã®å¶çŽããã«ã¿ããŸã
ãšè¿œå ã
[fcgi-ããã°ã©ã :x] ã»ã¯ã·ã§ã³ äŸ
[fcgi-ããã°ã©ã :fcgiããã°ã©ã å]
ã³ãã³ã=/usr/bin/example.fcgi
ãœã±ãã=unix:///var/run/supervisor/%(ããã°ã©ã å)s.sock
socket_owner=ã¯ãªã¹ã
ãœã±ããã¢ãŒã=0700
ããã»ã¹å=%(ããã°ã©ã å)s_%(ããã»ã¹çªå·)02d
numprocs=5
ãã£ã¬ã¯ããª=/ tmpã«
umask=022
åªå 床= 999
èªåéå§= true
èªååèµ·å=äºæããªã
éå§ç§ = 1
éå§è©Šè¡åæ°=3
çµäºã³ãŒã=0,2
åæ¢ä¿¡å·=QUIT
stopasgroup=false
killasgroup=false
åæ¢åŸ æ©ç§=10
ãŠãŒã¶ãŒ=ã¯ãªã¹ã
redirect_stderr=true
stdout_logfile=/a/ãã¹
stdout_logfile_maxbytes=1MB
stdout_logfile_backups=10
stdout_events_enabled=false
stderr_logfile=/a/ãã¹
stderr_logfile_maxbytes=1MB
stderr_logfile_backups=10
stderr_events_enabled=false
ç°å¢=A="1",B="2"
ãµãŒããŒURL=èªå
[ã€ãã³ããªã¹ããŒ:x] ã»ã¯ã·ã§ã³ èšå®
Supervisor ã«ãããç¹æ®ãªåçš®ããã»ã¹ ã°ã«ãŒã (ãã€ãã³ã ãªã¹ã㌠ããŒã«ã) ã
æ§æãã¡ã€ã«å ã§å®çŸ©ãããŠããŸãã ãããã®ããŒã«ã«ã¯ã次ã®ããšãæå³ããããã»ã¹ãå«ãŸããŠããŸãã
ã¹ãŒããŒãã€ã¶ã®ã€ãã³ã ã·ã¹ãã ããã®ã€ãã³ãéç¥ãåä¿¡ããŠââå¿çããŸãã ã®ã€ãã³ããèŠã
ã€ãã³ããã©ã®ããã«æ©èœããããããã³æ¬¡ã®ããã«å®£èšã§ããããã°ã©ã ãå®è£ ããæ¹æ³ã®èª¬æ
ã€ãã³ããªã¹ããŒã
å©çšå¯èœãªãã¹ãŠã®ãªãã·ã§ã³ã«æ³šæããŠãã ãã [ããã°ã©ã :x] ã»ã¯ã·ã§ã³ã¯ eventlistener ã«ãã£ãŠå°éãããŸã
ã»ã¯ã·ã§ã³ 以äžã¯é€ã for stdout_capture_maxbytes ãš stderr_capture_maxbytes (ã€ãã³ããªã¹ããŒ
ããã»ã¹éä¿¡ã€ãã³ããçºè¡ã§ããŸãããcapture_mode ãåç §ããŠãã ãã)ã
[ã€ãã³ããªã¹ããŒ:x] ã»ã¯ã·ã§ã³ 䟡å€èŠ³
[ã€ãã³ããªã¹ããŒ:x] ã»ã¯ã·ã§ã³ã«ã¯ããã€ãã®ããŒããããŸã [ããã°ã©ã :x] ã»ã¯ã·ã§ã³ã«ã¯ãããŸããã
ãããã¡ãµã€ãº
ã€ãã³ã ãªã¹ã㌠ããŒã«ã®ã€ãã³ã ãã¥ãŒã®ãããã¡ãŒ ãµã€ãºã ãªã¹ã㌠ããŒã«ã®ã€ãã³ã ãããã¡
ãªãŒããŒãããŒããŸã (ã€ãã³ã ãªã¹ã㌠ããŒã«ããã¹ãŠã®
éä¿¡ãããã€ãã³ã)ããããã¡ãŒå ã®æãå€ãã€ãã³ããç Žæ£ãããŸãã
ã€ãã³ã
ãã®ãªã¹ããŒããé¢å¿ã®ãããã€ãã³ã ã¿ã€ãåã®ã³ã³ãåºåããªã¹ã
ã®éç¥ãåä¿¡ããŸã (æå¹ãªã€ãã³ã ã¿ã€ãåã®ãªã¹ãã«ã€ããŠã¯ãevent_types ãåç §ããŠãã ãã)ã
çµæãã³ãã©ãŒ
A pkg_resources ãšã³ã㪠ãã€ã³ã string Python callable ã«è§£æ±ºãããŸãã ããã©ã«ã
å€ã¯ Supervisor.dispatchers:default_handler. 代æ¿çµæã®æå®
ãã³ãã©ãŒãäœæããå¿ èŠãããã®ã¯éåžžã«ãŸããªããšã§ããããã®çµæãäœææ¹æ³ã¯æ¬¡ã®ããã«ãªããŸãã
ææžåãããŠããŸããã
çžè«ãã [ããã°ã©ã :x] ã»ã¯ã·ã§ã³ èšå® ä»ã®èš±å®¹ãããããŒã«ã€ããŠã¯ãäžèšã®å¶çŽããã«ã¿ããŸã
ãšè¿œå ã
[ã€ãã³ããªã¹ããŒ:x] ã»ã¯ã·ã§ã³ äŸ
[ã€ãã³ããªã¹ããŒ:ã€ãã³ããªã¹ããŒå]
command=/bin/ã€ãã³ããªã¹ããŒ
ããã»ã¹å=%(ããã°ã©ã å)s_%(ããã»ã¹çªå·)02d
numprocs=5
ã€ãã³ã=PROCESS_STATE
ãããã¡ãµã€ãº=10
ãã£ã¬ã¯ããª=/ tmpã«
umask=022
åªå 床=-1
èªåéå§= true
èªååèµ·å=äºæããªã
éå§ç§ = 1
éå§è©Šè¡åæ°=3
çµäºã³ãŒã=0,2
åæ¢ä¿¡å·=QUIT
åæ¢åŸ æ©ç§=10
stopasgroup=false
killasgroup=false
ãŠãŒã¶ãŒ=ã¯ãªã¹ã
redirect_stderr=false
stdout_logfile=/a/ãã¹
stdout_logfile_maxbytes=1MB
stdout_logfile_backups=10
stdout_events_enabled=false
stderr_logfile=/a/ãã¹
stderr_logfile_maxbytes=1MB
stderr_logfile_backups=10
stderr_events_enabled=false
ç°å¢=A="1",B="2"
ãµãŒããŒURL=èªå
[rpcã€ã³ã¿ãŒãã§ãŒã¹:x] ã»ã¯ã·ã§ã³ èšå®
è¿œå rpcã€ã³ã¿ãŒãã§ãŒã¹:x æ§æãã¡ã€ã«ã®èšå®ã¯ã次ã®äººã«ã®ã¿åœ¹ç«ã¡ãŸã
è¿œå ã®ã«ã¹ã¿ã åäœã§ã¹ãŒããŒãã€ã¶ãŒãæ¡åŒµãããã
ãµã³ãã«æ§æãã¡ã€ã«ã«ã¯ã次ã®ååã®ã»ã¯ã·ã§ã³ããããŸãã [rpcã€ã³ã¿ãŒãã§ãŒã¹:ã¹ãŒããŒãã€ã¶ãŒ].
ããã©ã«ãã§ã¯ã次ã®ããã«ãªããŸãã
[rpcã€ã³ã¿ãŒãã§ãŒã¹:ã¹ãŒããŒãã€ã¶ãŒ]
ã¹ãŒããŒãã€ã¶ãŒ.rpcinterface_factory = ã¹ãŒããŒãã€ã¶ãŒ.rpcinterface:make_main_rpcinterface
ãã® [rpcã€ã³ã¿ãŒãã§ãŒã¹:ã¹ãŒããŒãã€ã¶ãŒ] ããªããã°ãªããŸãã æšæºã®æ§æã«ãšã©ãŸã
ã¹ãŒããŒãã€ã¶ãŒãé©åã«åäœããããã«ã»ããã¢ããããŸãã ã¹ãŒããŒãã€ã¶ãŒã«äœãããŠã»ãããªãå Žåã¯ã
ããã«äœ¿ããããã§ã¯ãããŸããããã®ã¿ã€ãã®
ã®ã»ã¯ã·ã§ã³ããç¡æã§ããŠã³ããŒãã§ããŸãã
ãã ããã¹ãŒããŒãã€ã¶ãŒãã«ã¹ã¿ãã€ãºããããã« rpc ã€ã³ã¿ãŒãã§ãŒã¹ã®åå空éãè¿œå ãããå Žåã¯ã
è¿œå ãããããããŸãã [rpcinterface:foo] ããã§ããfooãã¯åå空éãè¡šããŸã
ã€ã³ã¿ãŒãã§ã€ã¹ (Web ã«ãŒããã)ãããã³ã«ãã£ãŠååãä»ããããå€ Supervisor.rpcinterface_factory
åäžãåãå ¥ããé¢æ°ã·ã°ããã£ãæã€å¿ èŠããããã¡ã¯ããªåŒã³åºãå¯èœã§ã
äœçœ®åŒæ° ã¹ãŒããŒãã€ã¶ãŒ ããã³å®è¡ã«å¿ èŠãªæ°ã®ããŒã¯ãŒãåŒæ°
æ§æã å ã§å®çŸ©ãããè¿œå ã®ããŒãšå€ã®ã㢠[rpcã€ã³ã¿ãŒãã§ãŒã¹:x] ã»ã¯ã·ã§ã³ã¯
ãã¡ã¯ããªã«ããŒã¯ãŒãåŒæ°ãšããŠæž¡ãããŸãã
ã§äœæããããã¡ã¯ããªé¢æ°ã®äŸã次ã«ç€ºããŸãã __init__ãpy Python ã®ãã¡ã€ã«
ããã±ãŒãž ç§ã®ããã±ãŒãž.
my.package.rpcinterface ãã AnotherRPCInterface ãã€ã³ããŒã
def make_another_rpcinterface (supervisordã**æ§æ):
åè©Šè¡ = int(config.get('åè©Šè¡', 0))
another_rpc_interface = AnotherRPCInterface(supervisordãåè©Šè¡)
another_rpc_interface ãè¿ã
ãããŠããããæ§æããããã®æ§æãã¡ã€ã«ã®ã»ã¯ã·ã§ã³ã
[rpcinterface:å¥ã®]
Supervisor.rpcinterface_factory = my.package:make_another_rpcinterface
åè©Šè¡ = 1
[rpcã€ã³ã¿ãŒãã§ãŒã¹:x] ã»ã¯ã·ã§ã³ 䟡å€èŠ³
Supervisor.rpcinterface_factory
pkg_resources RPC ã€ã³ã¿ãŒãã§ã€ã¹ã®ãã¡ã¯ããªé¢æ°ãžã®ããšã³ã㪠ãã€ã³ãããããåã
ããã©ã«ãïŒN / A
å¿ é ïŒãããã
å°å ¥: 3.0
[rpcã€ã³ã¿ãŒãã§ãŒã¹:x] ã»ã¯ã·ã§ã³ äŸ
[rpcinterface:å¥ã®]
Supervisor.rpcinterface_factory = my.package:make_another_rpcinterface
åè©Šè¡ = 1
çšèªè§£èª¬
ããŒã¢ã³ããŒã«
A ããã»ã¹ ã³ã³ãããŒã« ã by DJ ããŒã³ã¹ã¿ã€ã³.
æã¡äžã
A ããã»ã¹ ã³ã³ãããŒã« ã äžå€ by Apple Mac OS X ã§ã¯ããã»ã¹ 1 ãšããŠã
ãããå®è¡ããŸã A ããã»ã¹ ã³ã³ãããŒã« ã.
ã¹ãŒããŒã©ã³ã¹
ã«ãã©ã°ã€ã³ããããŸããŸãªã€ãã³ã ãªã¹ããŒå®è£ ãæäŸããããã±ãŒãž
ããã»ã¹ ã¡ã¢ãªã®äœ¿çšç¶æ³ãšã¯ã©ãã·ã¥ ã¹ããŒã¿ã¹ã®ç£èŠã«åœ¹ç«ã€ã¹ãŒããŒãã€ã¶:
http://pypi.python.org/pypi/superlance.
umask ã®ç¥èª user mask: çŸåšã®ããã»ã¹ã®ãã¡ã€ã« ã¢ãŒãäœæãã¹ã¯ãèšå®ããŸãã
èŠã http://en.wikipedia.org/wiki/Umask.
onworks.net ãµãŒãã¹ã䜿çšããŠãªã³ã©ã€ã³ã§ echo_supervisord_conf ã䜿çšãã