Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

Boto3 का उपयोग करके वर्कफ़्लो का विवरण प्राप्त करना


इस लेख में, हम देखेंगे कि उपयोगकर्ता वर्कफ़्लो का संसाधन मेटाडेटा कैसे प्राप्त कर सकता है।

उदाहरण

आपके खाते में बनाए गए वर्कफ़्लो का विवरण AWS Glue डेटा कैटलॉग से प्राप्त करें।

समस्या कथन: अपने खाते में बनाए गए वर्कफ़्लो का मेटाडेटा प्राप्त करने के लिए पायथन में boto3 लाइब्रेरी का उपयोग करें।

इस समस्या को हल करने के लिए दृष्टिकोण/एल्गोरिदम

  • चरण 1: अपवादों को संभालने के लिए boto3 और botocore अपवाद आयात करें।

  • चरण 2: workflow_name इस फ़ंक्शन के लिए आवश्यक पैरामीटर है। यह दिए गए वर्कफ़्लो का मेटाडेटा प्राप्त करेगा।

  • चरण 3: boto3 लाइब्रेरी का उपयोग करके AWS सत्र बनाएं। सुनिश्चित करें कि डिफ़ॉल्ट प्रोफ़ाइल में region_name उल्लिखित है। यदि नहीं, तो सत्र बनाते समय स्पष्ट रूप से region_name पास करें।

  • चरण 4: glue के लिए AWS क्लाइंट बनाएं।

  • चरण 5: get_workflow को कॉल करें और workflow_name को Name पैरामीटर के रूप में पास करें।

  • चरण 6: यह दिए गए वर्कफ़्लो का मेटाडेटा लौटाता है।

  • चरण 7: जॉब की जांच करते समय यदि कुछ गलत हुआ तो सामान्य अपवाद को संभालें।

उदाहरण कोड

निम्न कोड उपयोगकर्ता खाते में बनाए गए वर्कफ़्लो का विवरण प्राप्त करता है -

import boto3
from botocore.exceptions import ClientError

def get_resource_metadata_of_workflow(workflow_name):
    session = boto3.session.Session()
    glue_client = session.client('glue')
    try:
        response = glue_client.get_workflow(Name=workflow_name)
        return response
    except ClientError as e:
        raise Exception("boto3 client error in get_resource_metadata_of_workflow: " + e.__str__())
    except Exception as e:
        raise Exception("Unexpected error in get_resource_metadata_of_workflow: " + e.__str__())

a = get_resource_metadata_of_workflow('dev-aiml-naviga-ods-load')
print(a)

आउटपुट

{'Workflow': {'Name': 'dev-aiml-naviga-ods-load', 'DefaultRunProperties': {}, 'CreatedOn': datetime.datetime(2020, 5, 27, 3, 10, 57, 967000, tzinfo=tzlocal()), 'LastModifiedOn': datetime.datetime(2020, 5, 27, 3, 10, 57, 967000, tzinfo=tzlocal())}, 'StartedOn': datetime.datetime(2021, 2, 3, 16, 14, 48, 795000, tzinfo=tzlocal()), 'CompletedOn': datetime.datetime(2021, 2, 3, 16, 28, 6, 207000, tzinfo=tzlocal()), 'Status': 'COMPLETED', 'Statistics': {'TotalActions': 3, 'TimeoutActions': 0, 'FailedActions': 0, 'StoppedActions': 0, 'SucceededActions': 3, 'RunningActions': 0}}}, 'MissingWorkflows': [], 'ResponseMetadata': {'RequestId': 'b328d064-24ab-48c4-b058-852387a3d474', 'HTTPStatusCode': 200, 'HTTPHeaders': {'date': 'Sat, 27 Feb 2021 13:57:37 GMT', 'content-type': 'application/x-amz-json-1.1', 'content-length': '2655', 'connection': 'keep-alive', 'x-amzn-requestid': 'b328d064-24ab-48c4-b058-852387a3d474'}, 'RetryAttempts': 0}}

  1. Python का उपयोग करके पॉइंट्स के सेट का केंद्र कैसे प्राप्त करें? Python का उपयोग करके पॉइंट्स के सेट का केंद्र कैसे प्राप्त करें?

    पॉइंट्स के सेट का केंद्र प्राप्त करने के लिए, हम सूची के सभी तत्वों को जोड़ सकते हैं और उस योग को सूची की लंबाई से विभाजित कर सकते हैं ताकि परिणाम संबंधित एक्सिस का केंद्र हो सके। चरण डेटा पॉइंट्स की दो सूचियां बनाएं। plot() मेथड का उपयोग करके x और y डेटा पॉइंट्स प्लॉट करें। x और y डेटा पॉइंट

  1. - Boto3 और AWS Client का उपयोग करके S3 बकेट का स्थान कैसे प्राप्त करें?

    समस्या विवरण Python में boto3 लाइब्रेरी का उपयोग करके S3 बकेट का स्थान प्राप्त करें। उदाहरण के लिए, S3 में Bucket_1 का स्थान खोजें। इस समस्या को हल करने का दृष्टिकोण/एल्गोरिदम चरण 1 - अपवादों को संभालने के लिए boto3 और botocore अपवाद आयात करें। चरण 2 - फ़ंक्शन में bucket_name को पैरामीटर के रूप में

  1. - Boto3 और AWS Client का उपयोग करके S3 बकेट का जीवनचक्र कैसे प्राप्त करें?

    समस्या विवरण Python में boto3 लाइब्रेरी का उपयोग करके S3 बकेट का जीवनचक्र प्राप्त करें। उदाहरण के लिए, S3 में Bucket_1 का जीवनचक्र खोजें। इस समस्या को हल करने का दृष्टिकोण/एल्गोरिदम चरण 1 - अपवादों को संभालने के लिए boto3 और botocore अपवाद आयात करें। चरण 2 - फ़ंक्शन में bucket_name को पैरामीटर के र