[Lambda Java v2.11.x] Merge All Code Changes from v1.33.x Branch into v2.11.x #1114
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This change merges all private Lambda Java updates from the v1.33 branch into the v2.11.x branch. I performed a 'git rebase v2.11' on the v1.33 branch, reviewed all changes, and completed the build and testing process. The resulting Lambda layer generated trace data identical to the version built directly from the v2.11.x branch (excluding this PR).
Here is the list of all migrated PRs:
Build layer during CI/CD workflows + some minor refactoring #989
support java11 runtime for lambda #1001
Unique artifact names for upload and merge for download #1014
Bug fixes] Lambda - duplicate lambda spans + appsignals from unsampled spans #1000
Fix: Lambda Topology Issue (#1016)
Fix: Lambda Topology Issue (#1016) #1085
feat: Support microservice span in Lambda Java environment. #1053
Test
Tested Java11, 17, and 21 Lambda functions. Manually tested PR-1000 and PR-1053. Both work as expected in the v2.11 branch. MicroService (SpringBoot) support works well. I verified attribute Trace.lambda.multiple server can be found in the Lambda server span, once we have Servlet instrumentation enabled with OTEL_INSTRUMENTATION_SERVLET_ENABLED.
Note: The changes in the patch files are not included in this PR. They should have been reviewed and incorporated as part of this migration:
Upgrade Java Lambda Layer to 2.x #1076
Lambda with SpringBoot MicroService:

Service Map and added microservice attribute 'Trace.lambda.multiple server'.

AppSignals

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.