Exemple de code de fonction - AWS Lambda

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Exemple de code de fonction

Un exemple de code est disponible pour les langages suivants.

Node.js

L'exemple suivant traite un message provenant d'Amazon SNS et envoie le contenu de ce message aux journaux.

Exemple index.js
console.log('Loading function'); exports.handler = function(event, context, callback) { // console.log('Received event:', JSON.stringify(event, null, 4)); var message = event.Records[0].Sns.Message; console.log('Message received from SNS:', message); callback(null, "Success"); };

Compressez l'exemple de code pour créer un package de déploiement. Pour obtenir des instructions, consultez Déployer des fonctions Lambda en Node.js avec des archives de fichiers .zip.

Java 11

L'exemple suivant traite un message provenant d'Amazon SNS et envoie le contenu de ce message aux journaux.

Exemple LogEvent.java
package example; import java.text.SimpleDateFormat; import java.util.Calendar; import com.amazonaws.services.lambda.runtime.RequestHandler; import com.amazonaws.services.lambda.runtime.Context; import com.amazonaws.services.lambda.runtime.events.SNSEvent; public class LogEvent implements RequestHandler<SNSEvent, Object> { public Object handleRequest(SNSEvent request, Context context){ String timeStamp = new SimpleDateFormat("yyyy-MM-dd_HH:mm:ss").format(Calendar.getInstance().getTime()); context.getLogger().log("Invocation started: " + timeStamp); context.getLogger().log(request.getRecords().get(0).getSNS().getMessage()); timeStamp = new SimpleDateFormat("yyyy-MM-dd_HH:mm:ss").format(Calendar.getInstance().getTime()); context.getLogger().log("Invocation completed: " + timeStamp); return null; } }
Dépendances
  • aws-lambda-java-core

  • aws-lambda-java-events

Générez le code avec les dépendances de la bibliothèque Lambda pour créer un package de déploiement. Pour obtenir des instructions, consultez Déployer des fonctions Lambda en Java avec des archives de fichiers .zip ou JAR.

Go

L'exemple suivant traite un message provenant d'Amazon SNS et envoie le contenu de ce message aux journaux.

Exemple lambda_handler.go
package main import ( "context" "fmt" "github.com/aws/aws-lambda-go/lambda" "github.com/aws/aws-lambda-go/events" ) func handler(ctx context.Context, snsEvent events.SNSEvent) { for _, record := range snsEvent.Records { snsRecord := record.SNS fmt.Printf("[%s %s] Message = %s \n", record.EventSource, snsRecord.Timestamp, snsRecord.Message) } } func main() { lambda.Start(handler) }

Générez le fichier exécutable avec go build et créez un package de déploiement. Pour obtenir des instructions, consultez Déployer des fonctions Lambda Go avec des archives de fichiers .zip.

Python 3

L'exemple suivant traite un message provenant d'Amazon SNS et envoie le contenu de ce message aux journaux.

Exemple lambda_handler.py
from __future__ import print_function import json print('Loading function') def lambda_handler(event, context): #print("Received event: " + json.dumps(event, indent=2)) message = event['Records'][0]['Sns']['Message'] print("From SNS: " + message) return message

Compressez l'exemple de code pour créer un package de déploiement. Pour obtenir des instructions, consultez Travailler avec des archives de fichiers .zip pour les fonctions Lambda Python.