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 }