Utilizzo dell'oggetto contestuale Lambda per recuperare le informazioni sulla funzione Rust
Nota
Il client di runtime Rust
Quando Lambda esegue la funzione, aggiunge un oggetto di contesto al LambdaEvent ricevuto dal gestore. Questo oggetto fornisce proprietà con informazioni sulla chiamata, sulla funzione e sull'ambiente di esecuzione.
Proprietà del contesto
-
request_id: l'ID della richiesta AWS generata dal servizio Lambda. -
deadline: la scadenza di esecuzione per la chiamata corrente in millisecondi. -
invoked_function_arn: il nome della risorsa Amazon (ARN) della funzione Lambda da richiamare. -
xray_trace_id: l'ID della traccia AWS X-Ray della chiamata corrente. -
client_content: l'oggetto di contesto del client inviato dall'SDK AWS per dispositivi mobili. Questo campo è vuoto a meno che la funzione non venga richiamata utilizzando un SDK AWS per dispositivi mobili. -
identity: l'identità Amazon Cognito che ha richiamato la funzione. Questo campo è vuoto a meno che la richiesta di chiamata alle API Lambda non sia stata effettuata utilizzando le credenziali AWS emesse dai pool di identità di Amazon Cognito. -
env_config: la configurazione della funzione Lambda in base alle variabili di ambiente locali. Questa proprietà include informazioni come il nome della funzione, l'allocazione della memoria, la versione e i flussi di log.
Accesso alle informazioni relative al contesto di invocazione
Le funzioni Lambda hanno accesso ai metadata relativi al loro ambiente e alla richiesta di invocazione. L'oggetto LambaEvent ricevuto dal gestore delle funzioni include i metadati 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 }