benchttp/runner

Implement proper error handling for request recording

Closed this issue · 0 comments

Description

At the moment, an error occurring while recording a request is always send to Requester.records channel.

r.records <- Record{Error: err}

We should probably do it better.

Tasks

  • handle semimpl/dispatcher internal error gracefully
  • handle requester internal error gracefully: failed create a request, failed to send the request, failed to read the response, ...
  • evaluate the severity of each error and handle them appropriately

Suggestions

We should recover as much as possible (failing to do one request should not crash the whole program).
We could silence all these errors but I think it would be better to keep track of what happened. Implementation details to define.