-
Notifications
You must be signed in to change notification settings - Fork 197
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
Allow User Agent to accept business metrics #3781
Conversation
A new generated diff is ready to view.
A new doc preview is ready to view. |
A new generated diff is ready to view.
A new doc preview is ready to view. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Overall looks good, couple questions.
could cause many connection recording tests to fail and may also break semver check in CI just like the #3620 needed to be disabled to work around it)
-
What's our strategy here for predictable UA strings in tests?
-
Features and metrics are only really known at runtime, how is the UA string manipulated dynamically? e.g. how would an interceptor or other feature set metrics? It might be helpful to think through for all of the metrics we currently could support to see how they would be able to do this.
Good question. As we briefly discussed offline, it's likely we add a new tests verification utility to not compare actual vs. expected for user-agent strings for all of the connection recording tests (maybe do so only for Kotlin integ tests that do not have AWS codegen decorators).
An interceptor that's relevant to the feature in question most likely extracts |
A new generated diff is ready to view.
A new doc preview is ready to view. |
Motivation and Context
This PR lays the groundwork for emitting and tracking business metrics related to features like waiters, request compression, and S3 express within the Rust SDKs. It introduces
BusinessMetric
to theuser_agent
module and updatesAwsUserAgent
to support its integration.Description
While establishing the groundwork for the said motivation, this PR does not send metrics from features yet.
The PR deprecates existing feature and config metadata, which are now superseded by the new business metrics.
Related tasks include
ua/2.0
(note that including a user agent version string tox-amz-user-agent
could cause many connection recording tests to fail and may also break semver check in CI just like the content-length enforcement test needed to be disabled to work around it)x-amz-user-agent
in connection recording tests, so the argument above applies)Testing
BusinessMetric
andAwsUserAgent
Checklist
.changelog
directory, specifying "aws-sdk-rust" in theapplies_to
key.By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.