AWS Lambda এক্সটেনশন

আপনি Apigee Edge ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশনে যান
তথ্য

সংস্করণ: 2.0.2

AWS Lambda তে মোতায়েন করা ফাংশনগুলি কার্যকর করুন। আপনার AWS অ্যাকাউন্টে উপলব্ধ ফাংশনগুলি তালিকাভুক্ত করতে এই এক্সটেনশনটি ব্যবহার করুন, তারপর নির্দিষ্ট ফাংশনগুলি চালু করুন।

পূর্বশর্ত

ExtensionCallout নীতি ব্যবহার করে একটি API প্রক্সি থেকে এক্সটেনশন ব্যবহার করার আগে, আপনাকে অবশ্যই:

AWS Lambda সম্পর্কে

AWS Lambda এমন কম্পিউট পরিবেশ প্রদান করে যেখানে আপনি সমর্থিত ভাষাগুলির একটিতে ফাংশন সম্পাদন করতে পারেন।

কর্ম

আহ্বান করা

AWS Lambda-তে একটি ফাংশন আহ্বান করে।

প্যারামিটার সম্পর্কে আরও বিস্তারিত জানার জন্য, AWS Lambda Invoke ডকুমেন্টেশন দেখুন।

বাক্য গঠন

<Action>invoke</Action>
<Input><![CDATA[
{
  "functionName" : "function-on-lambda",
  "invocationType" : "RequestResponse | Event | DryRun",
  "logType" : "None | Tail",
  "qualifier" : "Version-or-alias",
  "payload" : "Escaped-JSON-string"
}
]]>
</Input>
<Output>flow-variable</Output>

উদাহরণ

<Action>invoke</Action>
<Input><![CDATA[
{
  "functionName" : "helloWorld",
  "invocationType" : "RequestResponse",
  "logType" : "None",
  "qualifier" : "$LATEST",
  "payload" : "{ \"key\": \"val\" }"
}
]]>
</Input>
<Output>function.response.value</Output>

অনুরোধের প্যারামিটার

প্যারামিটার সম্পর্কে আরও বিস্তারিত জানার জন্য, AWS Lambda Invoke ডকুমেন্টেশন দেখুন।

প্যারামিটার বিবরণ আদর্শ ডিফল্ট প্রয়োজনীয়
ফাংশনের নাম যে ফাংশনটি ব্যবহার করতে হবে তার নাম। স্ট্রিং। কোনোটিই নয়। হ্যাঁ।
আমন্ত্রণের ধরণ ফাংশনটি সিঙ্ক্রোনাসলি, অ্যাসিঙ্ক্রোনাসলি, নাকি প্যারামিটার মান যাচাই করবে তা নির্দিষ্ট করে। স্ট্রিং। কোনোটিই নয়। না।
লগটাইপ ঐচ্ছিকভাবে শেষ 4 KB লগ ডেটা ফেরত দিতে হবে কিনা তা নির্দিষ্ট করে। স্ট্রিং কোনোটিই নয়। না।
বাছাইপর্ব একটি প্রকাশিত ল্যাম্বডা ফাংশনের উপনামের সংস্করণ। স্ট্রিং কোনোটিই নয়। না।
পেলোড ল্যাম্বডা ফাংশনের ইনপুট হিসেবে JSON। স্ট্রিং কোনোটিই নয়। না।

প্রতিক্রিয়া

নির্দিষ্ট সংস্করণের বিবরণ সম্বলিত ফাংশনের একটি অ্যারে। নিম্নলিখিতটি একটি উদাহরণ:

{
  "StatusCode" : 200,
  "Payload" : "{\"statusCode\":200,\"body\":\"\\\"Hello World!\\\"\"}"
}

প্রতিক্রিয়া বৈশিষ্ট্য

