मैं पृष्ठभूमि कार्यों को प्रबंधित करने के लिए अपने Django ऐप (लोचदार बीनस्टॉक पर) में खरगोश एमक्यू के साथ सेलेरी का उपयोग करता हूं और मैंने सुपरवाइजर का उपयोग करके इसे डिमोनिज्ड किया।सेलेरी: वर्कर लॉस्ट एरर: वर्कर समय से बाहर निकल गया: सिग्नल 9 (सिगकिल)
[01/Apr/2014 23:04:03] [ERROR] [celery.worker.job:272] Task clean-dead-sessions[1bfb5a0a-7914-4623-8b5b-35fc68443d2e] raised unexpected: WorkerLostError('Worker exited prematurely: signal 9 (SIGKILL).',)
Traceback (most recent call last):
File "/opt/python/run/venv/lib/python2.7/site-packages/billiard/pool.py", line 1168, in mark_as_worker_lost
human_status(exitcode)),
WorkerLostError: Worker exited prematurely: signal 9 (SIGKILL).
सभी प्रक्रियाओं पर्यवेक्षक द्वारा प्रबंधित कर रहे हैं: समस्या अब, उस अवधि के काम है कि मैं परिभाषित विफल हो रहा है (के बाद एक सप्ताह है, जिसमें यह ठीक से काम किया) में से एक है, त्रुटि मुझे मिल गया है है है ऊपर और ठीक से चल रहा है (supervisorctl status
रनिंग कहते हैं)।
मैंने अपने ec2 इंस्टेंस पर कई लॉग पढ़ने की कोशिश की लेकिन सिगकिल का कारण क्या है यह जानने में कोई भी मेरी मदद करने में प्रतीत नहीं होता है। मुझे क्या करना चाहिए? मैं कैसे जांच कर सकता हूं?
ये मेरी अजवाइन सेटिंग्स हैं:
[program:celery_worker]
environment=$env_variables
directory=/opt/python/current/app
command=/opt/python/run/venv/bin/celery worker -A com.cygora -l info --pidfile=/opt/python/run/celery_worker.pid
startsecs=10
stopwaitsecs=60
stopasgroup=true
killasgroup=true
autostart=true
autorestart=true
stdout_logfile=/opt/python/log/celery_worker.stdout.log
stdout_logfile_maxbytes=5MB
stdout_logfile_backups=10
stderr_logfile=/opt/python/log/celery_worker.stderr.log
stderr_logfile_maxbytes=5MB
stderr_logfile_backups=10
numprocs=1
[program:celery_beat]
environment=$env_variables
directory=/opt/python/current/app
command=/opt/python/run/venv/bin/celery beat -A com.cygora -l info --pidfile=/opt/python/run/celery_beat.pid --schedule=/opt/python/run/celery_beat_schedule
startsecs=10
stopwaitsecs=300
stopasgroup=true
killasgroup=true
autostart=false
autorestart=true
stdout_logfile=/opt/python/log/celery_beat.stdout.log
stdout_logfile_maxbytes=5MB
stdout_logfile_backups=10
stderr_logfile=/opt/python/log/celery_beat.stderr.log
stderr_logfile_maxbytes=5MB
stderr_logfile_backups=10
numprocs=1
संपादित करें:
CELERY_TIMEZONE = 'UTC'
CELERY_TASK_SERIALIZER = 'json'
CELERY_ACCEPT_CONTENT = ['json']
BROKER_URL = os.environ['RABBITMQ_URL']
CELERY_IGNORE_RESULT = True
CELERY_DISABLE_RATE_LIMITS = False
CELERYD_HIJACK_ROOT_LOGGER = False
एक यह मेरा supervisord.conf है के बाद पुन: प्रारंभ अजवाइन हरा समस्या बनी हुई है :(
2 संपादित करें: killasgroup = true को killasgroup = false में बदल दिया और समस्या बनी हुई है
आप सही हैं "अजवाइन ओम-किलर का आह्वान किया गया है: gfp_mask = 0x201da, order = 0, oom_adj = 0, oom_score_adj = 0" ... अब मुझे यह पता होना है कि ऐसा क्यों होता है, क्योंकि पहले यह अपेक्षा के अनुसार चल रहा था: पी आपका बहुत बहुत धन्यवाद! – daveoncode
@ डेवोनकोड मुझे लगता है कि लुईस कैरोल ने एक बार लिखा था, "" मेरे बेटे, ओम-किलर से सावधान रहें! जबड़े काटने वाले पंजा, " –
मेरे उबंटू बॉक्स पर चेक करने के लिए लॉग '/ var/log/kern.log' है,'/var/log/messages' –