# AWS Lambda Core

<!-- llms-txt-link: /llms.txt -->

> OpenTelemetry Java agent instrumentation

Provides lightweight instrumentation of the Lambda core library, supporting all versions. It generates FaaS server spans with the `faas.invocation_id` attribute. Use this package if you only use `RequestStreamHandler` or know you don't use any event classes from `aws-lambda-java-events`. This also includes when you are using `aws-serverless-java-container` to run e.g., a Spring Boot application on Lambda.
For custom wrappers when using library instrumentation, you can configure the `OTEL_INSTRUMENTATION_AWS_LAMBDA_HANDLER` environment variable to contain your lambda handler method (in the format `package.ClassName::methodName`) and use one of wrappers as your lambda `Handler`.

- **Name**: `aws-lambda-core-1.0`
- **Scope**: `io.opentelemetry.aws-lambda-core-1.0`
- **Target versions**: `com.amazonaws:aws-lambda-java-core:[1.0.0,)`
- **Library**: https://docs.aws.amazon.com/lambda/latest/dg/java-handler.html

## Telemetry

- **Span attributes**: `faas.invocation_id`

## Configuration

| Option | Type | Default | Description |
| --- | --- | --- | --- |
| `otel.instrumentation.aws-lambda.flush-timeout` | int | 10000 | Flush timeout in milliseconds. |

## Data

- **JSON**: [/data/javaagent/instrumentations/aws-lambda-core-1.0/aws-lambda-core-1.0-56a1d7dd84c1.json](/data/javaagent/instrumentations/aws-lambda-core-1.0/aws-lambda-core-1.0-56a1d7dd84c1.json)
- **Explore**: [/java-agent/instrumentation/aws-lambda-core-1.0](/java-agent/instrumentation/aws-lambda-core-1.0)
