समस्या का विवरण - ग्लू जॉब मौजूद है या नहीं, यह जांचने के लिए पायथन में boto3 लाइब्रेरी का उपयोग करें। उदाहरण के लिए, जांचें कि क्या run_s3_file_job एडब्ल्यूएस गोंद में मौजूद है या नहीं।
इस समस्या को हल करने के लिए दृष्टिकोण/एल्गोरिदम
चरण 1 - अपवादों को संभालने के लिए boto3 और botocore अपवाद आयात करें।
चरण 2 -job_name फ़ंक्शन में पैरामीटर है।
चरण 3 - boto3 लाइब्रेरी का उपयोग करके AWS सत्र बनाएं। सुनिश्चित करें कि क्षेत्र_नाम डिफ़ॉल्ट प्रोफ़ाइल में उल्लेख किया गया है। यदि इसका उल्लेख नहीं है, तो स्पष्ट रूप से क्षेत्र_नाम . पास करें सत्र बनाते समय।
चरण 4 - गोंद के लिए AWS क्लाइंट बनाएं।
चरण 5 - अब get_job . का उपयोग करें कार्य करें और नौकरी का नाम . पास करें ।
चरण 6 -यदि कार्य मौजूद है, तो प्रतिक्रिया में कार्य के बारे में सभी विवरण होंगे, अन्यथा यह एक अपवाद होगा।
चरण 7 - कार्य की जाँच करते समय कुछ गलत होने पर सामान्य अपवाद को संभालें।
उदाहरण
ग्लू जॉब मौजूद है या नहीं यह जांचने के लिए निम्न कोड का उपयोग करें -
boto3 से आयात करें। अपवाद आयात ClientErrordef check_glue_job_exists (job_name):सत्र =boto3.session.Session() गोंद_क्लाइंट =सत्र। क्लाइंट ('गोंद') कोशिश करें:प्रतिक्रिया =गोंद_क्लाइंट। गेट_जॉब (जॉबनाम =जॉब_नाम) क्लाइंट एरर को छोड़कर प्रतिक्रिया ई के रूप में:अपवाद बढ़ाएं ("चेक_ग्लू_जॉब_एक्सिस्ट में boto3 क्लाइंट त्रुटि:" + ई.__str__ ()) अपवाद को छोड़कर ई:अपवाद बढ़ाएं ("चेक_ग्लू_जॉब_एक्सिस्ट्स में अप्रत्याशित त्रुटि:" + ई.__str__ ()) # मौजूदा जॉबप्रिंट की जांच करने के लिए (चेक_ग्लू_जॉब_एक्सिस्ट्स) ("run_s3_file_job"))#Job मौजूद नहीं हैप्रिंट(check_glue_job_exists("run_s3_file_job_not_exist"))
आउटपुट
#मौजूदा नौकरी की जांच करने के लिए{'नौकरी':{'नाम':'run_s3_file_job', 'विवरण':'परीक्षण के लिए गोंद नौकरी', 'भूमिका':'arn:aws:iam::12345:role/delegated /गोंद-सेवा-भूमिका', 'बनाया गया':datetime.datetime(2021, 02, 10, 15, 7, 3, 638000,tzinfo=tzlocal()), 'LastModifiedOn':datetime.datetime(2021, 02, 10 , 15,7, 3, 638000, tzinfo=tzlocal ()), 'निष्पादनप्रॉपर्टी':{'MaxConcurrentRuns':1}, 'कमांड':{'नाम':'ग्लूएटल', 'स्क्रिप्ट स्थान':'s3:// test/pipeline.py', 'PythonVersion':'3'},'DefaultArguments':{ '--job-language':'python', 'Step':'0'},'MaxRetries':0, 'AllocatedCapacity' ':4, 'टाइमआउट':2880, 'MaxCapacity':4.0, 'वर्कर टाइप':'G.1X', 'नंबरऑफवर्कर्स':4, 'ग्लूवर्सन':'2.0'}, 'ResponseMetadata':{'RequestId':'e3ec9e2c-e75d-4443-bfeafef674fff7e9', 'HTTPStatusCode':200, 'HTTPHeaders':{'तारीख':'शनि, 13 फरवरी 2021 13:20:27 GMT', 'सामग्री-प्रकार':'एप्लिकेशन/x-amz -json-1.1', 'content-length':'1501', 'connection':'keep-alive', 'x-amznrequestid':'e3ec9e2c-e75d-4443-bfea-fef674fff7e9'}, 'RetryAtem' pts':0}}#Job मौजूद नहीं है।