Project

General

Profile

Actions

Feature #15318

closed

[API] Include X-Request-Id value in every RailsAPI error message

Added by Ward Vandewege over 5 years ago. Updated almost 5 years ago.

Status:
Resolved
Priority:
Normal
Assigned To:
Category:
-
Target version:
Start date:
07/10/2019
Due date:
% Done:

100%

Estimated time:
(Total: 0.00 h)
Story points:
1.0
Release relationship:
Auto

Description

Background:
  • 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.


Subtasks 1 (0 open1 closed)

Task #15388: Review 15318-ReqIds-on-api-errorsResolvedPeter Amstutz07/10/2019

Actions
Actions

Also available in: Atom PDF