Cloud Composer टास्कला प्रॉक्सीमधून एक आउटबाउंड HTTP विनंती आवश्यक असल्यास, HTTP क्लायंट टास्कच्या callable मध्ये कॉन्फिगर करा:

def fetch_status():
    import requests

    with requests.Session() as session:
        session.trust_env = False
        with session.get(
            'https://api.example/health',
            proxies={'https': 'http://proxy.example:8080'},
            timeout=(5, 30),
        ) as response:
            response.raise_for_status()
            return response.status_code

हा callable DAG च्या विद्यमान टास्क मांडणीद्वारे वापरा. प्रॉक्सी टास्क चालवणाऱ्या worker वरून पोहोचण्यायोग्य असणे आवश्यक आहे. प्रॉक्सी प्रमाणीकरण नसलेल्या परवानगी असलेल्या सार्वजनिक API कॉलसाठी, HTTP प्रॉक्सी सूची सत्राच्या HTTP प्रॉक्सी URL साठी उमेदवार पुरवते. प्रमाणीकृत URL किंवा इतर खाते कॉन्फिगरेशन डिप्लॉयमेंटच्या निर्धारित सीक्रेट स्रोतात ठेवा.

फंक्शन संपल्यावर Session आणि प्रतिसाद बंद होतात. trust_env=False Requests चे वातावरण एकत्रीकरण अक्षम करते, ज्यामुळे वारसाहक्काने मिळालेली प्रॉक्सी सेटिंग्ज या क्लायंटचे इच्छित वर्तन बदलू शकत नाहीत, आणि Requests ची वातावरणाधारित CA बंडल निवडही अक्षम करते. आवश्यक असल्यास या क्लायंटच्या verify पर्यायाद्वारे इच्छित CA बंडल द्या.

व्यवस्थापित Airflow वातावरणासाठी कॉन्फिगर केलेल्या वातावरण चलांची व्याप्ती मोठी असते आणि प्लॅटफॉर्मने ठरवलेली बंधने असतात. मार्ग या Session ला देऊन निर्णय या टास्कच्या HTTP क्रियेशी जोडलेला राहतो आणि worker प्रोसेसमधील इतर कोडसाठी os.environ बदलत नाही.

संबंधित लेख