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

Add router log events for client terminating connections (broken pipe) and timeouts #4569

Closed
ebylund opened this issue Jan 30, 2024 · 1 comment · Fixed by #4770
Closed
Assignees

Comments

@ebylund
Copy link
Contributor

ebylund commented Jan 30, 2024

Is your feature request related to a problem? Please describe.
When a client closes it's connection to the router before subgraphs have been able to respond, the router gives no details about what has happened. The same things happens during timeouts

Describe the solution you'd like
Have the router log two types of events where it is currently silent:

  • On timeouts.
  • When clients close the connection to the router before subgraphs have responded.
@BrynCooke
Copy link
Contributor

BrynCooke commented Feb 1, 2024

#4320 and #4083 would likely be part of the solution.

@Geal Geal self-assigned this Mar 12, 2024
Geal added a commit that referenced this issue Mar 26, 2024
…on (#4770)

Fix #4569
Fix #4576
Fix #4589
Fix #4590
Fix #4611

When the client closes the connection prematurely, it drops the entire
request handling task, which means that it won't go through the entire
response pipeline, where we record the operation and handle telemetry.
Some users also have additional steps with rhai or coprocessors where
they add metadata, and those steps should run even on canceled requests.
This moves the request handling to a separate task to make sure it runs,
but it also skips subgraph requests if we detected that the client
closed the connection, to prevent unneeded traffic.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants