AWS Lambda-Erweiterung

<ph type="x-smartling-placeholder"></ph> Sie sehen die Dokumentation zu Apigee Edge.
Gehen Sie zur Apigee X-Dokumentation.
Weitere Informationen

<ph type="x-smartling-placeholder">

Version: 1.0.0

Auf AWS Lambda bereitgestellte Funktionen ausführen Mit dieser Erweiterung können Sie die in Ihrem AWS-Konto verfügbaren Funktionen auflisten und dann bestimmte Funktionen aufrufen.

Vorbereitung

Bevor Sie die Erweiterung über einen API-Proxy mithilfe der ExtensionCallout-Richtlinie verwenden können, müssen Sie:

Informationen zu AWS Lambda

AWS Lambda bietet Rechenumgebungen, in denen Sie Funktionen in einer der unterstützten Sprachen ausführen können.

Aktionen

<ph type="x-smartling-placeholder">

aufrufen

Ruft eine Funktion in AWS Lambda auf.

Weitere Informationen zu Parametern finden Sie in der Dokumentation zu AWS Lambda Invoke.

Syntax

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

Beispiel

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

Anfrageparameter

Weitere Informationen zu Parametern finden Sie in der Dokumentation zu AWS Lambda Invoke.

Parameter Beschreibung Typ Default Erforderlich
functionName Der Name der aufzurufenden Funktion. String. Keine. Ja.
invocationType Gibt an, ob die Funktion synchron oder asynchron aufgerufen oder Parameterwerte validiert werden soll. String. Keine. Nein.
logType Gibt optional an, ob die letzten 4 KB an Protokolldaten zurückgegeben werden sollen. String Keine. Nein.
Qualifier Die Version des Alias einer veröffentlichten Lambda-Funktion. String Keine. Nein.
payload JSON als Eingabe für die Lambda-Funktion. String Keine. Nein.

Antwort

Ein Array von Funktionen, die bestimmte Versionsdetails enthalten. Hier ein Beispiel:

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

Antworteigenschaften

Attribut Beschreibung Typ Standard
StatusCode HTTP-Statuscode. Ganzzahl Keine.
Nutzlast JSON, das das von der Funktion zurückgegebene Objekt darstellt. Ist nur vorhanden, wenn der Aufruftyp „RequestResponse“ ist. Bei einem Funktionsfehler enthält die Nachricht eine Fehlermeldung. String Keine.

listFunctions

Listet die verfügbaren AWS Lambda-Funktionen auf.

Weitere Informationen zu Parametern finden Sie in der Dokumentation zu AWS Lambda ListFunctions.

Syntax

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

Beispiel

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

Anfrageparameter

Weitere Informationen zu Parametern finden Sie in der Dokumentation zu AWS Lambda ListFunctions.

Parameter Beschreibung Typ Default Erforderlich
masterRegion Die Region (z. B. us-east-2), deren Funktionen aufgelistet werden sollen Mit ALL können Sie Funktionen aus einer beliebigen Region einbinden. Wenn angegeben, musst du auch die functionVersion angeben. String Keine. Nein.
functionVersion Geben Sie ALL an, um alle veröffentlichten Versionen aufzulisten. Wenn nicht angegeben, wird nur die neueste unveröffentlichte ARN-Version zurückgegeben. String Keine. Nein.
maxItems Die maximale Anzahl von Funktionen, die als Antwort zurückgegeben werden sollen. Muss größer als 0 sein. Das absolute Maximum, das zurückgegeben werden kann, ist 50. Ganzzahl Keine. Nein.

Antwort

JSON, das ein Array von Funktionen mit bestimmten Versionsdetails darstellt.

[
  {
    "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"
  }
]

Antworteigenschaften

Attribut Beschreibung Typ Standardeinstellung
Beschreibung Eine Beschreibung der Funktion. String. Keine.
Handler Die Funktion, die Lambda aufruft, um mit der Ausführung der Funktion zu beginnen. String. Keine.
FunctionArn Der Amazon-Ressourcenname der Funktion. String. Keine.
FunctionName Der Name der Funktion. String. Keine.
Rolle Die Ausführungsrolle der Funktion. String. Keine.
Laufzeit Die Laufzeitumgebung der Funktion. String. Keine.
Version Die Version der Funktion. String. Keine.

Konfigurationsreferenz

Verwenden Sie Folgendes, wenn Sie diese Erweiterung zur Verwendung in API-Proxys konfigurieren und bereitstellen. Eine schrittweise Anleitung zum Konfigurieren einer Erweiterung mit der Apigee-Konsole finden Sie unter Erweiterung hinzufügen und konfigurieren.

Allgemeine Erweiterungseigenschaften

Für jede Erweiterung sind die folgenden Eigenschaften vorhanden.

Attribut Beschreibung Standard Erforderlich
name Der Name, den Sie dieser Konfiguration der Erweiterung zuweisen. Ja
packageName Name des Erweiterungspakets, wie von Apigee Edge angegeben. Ja
version Versionsnummer für das Erweiterungspaket, von dem Sie eine Erweiterung konfigurieren. Ja
configuration Konfigurationswert speziell für die Erweiterung, die Sie hinzufügen. Weitere Informationen finden Sie unter Eigenschaften für dieses Erweiterungspaket. Ja

Eigenschaften für dieses Erweiterungspaket

Geben Sie Werte für die folgenden Konfigurationseigenschaften an, die für diese Erweiterung spezifisch sind.

Attribut Beschreibung Standard Erforderlich
AWS Lambda-Region Der Name der Region, in der Ihre Funktionen bereitgestellt werden. Beispiel: us-east-1. Keine. Ja.
Anmeldedaten Bei Eingabe in die Apigee Edge-Konsole ist dies eine JSON-Datei, die Ihre Amazon-Zugriffsschlüssel-ID und den Zugriffsschlüssel im folgenden Format enthält:

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

Wenn sie über die Verwaltungs-API gesendet wird, handelt es sich um einen base64-codierten Wert, der aus dieser JSON-Schlüsseldatei generiert wird.
Keine. Ja.