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

Utilisation de l’objet de contexte Lambda pour récupérer les informations de la fonction C#

Mode de mise au point
Utilisation de l’objet de contexte Lambda pour récupérer les informations de la fonction C# - 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.

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.

Lorsque Lambda exécute votre fonction, il transmet un objet de contexte au gestionnaire. Cet objet fournit les propriétés avec des informations sur l'appel, la fonction et l'environnement d'exécution.

Propriétés du contexte
  • FunctionName – Nom de la fonction Lambda.

  • FunctionVersionVersion de la fonction.

  • InvokedFunctionArn – Amazon Resource Name (ARN) utilisé pour appeler la fonction. Indique si l’appelant a spécifié un numéro de version ou un alias.

  • MemoryLimitInMB – Quantité de mémoire allouée à la fonction.

  • AwsRequestId – Identifiant de la demande d’invocation.

  • LogGroupName – Groupe de journaux pour la fonction.

  • LogStreamName – Flux de journal de l'instance de fonction.

  • RemainingTime (TimeSpan) – Nombre de millisecondes restant avant l'expiration de l'exécution.

  • Identity – (applications mobiles) Informations sur l'identité Amazon Cognito qui a autorisé la demande.

  • ClientContext – (applications mobiles) Contexte client fourni à Lambda par l'application client.

  • Logger L'objet enregistreur d'événements pour la fonction.

Vous pouvez utiliser les informations contenues dans l'objet ILambdaContext pour générer des informations sur l'invocation de votre fonction à des fins de contrôle. Le code suivant montre comment ajouter des informations contextuelles à un cadre de journalisation structuré. Dans cet exemple, la fonction ajoute AwsRequestId aux sorties du journal. La fonction utilise également la propriété RemainingTime pour annuler une tâche en vol si le délai d'attente de la fonction Lambda est sur le point d'être atteint.

[assembly: LambdaSerializer(typeof(Amazon.Lambda.Serialization.SystemTextJson.DefaultLambdaJsonSerializer))] namespace GetProductHandler; public class Function { private readonly IDatabaseRepository _repo; public Function() { this._repo = new DatabaseRepository(); } public async Task<APIGatewayProxyResponse> FunctionHandler(APIGatewayProxyRequest request, ILambdaContext context) { Logger.AppendKey("AwsRequestId", context.AwsRequestId); var id = request.PathParameters["id"]; using var cts = new CancellationTokenSource(); try { cts.CancelAfter(context.RemainingTime.Add(TimeSpan.FromSeconds(-1))); var databaseRecord = await this._repo.GetById(id, cts.Token); return new APIGatewayProxyResponse { StatusCode = (int)HttpStatusCode.OK, Body = JsonSerializer.Serialize(databaseRecord) }; } catch (Exception ex) { return new APIGatewayProxyResponse { StatusCode = (int)HttpStatusCode.InternalServerError, Body = JsonSerializer.Serialize(new { error = ex.Message }) }; } finally { cts.Cancel(); } } }

Rubrique suivante :

Journalisation

Rubrique précédente :

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