sentry-dart icon indicating copy to clipboard operation
sentry-dart copied to clipboard

Transport Backpressure support

Open marandaneto opened this issue 4 years ago • 2 comments

Similar to Java https://github.com/getsentry/sentry-java/blob/main/sentry/src/main/java/io/sentry/transport/QueuedThreadPoolExecutor.java

The idea is that events get queued up to X number and dropped if the limit gets exceeded, so we don't overload the app's main isolate if they capture events very fast in a tight loop.

marandaneto avatar Apr 08 '21 13:04 marandaneto

We should do it to avoid issues when calling e.g. captureException in a tight loop, since it returns a Future and the throwable is not serializable, we cannot offload the event pipeline in a different Isolate, we could tho try to use a counter and bailout if the queue is exceeded. Also, you cannot call MethodChannels in the main isolate.

marandaneto avatar May 12 '22 12:05 marandaneto

Consider doing https://github.com/getsentry/sentry-dart/issues/536 as well

marandaneto avatar May 12 '22 12:05 marandaneto

Closed by #1868

denrase avatar Mar 12 '24 10:03 denrase