Sélectionner vos préférences de cookies

Nous utilisons des cookies essentiels et des outils similaires qui sont nécessaires au fonctionnement de notre site et à la fourniture de nos services. Nous utilisons des cookies de performance pour collecter des statistiques anonymes afin de comprendre comment les clients utilisent notre site et d’apporter des améliorations. Les cookies essentiels ne peuvent pas être désactivés, mais vous pouvez cliquer sur « Personnaliser » ou « Refuser » pour refuser les cookies de performance.

Si vous êtes d’accord, AWS et les tiers approuvés utiliseront également des cookies pour fournir des fonctionnalités utiles au site, mémoriser vos préférences et afficher du contenu pertinent, y compris des publicités pertinentes. Pour accepter ou refuser tous les cookies non essentiels, cliquez sur « Accepter » ou « Refuser ». Pour effectuer des choix plus détaillés, cliquez sur « Personnaliser ».

AWS::Serverless::Function

Mode de mise au point
AWS::Serverless::Function - AWS Serverless Application Model

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.

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.

Filtrer la vue

Crée une AWS Lambda fonction, un rôle d'exécution AWS Identity and Access Management (IAM) et des mappages de sources d'événements qui déclenchent la fonction.

La AWS::Serverless::Function ressource prend également en charge l'attribut Metadata resource, ce qui vous permet de demander de AWS SAM créer des environnements d'exécution personnalisés dont votre application a besoin. Pour plus d'informations sur la création d'une exécution personnalisée, consultez Création de fonctions Lambda avec des environnements d'exécution personnalisés dans AWS SAM.

Note

Lorsque vous déployez vers AWS CloudFormation, vos AWS SAM ressources sont AWS SAM transformées en AWS CloudFormation ressources. Pour de plus amples informations, veuillez consulter AWS CloudFormation Ressources générées pour AWS SAM.

Syntaxe

Pour déclarer cette entité dans votre modèle AWS Serverless Application Model (AWS SAM), utilisez la syntaxe suivante.

Propriétés

Architectures

Architecture du jeu d'instructions de la fonction.

Pour en savoir plus sur cette propriété, consultez Architectures du jeu d'instructions Lambda dans leguide du développeur AWS Lambda .

Valeurs valides : Une de x86_64 ou arm64

Type: liste

Obligatoire : non

Par défaut : x86_64

AWS CloudFormation compatibilité : cette propriété est transmise directement à la Architectures propriété d'une AWS::Lambda::Function ressource.

AssumeRolePolicyDocument

Ajoute un AssumeRolePolicyDocument pour la valeur par défaut créée Role pour cette fonction. Si cette propriété n'est pas spécifiée, AWS SAM ajoute un rôle d'assume par défaut pour cette fonction.

Type : JSON

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est similaire à celle AssumeRolePolicyDocument d'une AWS::IAM::Role ressource. AWS SAM ajoute cette propriété au rôle IAM généré pour cette fonction. Si l'Amazon Resource Name (ARN) d'un rôle est fourni pour cette fonction, cette propriété ne fait rien.

AutoPublishAlias

Le nom de l'alias Lambda. Pour plus d'informations sur l'utilisation des alias Lambda, consultez Alias de fonction Lambda dans le Guide du développeur AWS Lambda . Pour obtenir des exemples qui utilisent cette propriété, consultez Déploiement progressif d'applications sans serveur avec AWS SAM.

AWS SAM génère AWS::Lambda::Version et AWS::Lambda::Aliasressources lorsque cette propriété est définie. Pour plus d'informations sur ce scénario, consultez AutoPublishAlias la propriété est spécifiée. Pour des informations générales sur les AWS CloudFormation ressources générées, consultezAWS CloudFormation Ressources générées pour AWS SAM.

Type : chaîne

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est unique AWS SAM et n'a pas d' AWS CloudFormation équivalent.

AutoPublishAliasAllProperties

Spécifie quand une nouvelle version AWS::Lambda::Version est créée. Lorsque l'option est true, une nouvelle version Lambda est créée lorsqu'une propriété de la fonction Lambda est modifiée. Lorsque l'option est false, une nouvelle version Lambda est créée uniquement lorsque l'une des propriétés suivantes est modifiée :

  • Environment, MemorySize, ou SnapStart.

  • Toute modification entraînant une mise à jour de la propriété du Code, telle que CodeDict, ImageUri ou InlineCode.

Cette propriété nécessite que AutoPublishAlias soit défini.

Si AutoPublishCodeSha256 est également spécifié, son comportement est prioritaire sur AutoPublishAliasAllProperties: true.

Type : valeur booléenne

Obligatoire : non

Valeur par défaut : false

AWS CloudFormation compatibilité : cette propriété est unique AWS SAM et n'a pas d' AWS CloudFormation équivalent.

AutoPublishCodeSha256

Lorsqu'elle est utilisée, cette chaîne fonctionne avec la CodeUri valeur pour déterminer si une nouvelle version de Lambda doit être publiée. Cette propriété est souvent utilisée pour résoudre le problème de déploiement suivant : un package de déploiement est stocké dans un emplacement Amazon S3 et est remplacé par un nouveau package de déploiement avec un code de fonction Lambda mis à jour, mais la CodeUri propriété reste inchangée (par opposition au téléchargement du nouveau package de déploiement vers un nouvel emplacement Amazon S3 et CodeUri remplacé par le nouvel emplacement).

Ce problème est marqué par un AWS SAM modèle présentant les caractéristiques suivantes :

  • L'DeploymentPreferenceobjet est configuré pour des déploiements progressifs (comme décrit dansDéploiement progressif d'applications sans serveur avec AWS SAM)

  • La AutoPublishAlias propriété est définie et ne change pas entre les déploiements

  • La CodeUri propriété est définie et ne change pas entre les déploiements.

Dans ce scénario, la mise à jour des résultats AutoPublishCodeSha256 entraîne la création d'une nouvelle version Lambda. Toutefois, le nouveau code de fonction déployé sur Amazon S3 n'est pas reconnu. Pour reconnaître le nouveau code de fonction, pensez à utiliser la gestion des versions dans votre compartiment Amazon S3. Spécifiez la propriété Version de votre fonction Lambda et configurez votre compartiment pour qu'il utilise toujours le dernier Package de déploiement.

Dans ce scénario, pour déclencher le déploiement progressif avec succès, vous devez fournir une valeur unique pour AutoPublishCodeSha256.

Type : chaîne

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est unique AWS SAM et n'a pas d' AWS CloudFormation équivalent.

CodeSigningConfigArn

L'ARN du AWS::Lambda::CodeSigningConfigressource, utilisée pour activer la signature de code pour cette fonction. Pour plus d'informations sur la signature de code, consultez Configurer la signature de code pour votre AWS SAM application.

Type : chaîne

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est transmise directement à la CodeSigningConfigArn propriété d'une AWS::Lambda::Function ressource.

CodeUri

Code pour la fonction. Les valeurs acceptées incluent :

  • l'URI Amazon S3 de la fonction ; Par exemple, s3://bucket-123456789/sam-app/1234567890abcdefg.

  • le chemin local vers la fonction. Par exemple, hello_world/.

  • Un objet FunctionCode.

Note

Si vous fournissez l'URI Amazon S3 d'une fonction ou l'objet FunctionCode, vous devez référencer un package de déploiement Lambda valide.

Si vous indiquez un chemin de fichier local, utilisez AWS SAM CLI pour télécharger le fichier local lors du déploiement. Pour en savoir plus, consultez Comment AWS SAM télécharge les fichiers locaux lors du déploiement.

Si vous utilisez des fonctions intrinsèques dans les CodeUri propriétés, vous ne AWS SAM pourrez pas analyser correctement les valeurs. Envisagez plutôt d'utiliser AWS::LanguageExtensions transform.

Type : [ chaîne de caractères | FunctionCode ]

Obligatoire : selon les conditions. Lorsque PackageType est défini sur Zip, un CodeUri ou un InlineCode est requis.

AWS CloudFormation compatibilité : cette propriété est similaire à celle Code d'une AWS::Lambda::Function ressource. Les propriétés imbriquées d'Amazon S3 sont nommées différemment.

DeadLetterQueue

Configure une rubrique Amazon Simple Notification Service (Amazon SNS) ou une file d'attente Amazon Simple Queue Service (Amazon SQS) où Lambda envoie les événements qu'il ne peut pas traiter. Pour en savoir plus sur la fonctionnalité de la file d'attente de lettres mortes, consultez File d'attente de lettres mortes dans le Guide du développeur AWS Lambda .

Note

Si la source d'événements de votre fonction Lambda est une file d'attente Amazon SQS, configurez une file d'attente de lettres mortes pour la file d'attente source, et pas pour la fonction Lambda. La file d'attente de lettres mortes que vous configurez pour une fonction est utilisée pour la file d'attente d'invocations asynchrones de la fonction et pas pour les files d'attente source d'événement.

Type : Carte | DeadLetterQueue

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est similaire à celle DeadLetterConfig d'une AWS::Lambda::Function ressource. Dans AWS CloudFormation le type est dérivé duTargetArn, tandis que dans AWS SAM vous devez transmettre le type avec leTargetArn.

DeploymentPreference

Les paramètres permettant d’activer les déploiements Lambda progressifs.

Si un DeploymentPreference objet est spécifié, AWS SAM crée un AWS::CodeDeploy::Applicationappelé ServerlessDeploymentApplication (un par pile), un AWS::CodeDeploy::DeploymentGroupappelé<function-logical-id>DeploymentGroup, et un AWS::IAM::RoleappeléCodeDeployServiceRole.

Type : DeploymentPreference

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est unique AWS SAM et n'a pas d' AWS CloudFormation équivalent.

Voir aussi : pour plus d'informations sur cette propriété, consultez Déploiement progressif d'applications sans serveur avec AWS SAM.

Description

Description de la fonction.

Type : chaîne

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est transmise directement à la Description propriété d'une AWS::Lambda::Function ressource.

Environment

La configuration de l'environnement d'exécution.

Type : Environment

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est transmise directement à la Environment propriété d'une AWS::Lambda::Function ressource.

EphemeralStorage

Objet qui spécifie l'espace disque, en Mo, disponible pour votre fonction Lambda dans /tmp.

Pour plus d'informations sur cette propriété, consultez Environnement d’exécution Lambda dans le Guide du développeur AWS Lambda .

Type : EphemeralStorage

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est transmise directement à la EphemeralStorage propriété d'une AWS::Lambda::Function ressource.

EventInvokeConfig

L'objet qui décrit l'événement appelle la configuration sur une fonction Lambda.

Type : EventInvokeConfiguration

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est unique AWS SAM et n'a pas d' AWS CloudFormation équivalent.

Events

Spécifie les événements qui déclenchent cette fonction. Les événements sont constitués d'un type et d'un ensemble de propriétés qui dépendent du type.

Type : EventSource

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est unique AWS SAM et n'a pas d' AWS CloudFormation équivalent.

FileSystemConfigs

Liste des FileSystemConfigobjets qui spécifient les paramètres de connexion pour un système de fichiers Amazon Elastic File System (Amazon EFS).

Si votre modèle contient un AWS::EFS::MountTargetressource, vous devez également spécifier un attribut de DependsOn ressource pour vous assurer que la cible de montage est créée ou mise à jour avant la fonction.

Type: liste

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est transmise directement à la FileSystemConfigs propriété d'une AWS::Lambda::Function ressource.

FunctionName

Nom de la fonction. Si vous ne spécifiez aucun nom, un nom unique sera généré pour vous.

Type : chaîne

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est transmise directement à la FunctionName propriété d'une AWS::Lambda::Function ressource.

FunctionUrlConfig

Objet qui décrit l'URL d'une fonction. Une URL de fonction est un point de terminaison HTTPS que vous pouvez utiliser pour appeler votre fonction.

Pour plus d'informations, consultez la section Fonction URLs dans le guide du AWS Lambda développeur.

Type : FunctionUrlConfig

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est unique AWS SAM et n'a pas d' AWS CloudFormation équivalent.

Handler

La fonction dans votre code qui est appelée pour commencer l'exécution. Cette propriété n'est requise que si la propriété PackageType est définie sur Zip.

Type : chaîne

Obligatoire : Conditionnelle

AWS CloudFormation compatibilité : cette propriété est transmise directement à la Handler propriété d'une AWS::Lambda::Function ressource.

ImageConfig

Objet utilisé pour configurer les paramètres d'image du conteneur Lambda. Pour plus d'informations sur l'utilisation de Lambda, consultez la section Mise en route avec Lambda du Guide du développeur AWS Lambda .

Type : ImageConfig

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est transmise directement à la ImageConfig propriété d'une AWS::Lambda::Function ressource.

ImageUri

L'URI du référentiel Amazon Elastic Container Registry (Amazon ECR) pour l'image de conteneur de la fonction Lambda. Cette propriété s'applique uniquement si la propriété PackageType est définie sur Image, sinon, elle est ignorée. Pour plus d'informations, consultez la section Utilisation d'images de conteneur avec Lambda dans le Guide du développeur AWS Lambda .

Note

Si la PackageType propriété est définie surImage, l'une des deux ImageUri est obligatoire ou vous devez créer votre application avec Metadata les entrées nécessaires dans le fichier AWS SAM modèle. Pour de plus amples informations, veuillez consulter Compilation par défaut avec AWS SAM.

Créer votre application avec les Metadata nécessaires, les entrées sont prioritaires sur ImageUri, donc si vous précisez les deux, alors ImageUri sera ignoré.

Type : chaîne

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est transmise directement à la ImageUri propriété du type de AWS::Lambda::Function Code données.

InlineCode

Le code de fonction Lambda qui est écrit directement dans le modèle. Cette propriété s'applique uniquement si la propriété PackageType est définie sur Zip, sinon, elle est ignorée.

Note

Si la propriété PackageType est définie sur Zip (par défaut), alors l'un des CodeUri ou InlineCode est requis.

Type : chaîne

Obligatoire : Conditionnelle

AWS CloudFormation compatibilité : cette propriété est transmise directement à la ZipFile propriété du type de AWS::Lambda::Function Code données.

KmsKeyArn

L'ARN d'une clé AWS Key Management Service (AWS KMS) que Lambda utilise pour chiffrer et déchiffrer les variables d'environnement de votre fonction.

Type : chaîne

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est transmise directement à la KmsKeyArn propriété d'une AWS::Lambda::Function ressource.

Layers

Liste des éléments LayerVersion ARNs que cette fonction doit utiliser. L'ordre spécifié ici est l'ordre dans lequel ils seront importés lors de l'exécution de la fonction Lambda. La version est soit un ARN complet incluant la version, soit une référence à une LayerVersion ressource. Par exemple, une référence à un LayerVersion will sera !Ref MyLayer alors qu'un ARN complet incluant la version le seraarn:aws:lambda:region:account-id:layer:layer-name:version.

Type: liste

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est transmise directement à la Layers propriété d'une AWS::Lambda::Function ressource.

LoggingConfig

Les paramètres de configuration Amazon CloudWatch Logs de la fonction.

Type : LoggingConfig

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est transmise directement à la LoggingConfigpropriété d'une AWS::Lambda::Function ressource.

MemorySize

La taille de la mémoire en Mo allouée par invocation de la fonction.

Type : entier

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est transmise directement à la MemorySize propriété d'une AWS::Lambda::Function ressource.

PackageType

Le package de déploiement de la fonction Lambda. Pour plus d'informations, consultez Packages de déploiement M Lambda dans le Guide du développeur AWS Lambda .

Remarques :

1. Si cette propriété est définie sur Zip(par défaut), alors soit CodeUri ou InlineCodes'applique, et ImageUri est ignoré.

2. Si cette propriété est définie sur Image, alors uniquement ImageUri s'applique, et CodeUri et InlineCode sont ignorés. Le référentiel Amazon ECR requis pour stocker l'image du conteneur de la fonction peut être créé automatiquement par AWS SAM CLI. Pour plus d'informations, consultezsam deploy.

Valeurs valides : Zip ou Image

Type : chaîne

Obligatoire : non

Par défaut : Zip

AWS CloudFormation compatibilité : cette propriété est transmise directement à la PackageType propriété d'une AWS::Lambda::Function ressource.

PermissionsBoundary

L'ARN d'une limite d'autorisations à utiliser pour le rôle d'exécution de cette fonction. Cette propriété ne fonctionne que si le rôle est généré pour vous.

Type : chaîne

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est transmise directement à la PermissionsBoundary propriété d'une AWS::IAM::Role ressource.

Policies

Politiques d'autorisation pour cette fonction. Les politiques seront ajoutées au rôle d'exécution par défaut AWS Identity and Access Management (IAM) de la fonction.

Cette propriété accepte une valeur unique ou une liste de valeurs. Les valeurs autorisées sont les suivantes :

Note

Si vous définissez la propriété Role, cette propriété est ignorée.

Type : chaîne | liste | carte

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est similaire à celle Policies d'une AWS::IAM::Role ressource.

PropagateTags

Indiquez s'il faut ou non transmettre les balises de la propriété Tags aux ressources AWS::Serverless::Function que vous avez générées. Spécifiez True pour la propagation des balises dans vos ressources générées.

Type : valeur booléenne

Obligatoire : non

Par défaut : False

AWS CloudFormation compatibilité : cette propriété est unique AWS SAM et n'a pas d' AWS CloudFormation équivalent.

ProvisionedConcurrencyConfig

La configuration de la simultanéité allouée pour l'alias d'une fonction.

Note

ProvisionedConcurrencyConfig peut être spécifiée uniquement si AutoPublishAlias est définie. Si vous ne le faites pas, une erreur se produit.

Type : ProvisionedConcurrencyConfig

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est transmise directement à la ProvisionedConcurrencyConfig propriété d'une AWS::Lambda::Alias ressource.

RecursiveLoop

État de la configuration de détection de boucle récursive de votre fonction.

Lorsque cette valeur est définie sur Allow et que Lambda détecte que votre fonction est invoquée dans le cadre d'une boucle récursive, aucune action n'est entreprise.

Lorsque cette valeur est définie sur Terminate et que Lambda détecte que votre fonction est invoquée dans le cadre d'une boucle récursive, il arrête l'appel de votre fonction et vous en informe.

Type : chaîne

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est transmise directement à la RecursiveLoop propriété de la AWS::Lambda::Function ressource.

ReservedConcurrentExecutions

Le nombre maximum d'exécutions simultanées à réserver pour la fonction.

Pour plus d'informations sur cette propriété, consultez Mise à échelle de fonction Lambda dans le Guide du développeur AWS Lambda .

Type : entier

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est transmise directement à la ReservedConcurrentExecutions propriété d'une AWS::Lambda::Function ressource.

Role

L'ARN d'un rôle IAM à utiliser comme rôle d'exécution de cette fonction.

Type : chaîne

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est similaire à celle Role d'une AWS::Lambda::Function ressource. Cela est obligatoire dans AWS CloudFormation mais pas dans AWS SAM. Si aucun rôle n'est spécifié, un rôle est créé pour vous avec une ID logique de <function-logical-id>Role.

RolePath

Chemin d'accès du rôle d'exécution IAM de la fonction.

Utilisez cette propriété lorsque le rôle est généré pour vous. Ne l'utilisez pas lorsque le rôle est spécifié avec la propriété Role.

Type : chaîne

Obligatoire : Conditionnelle

AWS CloudFormation compatibilité : cette propriété est transmise directement à la Path propriété d'une AWS::IAM::Role ressource.

Runtime

Identifiant de l’exécution de la fonction. Cette propriété n'est requise que si la propriété PackageType est définie sur Zip.

Note

Si vous spécifiez l'providedidentifiant de cette propriété, vous pouvez utiliser l'attribut Metadata resource pour demander de AWS SAM créer le runtime personnalisé requis par cette fonction. Pour plus d'informations sur la création d'une exécution personnalisée, consultez Création de fonctions Lambda avec des environnements d'exécution personnalisés dans AWS SAM.

Type : chaîne

Obligatoire : Conditionnelle

AWS CloudFormation compatibilité : cette propriété est transmise directement à la Runtime propriété d'une AWS::Lambda::Function ressource.

RuntimeManagementConfig

Configurez les options de gestion de l'exécution pour vos fonctions Lambda, telles que les mises à jour de l'environnement d'exécution, le comportement d'annulation et la sélection d'une version d'exécution spécifique. Pour en savoir plus, consultez les mises à jour du temps d'exécution Lambda dans le Guide du développeur AWS Lambda .

Type : RuntimeManagementConfig

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est transmise directement à la RuntimeManagementConfig propriété d'une AWS::Lambda::Function ressource.

SnapStart

Créez un instantané de toute nouvelle version de fonction Lambda. Un instantané est un état mis en cache de votre fonction initialisée, y compris de toutes ses dépendances. La fonction n'est initialisée qu'une seule fois et l'état mis en cache est réutilisé pour tous les appels futurs, ce qui améliore les performances de l'application en réduisant le nombre de fois que votre fonction doit être initialisée. Pour en savoir plus, consultez la section Améliorer les performances de démarrage avec Lambda SnapStart dans le guide du AWS Lambda développeur.

Type : SnapStart

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est transmise directement à la SnapStart propriété d'une AWS::Lambda::Function ressource.

SourceKmsKeyArn

Représente un ARN de clé KMS utilisé pour chiffrer le code de fonction ZIP du client.

Type : chaîne

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est transmise directement à la SourceKmsKeyArn propriété d'un type de AWS::Lambda::Function Code données.

Tags

Un mappage (chaîne à chaîne) qui spécifie les balises ajoutées à cette fonction. Pour en savoir plus sur les clés et les valeurs valides pour les étiquettes, consultez Exigences relatives à la clé et à la valeur des étiquettes dans le guide du développeur AWS Lambda .

Lorsque la pile est créée, ajoute AWS SAM automatiquement une lambda:createdBy:SAM balise à cette fonction Lambda et aux rôles par défaut générés pour cette fonction.

Type: carte (map)

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est similaire à celle Tags d'une AWS::Lambda::Function ressource. La Tags propriété in AWS SAM est constituée de paires clé-valeur (alors que dans AWS CloudFormation cette propriété, elle consiste en une liste d'Tagobjets). Ajoute également AWS SAM automatiquement une lambda:createdBy:SAM balise à cette fonction Lambda et aux rôles par défaut générés pour cette fonction.

Timeout

La durée maximale en secondes pendant laquelle la fonction peut s'exécuter avant qu'elle ne soit arrêtée.

Type : entier

Obligatoire : non

Par défaut : 3

AWS CloudFormation compatibilité : cette propriété est transmise directement à la Timeout propriété d'une AWS::Lambda::Function ressource.

Tracing

La chaîne qui spécifie le mode de traçage X-Ray de la fonction.

  • Active : active le suivi X-Ray pour la fonction.

  • Disabled : désactive X-Ray pour la fonction.

  • PassThrough : active le suivi X-Ray pour la fonction. La décision d'échantillonnage est déléguée aux services en aval.

Si défini sur Active ou PassThrough et que la propriété Role n'est pas spécifiée, AWS SAM ajoute la stratégie arn:aws:iam::aws:policy/AWSXrayWriteOnlyAccess au rôle d'exécution Lambda qu'il crée pour vous.

Pour plus d'informations sur X-Ray, consultez la section Utiliser AWS Lambda avec AWS X-Ray dans le manuel du AWS Lambda développeur.

Valeurs valides : [Active|Disabled|PassThrough]

Type : chaîne

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est similaire à celle TracingConfig d'une AWS::Lambda::Function ressource.

VersionDescription

Spécifie le champ Description qui est ajouté sur la nouvelle ressource de version Lambda.

Type : chaîne

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est transmise directement à la Description propriété d'une AWS::Lambda::Version ressource.

VpcConfig

La configuration qui permet à cette fonction d'accéder aux ressources privées dans votre VPC (Virtual Private Cloud).

Type : VpcConfig

Obligatoire : non

AWS CloudFormation compatibilité : cette propriété est transmise directement à la VpcConfig propriété d'une AWS::Lambda::Function ressource.

Valeurs renvoyées

Réf

Lorsque l'ID logique de cette ressource est fournie à la fonction intrinsèque Ref, elle renvoie le nom de la ressource Lambda sous-jacente.

Pour plus d'informations sur l'utilisation de la fonction Ref, consultez Ref dans le Guide de l'utilisateur AWS CloudFormation .

Ventilateur : GetAtt

Fn::GetAtt renvoie une valeur pour un attribut de ce type indiqué. Voici les attributs disponibles et des exemples de valeurs de retour.

Pour plus d'informations sur l'utilisation de Fn::GetAtt, consultez Fn::GetAtt dans le Guide de l'utilisateur AWS CloudFormation .

Arn

L'ARN de la fonction Lambda sous-jacente.

Exemples

Fonction simple

Ce qui suit est un exemple basique d'une ressource AWS::Serverless::Function du type de package Zip (par défaut) et du code de fonction dans un compartiment Amazon S3.

YAML

Type: AWS::Serverless::Function Properties: Handler: index.handler Runtime: python3.9 CodeUri: s3://bucket-name/key-name

Exemple de propriétés de fonction

Voici un exemple d'une AWS::Serverless::Function de type de package Zip (par défaut) qui utilise InlineCode, Layers, Tracing, Policies, Amazon EFS, et une source d'événement Api.

YAML

Type: AWS::Serverless::Function DependsOn: MyMountTarget # This is needed if an AWS::EFS::MountTarget resource is declared for EFS Properties: Handler: index.handler Runtime: python3.9 InlineCode: | def handler(event, context): print("Hello, world!") ReservedConcurrentExecutions: 30 Layers: - Ref: MyLayer Tracing: Active Timeout: 120 FileSystemConfigs: - Arn: !Ref MyEfsFileSystem LocalMountPath: /mnt/EFS Policies: - AWSLambdaExecute - Version: '2012-10-17' Statement: - Effect: Allow Action: - s3:GetObject - s3:GetObjectACL Resource: 'arn:aws:s3:::amzn-s3-demo-bucket/*' Events: ApiEvent: Type: Api Properties: Path: /path Method: get

Exemple de ImageConfig

Voici un exemple d'ImageConfig pour une fonction Lambda de type de package Image.

YAML

HelloWorldFunction: Type: AWS::Serverless::Function Properties: PackageType: Image ImageUri: account-id.dkr.ecr.region.amazonaws.com/ecr-repo-name:image-name ImageConfig: Command: - "app.lambda_handler" EntryPoint: - "entrypoint1" WorkingDirectory: "workDir"

RuntimeManagementConfig exemples

Une fonction Lambda configurée pour mettre à jour son environnement d'exécution en fonction du comportement actuel :

TestFunction Type: AWS::Serverless::Function Properties: ... Runtime: python3.9 RuntimeManagementConfig: UpdateRuntimeOn: Auto

Une fonction Lambda configurée pour mettre à jour son environnement d'exécution lorsque la fonction est mise à jour :

TestFunction Type: AWS::Serverless::Function Properties: ... Runtime: python3.9 RuntimeManagementConfig: UpdateRuntimeOn: FunctionUpdate

Une fonction Lambda configurée pour mettre à jour manuellement son environnement d'exécution :

TestFunction Type: AWS::Serverless::Function Properties: ... Runtime: python3.9 RuntimeManagementConfig: RuntimeVersionArn: arn:aws:lambda:us-east-1::runtime:4c459dd0104ee29ec65dcad056c0b3ddbe20d6db76b265ade7eda9a066859b1e UpdateRuntimeOn: Manual

Exemples SnapStart

Exemple de fonction Lambda SnapStart activée pour les futures versions :

TestFunc Type: AWS::Serverless::Function Properties: ... SnapStart: ApplyOn: PublishedVersions

Sur cette page

Rubrique suivante :

DeadLetterQueue

Rubrique précédente :

SourceReference
ConfidentialitéConditions d'utilisation du sitePréférences de cookies
© 2025, Amazon Web Services, Inc. ou ses affiliés. Tous droits réservés.