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

CDK Collecting Additional Metadata #33260

Closed
2 tasks
GavinZZ opened this issue Jan 31, 2025 · 2 comments · Fixed by #33232
Closed
2 tasks

CDK Collecting Additional Metadata #33260

GavinZZ opened this issue Jan 31, 2025 · 2 comments · Fixed by #33232
Labels
feature-request A feature should be added or improved. p1

Comments

@GavinZZ
Copy link
Contributor

GavinZZ commented Jan 31, 2025

Describe the feature

Expand the scope of usage data collected by the AWS CDK to better inform CDK development and improve communication for customer-impacting topics. Currently, for those that opt in, the CDK collects usage data on your CDK version and which L2 constructs you use. For more information on current CDK behavior, see Version Reporting.

Use Case

Collecting this additional usage data provides the following benefits:

  • Improve the scope and speed of customer-impacting communication - The CDK team regularly communicates security concerns, emerging issues, deprecation notices, and other topics that could impact your applications. Additional L2 construct usage data collection helps us identify affected CDK applications more precisely and communicate with you faster.
  • Better prioritize and plan CDK development - Additional usage data helps us understand how you use L2 constructs and guides our development priorities. This data can inform us on which constructs need more development resources and will provide insight when planning deprecation timelines and alternative solutions based on actual usage patterns.

Proposed Solution

Proposal

This discussion aims to expand the scope of usage data collected by the AWS CDK to better inform CDK development and improve communication for customer-impacting topics. Currently, for those that opt in, the CDK collects usage data on your CDK version and which L2 constructs you use. For more information on current CDK behavior, see Version Reporting.

This proposal expands the scope of usage data collection to include the following from L2 constructs defined in CDK applications:

  • CDK-defined property keys - When you use a built-in property of an L2 construct, the property key will be collected. This includes built-in property keys nested in dictionary objects.
  • Boolean and enum property values from CDK-defined property keys- For CDK-defined property keys, property values of only Boolean and enum types will be collected. All other types, such as string values or construct references will be redacted.
  • Method name, keys, and property values of Boolean and ENUM types - When you use an L2 construct method, we will collect the method name, property keys, and property values of Boolean and enum types.

For property keys and values that you uniquely create, the entire object will be redacted. For example, if you use InlineApiDefinition to define an OpenAPI specification and pass it into a RestApi construct, the entire InlineApiDefinition object will be redacted. For an example, see Appendix.

Scope

This change will be introduced in a future CDK version release targeted for February 15, 2025 with the following behavior:

  • New and current apps that opt out of version reporting - Any new or existing app that opts out through the current method of using the versionReporting configuration file flag or --no-version-reporting command line option will be automatically opted out of the additional usage data collection. However, we encourage you to opt in if possible due to the benefits of reporting this data.
  • New apps created by the new CDK version - These apps will be opted in by default. However, you can choose to opt out, using the current feature flag method if you prefer.
  • Current apps using the new CDK version - Apps that are currently opted in to reporting will not be automatically opted in to increased data collection, even if you are using the new CDK version. Instead, we will provide a feature flag that you can use to opt in to increased data collection in your current apps.

Other Information

See relevant discussion post #33198

Acknowledgements

  • I may be able to implement this feature request
  • This feature might incur a breaking change

CDK version used

N/A

Environment details (OS name and version, etc.)

N/A

@GavinZZ GavinZZ added feature-request A feature should be added or improved. p1 labels Jan 31, 2025
@GavinZZ GavinZZ changed the title core: CDK Collecting Additional Metadata CDK Collecting Additional Metadata Jan 31, 2025
@GavinZZ GavinZZ closed this as completed in 6b9e47a Feb 1, 2025
Copy link

github-actions bot commented Feb 1, 2025

Comments on closed issues and PRs are hard for our team to see.
If you need help, please open a new issue that references this one.

1 similar comment
Copy link

github-actions bot commented Feb 1, 2025

Comments on closed issues and PRs are hard for our team to see.
If you need help, please open a new issue that references this one.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Feb 1, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
feature-request A feature should be added or improved. p1
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant