-
Notifications
You must be signed in to change notification settings - Fork 2
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
Implement request IDs to trace errors #1072
Comments
This should also be passed to the preprocessing pipeline, which can then return the id back to the backend |
The lifetime of such a request ID should be one request (and not longer). We want to be able to trace single request by filtering logs by the ID. I think we should not pass it into the preprocessing pipeline, but of course we can think of another way to identify backend calls issued by one preprocessing run (e.g. by logging the request ids that were returned to the pipeline when pulling the data and submitting the results). |
Right, I misunderstood the scope of this. Would it still be useful to somehow have an id associated with each iteration of the preprocessing loop. It should originate from the preprocessing pipeline? It generates a UUID, attaches that to the |
I think we don't need that here, since the preprocessing pipeline doesn't do anything in parallel (or does it?). So the logs of one run are in order anyway. The backend would then return a request id on every call, which can be written to the preprocessing log. IMO that's good enough and requires minimal effort. |
…acts in logs resolves #1072
…acts in logs resolves #1072
…acts in logs resolves #1072
We should implement something that makes tracing requests in log files easier. When there are many concurrent requests, it's impossible to see which message belongs to which request.
I propose to implement request ids similar to what we did in LAPIS: GenSpectrum/LAPIS#586. This should be done in the website server and in the backend. Whenever there is already a request id, it should be passed on to the next service when issuing a call (e.g. when the website server calls LAPIS).
The text was updated successfully, but these errors were encountered: