Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feature request: make cold start aware of Provisioned Concurrency #833

Closed
2 tasks done
hjgraca opened this issue Apr 7, 2025 · 0 comments · Fixed by #834
Closed
2 tasks done

Feature request: make cold start aware of Provisioned Concurrency #833

hjgraca opened this issue Apr 7, 2025 · 0 comments · Fixed by #834
Assignees
Labels
area/logging Core logging utility area/metrics Core metrics utility area/tracing Core tracing utility feature-request New or enhancements to existing features pending-release Fix or implementation already in dev waiting to be released

Comments

@hjgraca
Copy link
Contributor

hjgraca commented Apr 7, 2025

Use case

When using Provisioned Concurrency (PC) in AWS Lambda, the service initializes and keeps active a number of execution environments so that a portion of the requests can be served by these already-warm environments.

As a Powertools for AWS customer using PC, I'd like the cold start metric, log key, and tracer annotation to correctly reflect whether a request is a cold start or not - which is not currently the case.

Solution/User Experience

Currently Logger, Metrics, and Tracer are not aware of Provisioned Concurrency (PC) because the state required to report cold starts in all of them is maintained internally and is dependent on the amount of requests seen by the utility.

Lambda provides an environment variable AWS_LAMBDA_INITIALIZATION_TYPE that can have two values in the .NET runtime: provisioned-concurrency or on-demand.

We could use this value to tweak our cold start detection logic to report a non-cold start (aka warm start) whenever PC is enabled.

This should not require any code changes from customers besides upgrading the packages to the latest version.

Alternative solutions

Acknowledgment

@hjgraca hjgraca added area/logging Core logging utility area/metrics Core metrics utility area/tracing Core tracing utility feature-request New or enhancements to existing features labels Apr 7, 2025
@hjgraca hjgraca self-assigned this Apr 7, 2025
@hjgraca hjgraca linked a pull request Apr 7, 2025 that will close this issue
7 tasks
@github-actions github-actions bot added the pending-release Fix or implementation already in dev waiting to be released label Apr 8, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/logging Core logging utility area/metrics Core metrics utility area/tracing Core tracing utility feature-request New or enhancements to existing features pending-release Fix or implementation already in dev waiting to be released
Projects
Status: No status
Development

Successfully merging a pull request may close this issue.

1 participant