Seleziona le tue preferenze relative ai cookie

Utilizziamo cookie essenziali e strumenti simili necessari per fornire il nostro sito e i nostri servizi. Utilizziamo i cookie prestazionali per raccogliere statistiche anonime in modo da poter capire come i clienti utilizzano il nostro sito e apportare miglioramenti. I cookie essenziali non possono essere disattivati, ma puoi fare clic su \"Personalizza\" o \"Rifiuta\" per rifiutare i cookie prestazionali.

Se sei d'accordo, AWS e le terze parti approvate utilizzeranno i cookie anche per fornire utili funzionalità del sito, ricordare le tue preferenze e visualizzare contenuti pertinenti, inclusa la pubblicità pertinente. Per continuare senza accettare questi cookie, fai clic su \"Continua\" o \"Rifiuta\". Per effettuare scelte più dettagliate o saperne di più, fai clic su \"Personalizza\".

Utilizzo dell'oggetto del contesto Lambda per recuperare le informazioni sulla funzione C#

Modalità Focus
Utilizzo dell'oggetto del contesto Lambda per recuperare le informazioni sulla funzione C# - AWS Lambda

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Quando Lambda esegue la funzione, passa un oggetto Context al gestore. Questo oggetto fornisce proprietà con informazioni sulla chiamata, sulla funzione e sull'ambiente di esecuzione.

Proprietà del contesto
  • FunctionName: il nome della funzione Lambda.

  • FunctionVersion: la versione della funzione.

  • InvokedFunctionArn: l'Amazon Resource Name (ARN) utilizzato per richiamare la funzione. Indica se l'invoker ha specificato un numero di versione o un alias.

  • MemoryLimitInMB: la quantità di memoria allocata per la funzione.

  • AwsRequestId: l'identificatore della richiesta di invocazione.

  • LogGroupName: il gruppo di log per la funzione.

  • LogStreamName: il flusso di log per l'istanza della funzione.

  • RemainingTime (TimeSpan): il numero di millisecondi rimasti prima del timeout dell'esecuzione.

  • Identity: (app per dispositivi mobili) Informazioni relative all'identità Amazon Cognito che ha autorizzato la richiesta.

  • ClientContext: (app per dispositivi mobili) Contesto client fornito a Lambda dall'applicazione client.

  • Logger L'oggetto logger per la funzione.

Puoi utilizzare le informazioni riportate nell'oggetto ILambdaContext per generare informazioni sull'invocazione della funzione a scopo di monitoraggio. Il seguente codice fornisce un esempio di come aggiungere informazioni di contesto a un framework di registrazione strutturato. In questo esempio, la funzione aggiunge AwsRequestId agli output di log. La funzione utilizza anche la proprietà RemainingTime per annullare un'attività in transito se il timeout della funzione Lambda sta per essere raggiunto.

[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(); } } }
PrivacyCondizioni del sitoPreferenze cookie
© 2025, Amazon Web Services, Inc. o società affiliate. Tutti i diritti riservati.