সম্পত্তি বিবরণ আদর্শ ডিফল্ট
স্ট্যাটাসকোড HTTP স্ট্যাটাস কোড। পূর্ণসংখ্যা কোনোটিই নয়।
পেলোড JSON ফাংশন দ্বারা ফেরত পাঠানো বস্তুর প্রতিনিধিত্ব করে। শুধুমাত্র যদি অনুরোধের ধরণটি RequestResponse হয় তবেই উপস্থাপন করুন। একটি ফাংশন ত্রুটির জন্য, এতে একটি ত্রুটি বর্ণনা বার্তা রয়েছে। স্ট্রিং কোনোটিই নয়।

তালিকা ফাংশন

উপলব্ধ AWS Lambda ফাংশনগুলির তালিকা তৈরি করে।

প্যারামিটার সম্পর্কে আরও বিস্তারিত জানার জন্য, AWS Lambda ListFunctions ডকুমেন্টেশন দেখুন।

বাক্য গঠন

<Action>listFunctions</Action>
<Input><![CDATA[
{
  "masterRegion" : "ALL | [a-z]{2}(-gov)?-[a-z]+-\d{1}",
  "functionVersion" : "ALL",
  "maxItems" : 1 - 10000
}
]]>
</Input>
<Output>flow-variable</Output>

উদাহরণ

<Action>listFunctions</Action>
<Input><![CDATA[
{
  "masterRegion" : "ALL",
  "functionVersion" : "ALL",
  "maxItems" : 50
}
]]>
</Input>
<Output>function.list</Output>

অনুরোধের প্যারামিটার

প্যারামিটার সম্পর্কে আরও বিস্তারিত জানার জন্য, AWS Lambda ListFunctions ডকুমেন্টেশন দেখুন।

প্যারামিটার বিবরণ আদর্শ ডিফল্ট প্রয়োজনীয়
মাস্টাররিজিয়ন যে অঞ্চলের (যেমন us-east-2 ) ফাংশন তালিকাভুক্ত করা উচিত; ALL যেকোনো অঞ্চলের ফাংশন অন্তর্ভুক্ত করবে। যদি নির্দিষ্ট করা থাকে, তাহলে আপনাকে functionVersion ও উল্লেখ করতে হবে। স্ট্রিং কোনোটিই নয়। না।
ফাংশন ভার্সন সমস্ত প্রকাশিত সংস্করণ তালিকাভুক্ত করতে ALL উল্লেখ করুন। যদি নির্দিষ্ট না করা থাকে, তবে শুধুমাত্র সর্বশেষ অপ্রকাশিত সংস্করণ ARN ফেরত পাঠানো হবে। স্ট্রিং কোনোটিই নয়। না।
সর্বোচ্চ আইটেম প্রতিক্রিয়ায় ফেরত পাঠানোর জন্য সর্বাধিক ফাংশন সংখ্যা। ০ এর বেশি হতে হবে। সর্বোচ্চ ৫০টি ফেরত দেওয়া যেতে পারে। পূর্ণসংখ্যা কোনোটিই নয়। না।

প্রতিক্রিয়া

JSON নির্দিষ্ট সংস্করণের বিবরণ ধারণকারী ফাংশনের একটি অ্যারে প্রতিনিধিত্ব করে।

[
  {
    "FunctionName": "helloWorld",
    "FunctionArn": "arn:aws:lambda:fake-region:012345:function:helloWorld",
    "Runtime": "nodejs",
    "Role": "arn:aws:iam::012345:role/service-role/fakeRole",
    "Handler": "index.handler",
    "Description": "A Hello World lambda function.",
    "Version": "$LATEST"
  },
  {
    "FunctionName": "helloWorld",
    "FunctionArn": "arn:aws:lambda:fake-region:012345:function:helloWorld",
    "Runtime": "nodejs",
    "Role": "arn:aws:iam::012345:role/service-role/fakeRole",
    "Handler": "index.handler",
    "Description": "A Hello World lambda function.",
    "Version": "1"
  }
]

