Feature #15318
closed[API] Include X-Request-Id value in every RailsAPI error message
Description
- Some SDKs (including Python) send an X-Request-Id value with each API request, but the calling application doesn't necessarily report it to the user.
- Controller adds an X-Request-Id value to each request if the caller didn't supply one -- so every RailsAPI request has an X-Request-Id value.
- Each RailsAPI error response has an "error token" value generated by RailsAPI, which is meant to help correlate client-reported errors with RailsAPI server logs. However, the calling application doesn't necessarily report this to the user along with the error message.
Improvement: Every RailsAPI error response should include the current X-Request-Id value in the message text.
This way, even tools that only display the error message itself without response metadata -- e.g., arvados-cwl-runner -- will convey the request ID to the user, and ops can use that error report to grep RailsAPI, controller, and nginx logs for related entries.
Updated by Tom Clegg over 5 years ago
- Subject changed from [API] expose requestID when Rails throws an error that is reported to a client. This should expose requestID when a-c-r errors out. to [API] Include X-Request-Id value in every RailsAPI error message
- Description updated (diff)
Updated by Tom Morris over 5 years ago
- Target version changed from To Be Groomed to Arvados Future Sprints
Updated by Tom Morris over 5 years ago
- Target version changed from Arvados Future Sprints to 2019-07-03 Sprint
Updated by Lucas Di Pentima over 5 years ago
- Assigned To set to Lucas Di Pentima
Updated by Lucas Di Pentima over 5 years ago
- Target version changed from 2019-07-03 Sprint to 2019-07-17 Sprint
Updated by Lucas Di Pentima over 5 years ago
- Status changed from New to In Progress
Updated by Lucas Di Pentima over 5 years ago
Updates at ae3c4f3be - branch 15318-ReqIds-on-api-errors
Test run: https://ci.curoverse.com/job/developer-run-tests/1379/
- Adds X-Request-Id's value at the end of every error message.
- Tests updated
Updated by Lucas Di Pentima over 5 years ago
Updates at c45edd611
Test run: https://ci.curoverse.com/job/developer-run-tests/1380/
WB Integration tests retry: https://ci.curoverse.com/job/developer-run-tests-apps-workbench-integration/1438/
Updated some go component tests to match error message with trailing request ids.
Updated by Peter Amstutz over 5 years ago
Lucas Di Pentima wrote:
Updates at c45edd611
Test run: https://ci.curoverse.com/job/developer-run-tests/1380/
WB Integration tests retry: https://ci.curoverse.com/job/developer-run-tests-apps-workbench-integration/1438/Updated some go component tests to match error message with trailing request ids.
This LGTM
Updated by Lucas Di Pentima over 5 years ago
- Status changed from In Progress to Resolved
Applied in changeset arvados|b36138dd447b5ff557cfbb0e00c28899a9c3af17.