आइए देखें कि उपयोगकर्ता AWS Glue डेटा कैटलॉग से ट्रिगर का विवरण कैसे प्राप्त कर सकता है।
उदाहरण
आपके खाते में अनुमत दिए गए ट्रिगर का विवरण प्राप्त करें - '01_PythonShellTest1'।
इस समस्या को हल करने के लिए दृष्टिकोण/एल्गोरिदम
चरण 1: अपवादों को संभालने के लिए boto3 और botocore अपवाद आयात करें।
चरण 2: trigger_name इस फ़ंक्शन के लिए आवश्यक पैरामीटर है। यह उपयोगकर्ता खाते के लिए दिए गए ट्रिगर का विवरण प्राप्त करेगा और फिर उसका मेटाडेटा प्रदर्शित करेगा।
चरण 3: boto3 लाइब्रेरी का उपयोग करके AWS सत्र बनाएं। सुनिश्चित करें कि region_name डिफ़ॉल्ट प्रोफ़ाइल में उल्लिखित है। यदि नहीं, तो सत्र बनाते समय स्पष्ट रूप से region_name पास करें।
चरण 4: glue के लिए AWS क्लाइंट बनाएं।
चरण 5: get_trigger को कॉल करें और trigger_name को Name के रूप में पास करें
चरण 6: यह दिए गए ट्रिगर का विवरण लौटाता है।
चरण 8: जॉब की जांच करते समय यदि कुछ गलत हुआ तो सामान्य अपवाद को संभालें।
उदाहरण कोड
निम्न कोड उपयोगकर्ता खाते में सूचीबद्ध ट्रिगर का विवरण प्राप्त करता है -
import boto3
from botocore.exceptions import ClientError
def get_resource_metadata_of_trigger(trigger_name):
session = boto3.session.Session()
glue_client = session.client('glue')
try:
response = glue_client.get_trigger(Name=trigger_name)
return response
except ClientError as e:
raise Exception("boto3 client error in get_resource_metadata_of_trigger: " + e.__str__())
except Exception as e:
raise Exception("Unexpected error in get_resource_metadata_of_trigger: " + e.__str__())
a = get_resource_metadata_of_trigger('01_PythonShellTest1')
print(a)
आउटपुट
{'Triggers': [{'Name': '01_PythonShellTest1', 'WorkflowName': 'arn:aws:iam::1234:role/dev-edl', 'Id': 'string', 'Type': 'SCHEDULED'|'CONDITIONAL'|'ON_DEMAND', 'State': 'CREATING'|'CREATED'|'ACTIVATING'|'ACTIVATED'|'DEACTIVATING'|'DEACTIVATED'|'DELETING'|'UPDATING', 'Description': 'string', 'Schedule': 'string'}]}