Usar o objeto de contexto do Lambda para recuperar informações das funções em Rust
nota
O cliente runtime do Rust
Quando o Lambda executa sua função, ele adiciona um objeto de contexto ao LambdaEvent que o manipulador recebe. Esse objeto fornece propriedades com informações sobre a invocação, a função e o ambiente de execução.
Propriedades de contexto
-
request_id
: o ID da solicitação AWS gerado pelo serviço Lambda. -
deadline
: o prazo de execução da invocação atual, em milissegundos. -
invoked_function_arn
: o nome do recurso da Amazon (ARN) da função do Lambda sendo invocada. -
xray_trace_id
: o ID de rastreamento do AWS X-Ray da invocação atual. -
client_content
: o objeto de contexto do cliente enviado pelo SDK móvel da AWS. Este campo está vazio, a menos que a função seja invocada usando um SDK móvel da AWS. -
identity
: a identidade do Amazon Cognito que invocou a função. Este campo está vazio, a menos que a solicitação de invocação às APIs do Lambda tenha sido feita usando credenciais da AWS emitidas pelos grupos de identidade do Amazon Cognito. -
env_config
: a configuração da função do Lambda a partir das variáveis de ambiente locais. Essa propriedade inclui informações como nome da função, alocação de memória, versão e fluxos de log.
Acessar informações do contexto de invocação
As funções do Lambda têm acesso aos metadados sobre seu ambiente e a solicitação da invocação. O objeto LambaEvent
que seu manipulador de funções recebe inclui os metadados context
:
use lambda_runtime::{service_fn, LambdaEvent, Error}; use serde_json::{json, Value}; async fn handler(event: LambdaEvent<Value>) -> Result<Value, Error> { let invoked_function_arn = event.context.invoked_function_arn; Ok(json!({ "message": format!("Hello, this is function {invoked_function_arn}!") })) } #[tokio::main] async fn main() -> Result<(), Error> { lambda_runtime::run(service_fn(handler)).await }