supervisord python脚本:退出状态1;不期望循环
发布时间:2020-12-13 23:25:19 所属栏目:Linux 来源:网络整理
导读:我正在尝试使用supervisord运行以下 python代码,但它开始重新启动第二个我执行supervisord -c /etc/supervisord.conf 请指教? import urllib2import timedef goget(): url = "http://hitch.tv/grabs.php" data = urllib2.urlopen(url) grabbedpic = data.re
我正在尝试使用supervisord运行以下
python代码,但它开始重新启动第二个我执行supervisord -c /etc/supervisord.conf
请指教? import urllib2 import time def goget(): url = "http://hitch.tv/grabs.php" data = urllib2.urlopen(url) grabbedpic = data.read() with open('/root/python/tmp.txt','r') as tmpfile: last=tmpfile.read().replace('n','') msgstr = [] u = 'http://hitch.tv/' print last if grabbedpic == last: print "same pic" else: msgstr = u + grabbedpic //send email with msgstr here with open('tmp.txt','w') as tmpfile: tmpfile.write(grabbedpic) time.sleep(15) while True: goget() 这是supervisord.log的日志输出 > 2014-02-19 22:44:17,993 INFO spawned: 'front' with pid 19859 > 2014-02-19 22:44:19,278 INFO exited: front (exit status 1; not > expected) 2014-02-19 22:44:20,284 INFO spawned: 'front' with pid 19860 > 2014-02-19 22:44:21,516 INFO exited: front (exit status 1; not > expected) 2014-02-19 22:44:23,523 INFO spawned: 'front' with pid 19862 > 2014-02-19 22:44:24,805 INFO exited: front (exit status 1; not > expected) 2014-02-19 22:44:27,814 INFO spawned: 'front' with pid 19863 > 2014-02-19 22:44:29,004 INFO exited: front (exit status 1; not > expected) 2014-02-19 22:44:30,006 INFO gave up: front entered FATAL > state,too many start retries too quickly 来自supervisord.conf [program:front] command=python /root/python/front.py process_name = front autostart = true autorestart = true startsecs = 10 stopwaitsecs = 30 解决方法
作为评论中提到的eggonlegs,您可以通过检查/ var / log / supervisor /目录来探索更多日志.我有同样的问题,我发现创建了以下文件:
celery_worker-stderr---supervisor-DEjyLf.log (作为我的程序的名称[程序:前面]). 通过检查,我发现: File "/usr/lib/python3.4/logging/__init__.py",line 1006,in __init__ StreamHandler.__init__(self,self._open()) File "/usr/lib/python3.4/logging/__init__.py",line 1030,in _open return open(self.baseFilename,self.mode,encoding=self.encoding) PermissionError: [Errno 13] Permission denied: '/devel.log' 所以我的问题是由于权限,因为我没有在celery_worker.conf文件中指定目录.一旦指定: directory = /path/to/logs/ 一切都很完美. 它可能不是同一个错误,但绝对检查这些stderr或stdout日志将有所帮助 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |