Usar o objeto de contexto do Lambda para recuperar informações das funções em Node.js - AWS Lambda

Usar o objeto de contexto do Lambda para recuperar informações das funções em Node.js

Quando o Lambda executa a função, ele transmite um objeto de contexto para o handler. Esse objeto fornece métodos e propriedades que fornecem informações sobre a invocação, a função e o ambiente de execução.

Métodos de contexto
  • getRemainingTimeInMillis(): retorna o número de milissegundos restantes antes do tempo limite da execução.

Propriedades de contexto
  • functionName: o nome da função do Lambda.

  • functionVersion: a versão da função.

  • invokedFunctionArn: o nome do recurso da Amazon (ARN) usado para invocar a função. Indica se o invocador especificou um alias ou número de versão.

  • memoryLimitInMB: a quantidade de memória alocada para a função.

  • awsRequestId: o identificador da solicitação de invocação.

  • logGroupName: o grupo de logs da função.

  • logStreamName: a transmissão de log para a instância da função.

  • identity: (aplicativos móveis) informações sobre a identidade do Amazon Cognito que autorizou a solicitação.

    • cognitoIdentityId: a identidade autenticada do Amazon Cognito.

    • cognitoIdentityPoolId: o grupo de identidades do Amazon Cognito que autorizou a invocação.

  • clientContext: (aplicativos móveis) contexto do cliente fornecido ao Lambda pela aplicação cliente.

    • 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: os valores personalizados que são definidos pela aplicação cliente.

  • callbackWaitsForEmptyEventLoop: definido como falso para enviar a resposta imediatamente quando o retorno de chamada é executado, em vez de aguardar até que o loop de eventos do Node.js esteja vazio. Se for falso, todos os eventos pendentes continuarão a ser executados durante a próxima invocação.

O exemplo a seguir registra informações de contexto da função e retorna a localização dos logs.

exemplo Arquivo index.js
exports.handler = async function(event, context) { console.log('Remaining time: ', context.getRemainingTimeInMillis()) console.log('Function name: ', context.functionName) return context.logStreamName }