প্রতিক্রিয়া বৈশিষ্ট্য

সম্পত্তি বিবরণ আদর্শ ডিফল্ট
বিবরণ ফাংশনের বর্ণনা। স্ট্রিং। কোনোটিই নয়।
হ্যান্ডলার ল্যাম্বডা যে ফাংশনটি কল করে সেটি কার্যকর করা শুরু করে। স্ট্রিং। কোনোটিই নয়।
ফাংশনআর্ন ফাংশনটির Amazon রিসোর্সের নাম। স্ট্রিং। কোনোটিই নয়।
ফাংশনের নাম ফাংশনের নাম। স্ট্রিং। কোনোটিই নয়।
ভূমিকা ফাংশনের সম্পাদনের ভূমিকা। স্ট্রিং। কোনোটিই নয়।
রানটাইম ফাংশনের রানটাইম পরিবেশ। স্ট্রিং। কোনোটিই নয়।
সংস্করণ ফাংশনের সংস্করণ। স্ট্রিং। কোনোটিই নয়।

কনফিগারেশন রেফারেন্স

API প্রক্সিতে ব্যবহারের জন্য এই এক্সটেনশনটি কনফিগার এবং স্থাপন করার সময় নিম্নলিখিতগুলি ব্যবহার করুন। Apigee কনসোল ব্যবহার করে একটি এক্সটেনশন কনফিগার করার পদক্ষেপগুলির জন্য, একটি এক্সটেনশন যোগ করা এবং কনফিগার করা দেখুন।

সাধারণ এক্সটেনশন বৈশিষ্ট্য

নিম্নলিখিত বৈশিষ্ট্যগুলি প্রতিটি এক্সটেনশনের জন্য উপস্থিত রয়েছে।

সম্পত্তি বর্ণনা ডিফল্ট প্রয়োজন
name আপনি এক্সটেনশনের এই কনফিগারেশনের নাম দিন। কোনোটিই নয় হ্যাঁ
packageName Apigee Edge দ্বারা প্রদত্ত এক্সটেনশন প্যাকেজের নাম। কোনোটিই নয় হ্যাঁ
version যে এক্সটেনশন প্যাকেজ থেকে আপনি একটি এক্সটেনশন কনফিগার করছেন তার সংস্করণ নম্বর। কোনোটিই নয় হ্যাঁ
configuration আপনি যে এক্সটেনশনটি যোগ করছেন তার জন্য নির্দিষ্ট কনফিগারেশন মান। এই এক্সটেনশন প্যাকেজের বৈশিষ্ট্য দেখুন কোনোটিই নয় হ্যাঁ

এই এক্সটেনশন প্যাকেজের বৈশিষ্ট্যাবলী

এই এক্সটেনশনের জন্য নির্দিষ্ট নিম্নলিখিত কনফিগারেশন বৈশিষ্ট্যের জন্য মান নির্দিষ্ট করুন।

সম্পত্তি বিবরণ ডিফল্ট প্রয়োজনীয়
AWS ল্যাম্বদা অঞ্চল আপনার ফাংশনগুলি যে অঞ্চলে স্থাপন করা হয়েছে তার নাম। উদাহরণস্বরূপ: us-east-1 কোনোটিই নয়। হ্যাঁ।
পরিচয়পত্র Apigee Edge কনসোলে প্রবেশ করালে, এটি একটি JSON ফাইল যাতে আপনার Amazon অ্যাক্সেস কী আইডি এবং অ্যাক্সেস কী নিম্নলিখিত আকারে থাকে:

{
"accessKeyId" : "access-key-ID",
"secretAccessKey" : "secret-access-key"
}

ম্যানেজমেন্ট এপিআই ব্যবহার করে পাঠানো হলে, এটি একটি বেস৬৪-এনকোডেড মান যা সেই কী JSON ফাইল থেকে তৈরি হয়।
কোনোটিই নয়। হ্যাঁ।