supervisor 报错被折腾了一整天了

2016-12-07 23:45:07 +08:00
 SlipStupig

supervisord 老是报错: app: ERROR (no such process),不知道是怎么回事,我的 app 配置文件如下:

 
[program:app]
command=/bin/env pypy --jit vec=1 ~/myhome/app.py -g min -p 1024
directory=/myhome/user/app/
autostart=true
redirect_stderr=false
user=ubuntu           

9736 次点击
所在节点    Python
12 条回复
ooxxcc
2016-12-08 00:14:27 +08:00
把~换成绝对地址试试?

去掉 redirect_stderr=false ,然后看一下 supervisorctl tail app 和 supervisorctl tail app stderr 试试?
sylecn
2016-12-08 00:41:12 +08:00
debian 系我记得 env 的路径是 /use/bin/env 吧。
而且既然是服务的配置文件,直接写 pypy 的完整路径比较好。
sylecn
2016-12-08 00:42:22 +08:00
手机打字错掉了 坑爹的自动拼写纠正。
/usr/bin/env
SlipStupig
2016-12-08 01:51:36 +08:00
@ooxxcc
@sylecn 我试一试
SlipStupig
2016-12-08 02:00:38 +08:00
@sylecn 还是一样,那个 supervisor 我配置文件放在"/etc/supervisor/conf.d/"里面不只有有没影响
xiuc001
2016-12-08 05:39:13 +08:00
supervisor 管控的是自己的子进程,如果你是手动起的进程,他控制不了,你得把手动启动的进程杀了,再用 supervisor 启动你的进程。林外 supervisor 执行的命令不能是守护进程;就这两点注意就行。
ldehai
2016-12-08 08:34:06 +08:00
@SlipStupig 我是把配置文件放在项目目录底下的

![]( )
sujin190
2016-12-08 09:25:35 +08:00
问个话题无关的, --jit vec=1 这个参数的作用是? pypy 似乎有很多参数,一直不知道有什么用
bwangel
2016-12-08 09:29:32 +08:00
你先手动运行一下 /bin/env pypy --jit vec=1 ~/myhome/app.py -g min -p 1024 这条命令,看一下是不是在后台运行的。我以前遇到过这种问题是因为程序在后台运行的, supervisor 就会认为它没有启动,不断地重启它。
ooxxcc
2016-12-08 09:55:59 +08:00
还有试一下 sudo -u ubuntu "/bin/env pypy --jit vec=1 ~/myhome/app.py -g min -p 1024"

把~展开成绝对路径
SlipStupig
2016-12-08 10:33:39 +08:00
@sujin190 使用寄存器优化, X86 使用 SSE MMX 寄存器
SlipStupig
2016-12-08 10:37:25 +08:00
@bwangel 感谢,终于成功了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/326059

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX