Google Cloud Composer میں ٹاسک کے لیے مقامی Requests پراکسی
مشترکہ worker پروسیس کا پراکسی ماحول بدلنے کے بجائے واضح راستے والا ٹاسک کے لیے مقامی Requests Session بنائیں۔
اگر 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 بنڈل کے انتخاب کو بھی غیر فعال کرتا ہے۔ اگر ضرورت ہو تو مطلوبہ CA بنڈل اس کلائنٹ کے verify اختیار کے ذریعے فراہم کریں۔
منظم Airflow ماحول کے لیے ترتیب دیے گئے ماحولی متغیرات کا دائرہ وسیع تر ہوتا ہے اور پلیٹ فارم کی مقرر کردہ پابندیاں ہوتی ہیں۔ راستہ اس Session کو دینے سے فیصلہ اسی ٹاسک کی HTTP کارروائی سے منسلک رہتا ہے اور worker پروسیس میں دیگر کوڈ کے لیے os.environ تبدیل نہیں ہوتا۔