

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Menggunakan objek konteks Lambda untuk mengambil informasi fungsi Rust
<a name="rust-context"></a>

Ketika Lambda menjalankan fungsi Anda, ia menambahkan objek konteks ke LambdaEvent yang diterima [handler](rust-handler.md). Objek ini menyediakan properti dengan informasi tentang lingkungan invokasi, fungsi, dan eksekusi.

**Properti konteks**
+  `request_id`: ID AWS permintaan yang dihasilkan oleh layanan Lambda. 
+  `deadline`: Batas waktu eksekusi untuk pemanggilan saat ini dalam milidetik.
+  `invoked_function_arn`: Nama Sumber Daya Amazon (ARN) dari fungsi Lambda yang dipanggil.
+  `xray_trace_id`: ID AWS X-Ray jejak untuk pemanggilan saat ini. 
+  `client_content`: Objek konteks klien yang dikirim oleh SDK AWS seluler. Bidang ini kosong kecuali fungsi dipanggil menggunakan SDK AWS seluler. 
+  `identity`: Identitas Amazon Cognito yang memanggil fungsi. Bidang ini kosong kecuali permintaan pemanggilan ke Lambda APIs dibuat menggunakan AWS kredensil yang dikeluarkan oleh kumpulan identitas Amazon Cognito.
+  `env_config`: Konfigurasi fungsi Lambda dari variabel lingkungan lokal. Properti ini mencakup informasi seperti nama fungsi, alokasi memori, versi, dan aliran log.

## Mengakses informasi konteks aktif
<a name="rust-context-invoke"></a>

Fungsi Lambda memiliki akses ke metadata tentang lingkungan mereka dan permintaan invokasi. `LambaEvent`Objek yang diterima oleh penangan fungsi Anda mencakup `context` metadata:

```
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
}
```