-
Notifications
You must be signed in to change notification settings - Fork 92
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
feat: add checked socket exhaustion warning when throughput is slow #1164
Conversation
0c8b150
to
a47f1c3
Compare
/** | ||
* Delay before the NodeHttpHandler checks for socket exhaustion, | ||
* and emits a warning if the active sockets and enqueued request count is greater than | ||
* 2x the maxSockets count. | ||
* | ||
* Defaults to connectionTimeout + requestTimeout or 3000ms if those are not set. | ||
*/ | ||
socketAcquisitionWarningTimeout?: number; |
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.
Same comment as before, can we mark this with @internal
?
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.
Alternatives are to not let this timeout be configurable, or have a different opt-in to the warning.
Since users are dealing with a mysterious process exit, having the log output without opt-in I think would be better for their debugging experience.
This causes generalui/s3p#89 |
Addresses aws/aws-sdk-js-v3#3560
This PR adds a warning:
Where
X
is the configured maxSockets for the Node http(s) agent, andY
is the number of open requests.This warning is emitted in the following situation:
socketAcquisitionWarningTimeout ?? connectTimeout + requestTimeout
to complete.maxSockets
maxSockets
Notes: