תוסף AWSda - AWS

אתם צופים במסמכי התיעוד של Apigee Edge.
כדאי לעיין במסמכי התיעוד של Apigee X.
מידע

גרסה: 1.0.0

הפעלת פונקציות שנפרסו ב-AWS Lambda. אתם יכולים להשתמש בתוסף הזה כדי לראות רשימה של הפונקציות שזמינות בחשבון AWS שלכם, ואז להפעיל פונקציות ספציפיות.

דרישות מוקדמות

לפני שמשתמשים בתוסף משרת proxy ל-API באמצעות מדיניות ExtensionCallout, צריך:

מידע על AWS Lambda

AWS Lambda מספקת סביבות מחשוב שבהן אפשר להריץ פונקציות באחת מהשפות הנתמכות.

פעולות

להפעיל

מפעיל פונקציה ב-AWS Lambda.

מידע נוסף על פרמטרים זמין במסמכי העזרה בנושא הפעלה של AWS Lambda.

תחביר

<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.

פרמטר תיאור סוג ברירת מחדל חובה
functionName השם של הפונקציה להפעלה. מחרוזת. ללא. כן.
invocationType מציינת אם להפעיל את הפונקציה באופן סינכרוני, אסינכרוני או לאמת את ערכי הפרמטרים. מחרוזת. ללא. לא.
logType אופציונלי: מציינים אם להחזיר את 4KB האחרונים של נתוני היומן. מחרוזת ללא. לא.
מגדיר גרסת הכינוי של פונקציית Lambda שפורסמה. מחרוזת ללא. לא.
מטען ייעודי (payload) קובץ JSON כקלט לפונקציית Lambda. מחרוזת ללא. לא.

תשובה

מערך של פונקציות שמכיל פרטים ספציפיים על הגרסה. לדוגמה:

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

מאפייני התגובה

נכס תיאור סוג ברירת מחדל
StatusCode . מספר שלם ללא.
מטען ייעודי ‫JSON שמייצג את האובייקט שמוחזר על ידי הפונקציה. המאפיין הזה מוצג רק אם סוג ההפעלה הוא RequestResponse. במקרה של שגיאה בפונקציה, הערך הזה מכיל הודעת תיאור של השגיאה. מחרוזת ללא.

listFunctions

רשימת הפונקציות הזמינות של 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.

פרמטר תיאור סוג ברירת מחדל חובה
masterRegion האזור (למשל us-east-2) שהפונקציות שלו צריכות להיכלל ברשימה. אם רוצים לכלול פונקציות מכל אזור, צריך להזין ALL. אם מציינים את המאפיין הזה, צריך לציין גם את functionVersion. מחרוזת ללא. לא.
functionVersion מציינים ALL כדי להציג רשימה של כל הגרסאות שפורסמו. אם לא מציינים גרסה, מוחזר רק ה-ARN של הגרסה האחרונה שלא פורסמה. מחרוזת ללא. לא.
maxItems מספר הפונקציות המקסימלי שיוחזרו בתשובה. המספר צריך להיות גדול מ-0. המספר המקסימלי המוחלט שאפשר להחזיר הוא 50. מספר שלם ללא. לא.

תשובה

‫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"
  }
]

מאפייני התגובה

נכס תיאור סוג ברירת מחדל
תיאור תיאור של הפונקציה. מחרוזת. ללא.
Handler הפונקציה ש-Lambda קוראת לה כדי להתחיל להריץ את הפונקציה. מחרוזת. ללא.
FunctionArn שם המשאב של Amazon של הפונקציה. מחרוזת. ללא.
FunctionName שם הפונקציה. מחרוזת. ללא.
תפקיד תפקיד ההרשאה של הפונקציה. מחרוזת. ללא.
זמן ריצה סביבת זמן הריצה של הפונקציה. מחרוזת. ללא.
גרסה גרסת הפונקציה. מחרוזת. ללא.

הסבר על ההגדרות

כשמגדירים ופורסים את התוסף הזה לשימוש בשרתי proxy ל-API, צריך להשתמש בהגדרות הבאות. במאמר הוספה והגדרה של תוסף מוסבר איך להגדיר תוסף באמצעות מסוף Apigee.

מאפיינים נפוצים של תוספים

המאפיינים הבאים קיימים בכל תוסף.

נכס תיאור ברירת המחדל נדרש
name השם שבחרת לתצורה הזו של התוסף. ללא כן
packageName השם של חבילת התוסף כפי שהוא סופק על ידי Apigee Edge. ללא כן
version מספר הגרסה של חבילת התוסף שממנה מגדירים את התוסף. ללא כן
configuration ערך הגדרה ספציפי לתוסף שרוצים להוסיף. מאפיינים לחבילת תוספים זו ללא כן

מאפיינים של חבילת התוסף הזו

מציינים ערכים למאפייני ההגדרה הבאים שספציפיים לתוסף הזה.

נכס תיאור ברירת מחדל חובה
אזור AWS Lambda השם של האזור שבו הפונקציות נפרסות. לדוגמה: us-east-1. ללא. כן.
פרטי כניסה כשמזינים אותו במסוף Apigee Edge, זהו קובץ JSON שמכיל את מזהה מפתח הגישה ומפתח הגישה שלכם באמזון, בפורמט הבא:

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

כששולחים אותו באמצעות Management API, זהו ערך בקידוד base64 שנוצר מקובץ ה-JSON של המפתח.
ללא. כן.