मैं Celery का उपयोग एसिंक्रोनस कार्यों को प्रबंधित करने के लिए कर रहा हूं। कभी-कभी, हालांकि, अजवाइन की प्रक्रिया नीचे जाती है जिससे किसी भी कार्य को निष्पादित नहीं किया जाता है। मैं अजवाइन की स्थिति की जांच करने में सक्षम होना चाहता हूं और यह सुनिश्चित करना चाहता हूं कि सब कुछ ठीक काम कर रहा है, और यदि मुझे कोई समस्या आती है तो उपयोगकर्ता को एक त्रुटि संदेश प्रदर्शित होता है। सेलेरी वर्कर प्रलेखन से ऐसा लगता है कि मैं इसके लिए ping या inspect का उपयोग करने में सक्षम हो सकता हूं, लेकिन पिंग हैकी महसूस करता है और यह स्पष्ट नहीं है कि निरीक्षण का उपयोग कैसे किया जाता है (यदि निरीक्षण()। पंजीकृत() खाली है?)।पता लगाएं कि सेलेरी उपलब्ध है/चल रहा है
इस पर कोई मार्गदर्शन की सराहना की जाएगी।
def celery_is_alive():
from celery.task.control import inspect
return bool(inspect().registered()) # is this right??
संपादित करें: मूल रूप से मैं क्या तलाश कर रहा हूँ तो जैसे एक तरीका है यह भी() पंजीकृत की तरह नहीं दिखता अजवाइन 2.3.3 (भले ही 2.1 डॉक्स यह सूची) पर उपलब्ध है। शायद पिंग सही जवाब है।
संपादित करें: पिंग भी ऐसा नहीं लगता है जो मैंने सोचा था कि ऐसा होगा, इसलिए अभी भी इसका उत्तर सुनिश्चित न करें।
नहीं नीचे इस सवाल का जवाब आप के लिए काम किया? किसी ऐसे व्यक्ति के रूप में जिसने हल करने के लिए एक ही समस्या है, मुझे कुछ पुष्टि पसंद आएगी। – kojiro