-
Notifications
You must be signed in to change notification settings - Fork 187
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
add: request information header interceptors and plugins #2641
Conversation
rust-runtime/aws-smithy-runtime/src/client/orchestrator/interceptors/service_clock_skew.rs
Outdated
Show resolved
Hide resolved
rust-runtime/aws-smithy-runtime/src/client/orchestrator/interceptors/service_clock_skew.rs
Outdated
Show resolved
Hide resolved
|
||
fn build_ttl_pair(&self, cfg: &ConfigBag) -> Option<(Cow<'static, str>, Cow<'static, str>)> { | ||
let timeout_config = cfg.get::<TimeoutConfig>()?; | ||
let socket_read = timeout_config.read_timeout()?; |
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.
Is this right? Seems like it needs to factor in multiple possible timeouts.
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.
The internal-only spec for this specifies the calculation this way.
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. |
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. |
This is currently blocked on fixing how the orchestrator retries are triggered. |
This PR fell through the cracks. It's ready to be merged, so I've put it in the queue. |
A new generated diff is ready to view.
A new doc preview is ready to view. |
## Motivation and Context <!--- Why is this change required? What problem does it solve? --> <!--- If it fixes an open issue, please link to the issue here --> #1793 ## Description <!--- Describe your changes in detail --> This adds a runtime plugin which provides support for a request info header. The plugin depends upon three interceptors: - `ServiceClockSkewInterceptor` - tracks the approximate latency between the client and server - `RequestAttemptsInterceptor` - tracks the number of attempts made for a single operation - `RequestInfoInterceptor` - adds request metadata to outgoing requests. Works by setting a header. ## Testing <!--- Please describe in detail how you tested your changes --> <!--- Include details of your testing environment, and the tests you ran to --> <!--- see how your change affects other areas of the code, etc. --> I wrote one test but need to implement several more ---- _By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice._
## Motivation and Context <!--- Why is this change required? What problem does it solve? --> <!--- If it fixes an open issue, please link to the issue here --> #1793 ## Description <!--- Describe your changes in detail --> This adds a runtime plugin which provides support for a request info header. The plugin depends upon three interceptors: - `ServiceClockSkewInterceptor` - tracks the approximate latency between the client and server - `RequestAttemptsInterceptor` - tracks the number of attempts made for a single operation - `RequestInfoInterceptor` - adds request metadata to outgoing requests. Works by setting a header. ## Testing <!--- Please describe in detail how you tested your changes --> <!--- Include details of your testing environment, and the tests you ran to --> <!--- see how your change affects other areas of the code, etc. --> I wrote one test but need to implement several more ---- _By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice._
## Motivation and Context <!--- Why is this change required? What problem does it solve? --> <!--- If it fixes an open issue, please link to the issue here --> #1793 ## Description <!--- Describe your changes in detail --> This adds a runtime plugin which provides support for a request info header. The plugin depends upon three interceptors: - `ServiceClockSkewInterceptor` - tracks the approximate latency between the client and server - `RequestAttemptsInterceptor` - tracks the number of attempts made for a single operation - `RequestInfoInterceptor` - adds request metadata to outgoing requests. Works by setting a header. ## Testing <!--- Please describe in detail how you tested your changes --> <!--- Include details of your testing environment, and the tests you ran to --> <!--- see how your change affects other areas of the code, etc. --> I wrote one test but need to implement several more ---- _By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice._
Motivation and Context
#1793
Description
This adds a runtime plugin which provides support for a request info header.
The plugin depends upon three interceptors:
ServiceClockSkewInterceptor
- tracks the approximate latency between the client and serverRequestAttemptsInterceptor
- tracks the number of attempts made for a single operationRequestInfoInterceptor
- adds request metadata to outgoing requests. Works by setting a header.Testing
I wrote one test but need to implement several more
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.