getsentry / getsentry/sentry-ruby

Expose on_rate_limit as part of the transport contract

Ouverte
#2,239 0 commentaires 0 réactions 1 personne assignée Réclamée par @sl0thentr0py Voir sur GitHub
Client Reports Improvement Ruby
Langage dominant
Ruby
Étoiles
987
Forks
541
Merge moyen
17 h 40 min
PR mergées (30 j)
19

Description

I see, thanks for the explanation of your use case.
So a few points

* we never do a retry ever on our side, a dropped event is a dropped event
* the server's rate limiting is merely interpreted as 'stop doing stuff for a while'
* technically it is breaking yes, but this is considered internal to the http transport implementation and not really part of the API contract

That said, there are a couple of options for you now
* make your own transport deriving from `Sentry::HTTPTransport` and override `send_data` there and do what you wish there
* I can expose a `on_rate_limit` hook in the transport class similar to `on_error` to make that easier so you just need to define that one method to retry

does that work?

_Originally posted by @sl0thentr0py in https://github.com/getsentry/sentry-ruby/pull/2216#discussion_r1472958970_

Guide de contribution

Ouvrir le guide de contribution

Évaluation

Cette issue n'a pas encore été évaluée.

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.