Utilizzo dell'oggetto contestuale Lambda per recuperare informazioni TypeScript sulla funzione - 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à.

Utilizzo dell'oggetto contestuale Lambda per recuperare informazioni TypeScript sulla funzione

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

Metodi del contesto
  • getRemainingTimeInMillis(): restituisce il numero di millisecondi rimasti prima del timeout dell'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.

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

    • cognitoIdentityId: l'identità autenticata di Amazon Cognito.

    • cognitoIdentityPoolId: il pool di identità Amazon Cognito che ha autorizzato l'invocazione.

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

    • client.installation_id

    • client.app_title

    • client.app_version_name

    • client.app_version_code

    • client.app_package_name

    • env.platform_version

    • env.platform

    • env.make

    • env.model

    • env.locale

    • Custom: valori personalizzati impostati dall'applicazione mobile.

  • callbackWaitsForEmptyEventLoop: imposta su false per inviare immediatamente la risposta quando viene eseguito il callback anziché attendere che il ciclo di eventi Node.js sia vuoto. Se impostato su false, tutti gli eventi in sospeso rimarranno in esecuzione durante la successiva chiamata.

Puoi usare il pacchetto npm @types/aws-lambda per lavorare con l'oggetto di contesto.

Esempio File index.js

La seguente funzione di esempio registra le informazioni di contesto e restituisce la posizione dei log.

Nota

Prima di utilizzare questo codice in una funzione Lambda, devi aggiungere il pacchetto @types/aws-lambda come dipendenza di sviluppo. Questo pacchetto contiene le definizioni dei tipi per Lambda. Quando è installato @types/aws-lambda, l’istruzione import (import ... from 'aws-lambda') importa le definizioni dei tipi. Non importa il aws-lambda NPM pacchetto, che è uno strumento di terze parti non correlato. Per ulteriori informazioni, consulta aws-lambda nel repository. DefinitelyTyped GitHub

import { Context } from 'aws-lambda'; export const lambdaHandler = async (event: string, context: Context): Promise<string> => { console.log('Remaining time: ', context.getRemainingTimeInMillis()); console.log('Function name: ', context.functionName); return context.logStreamName; };