feat(integration): Raise BadGatewayError on 502 errors #4494
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
If Anrok returns a Bad Gateway error with a 200 status, we handle this by raising a custom
Integrations::Aggregator::BadGatewayError
. See #3234This error can be use to retry the job, like for RefreshOngoingBalanceJob
lago-api/app/jobs/wallets/refresh_ongoing_balance_job.rb
Line 11 in b1596cd
Unfortunately, of the error is a return with a 502 status, we'll raise a regular
LagoHttpClient::HttpError
, which is not retrieThis PR aligns the behavior to always raise this custom error.
Notice that this custom error extends the HttpError:
lago-api/app/services/integrations/aggregator/bad_gateway_error.rb
Line 5 in b1596cd
Main changes
BAD_REQUEST_ERROR
toBAD_GATEWAY_ERROR
BadGatewayError
instead ofHttpError