getsentry / sentry-android-gradle-plugin

Gradle plugin for Sentry Android. Upload proguard, debug files, and more.
https://docs.sentry.io/platforms/android/gradle/
MIT License
145 stars 33 forks source link

Add Gradle DSL to setup retry count for upload symbols #764

Closed ganadist closed 2 months ago

ganadist commented 2 months ago

Problem Statement

Whenever :app:uploadSentryNativeSymbolsForRelease or :app:uploadSentryProguardMappingsRelease tasks were performed, we can observe gradle tasks were failed by bad http response (502).

And it looks these error are temporary, and when try perform tasks again, upload tasks performed successfully.

If gradle plugin provides retry options to upload symbol files, this issue can be mitigated.

Solution Brainstorm

No response

romtsn commented 2 months ago

hi @ganadist our cli already has a default retry count of 5, see here: https://github.com/getsentry/sentry-cli/blob/b9acc549dbf884a9e51feae04c1aab05e67f164e/src/constants.rs#L41

And it's used for retries whenever there's a 5xx error encountered: https://github.com/getsentry/sentry-cli/blob/1264d6f028e5d2262bc9b0f0e8ef711c6b221965/src/api/mod.rs#L402-L409

exposing this setting would for sure be an option, but I'm not sure if it'd help us (and you) to send big files multiple times. As far as I know our ops team is looking into this issue, hopefully they can resolve the root cause.

meanwhile you can export an env variable export SENTRY_HTTP_MAX_RETRIES=10 and see if it helps.

markushi commented 2 months ago

Closing this issue for now, as there is already a way to configure the retry count. If you have any feedback, feel free to comment and we'll re-open this issue.