11

Crashlytics is failing to report fatal/non-fatal crashes due to a connection timeout issue.

This is my app-level build gradle

implementation 'com.google.firebase:firebase-core:17.4.4'
implementation 'com.google.firebase:firebase-crashlytics:17.1.1'
implementation 'com.google.firebase:firebase-analytics:17.4.4'

Now the crashes are not being logged, and each time I open the app I'm getting this,

E/FirebaseCrashlytics: Create report HTTP request failed.
    java.io.InterruptedIOException: timeout
        at okhttp3.internal.connection.Transmitter.timeoutExit(Transmitter.kt:105)
        at okhttp3.internal.connection.Transmitter.maybeReleaseConnection(Transmitter.kt:295)
        at okhttp3.internal.connection.Transmitter.noMoreExchanges(Transmitter.kt:259)
        at okhttp3.RealCall.getResponseWithInterceptorChain(RealCall.kt:202)
        at okhttp3.RealCall.execute(RealCall.kt:67)
        at com.google.firebase.crashlytics.internal.network.HttpRequest.execute(HttpRequest.java:129)
        at com.google.firebase.crashlytics.internal.report.network.DefaultCreateReportSpiCall.invoke(DefaultCreateReportSpiCall.java:90)
        at com.google.firebase.crashlytics.internal.report.network.CompositeCreateReportSpiCall.invoke(CompositeCreateReportSpiCall.java:34)
        at com.google.firebase.crashlytics.internal.report.ReportUploader.uploadReport(ReportUploader.java:116)
        at com.google.firebase.crashlytics.internal.report.ReportUploader$Worker.attemptUploadWithRetry(ReportUploader.java:194)
        at com.google.firebase.crashlytics.internal.report.ReportUploader$Worker.onRun(ReportUploader.java:149)
        at com.google.firebase.crashlytics.internal.common.BackgroundPriorityRunnable.run(BackgroundPriorityRunnable.java:27)
        at java.lang.Thread.run(Thread.java:919)
     Caused by: java.io.IOException: Canceled
        at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.kt:65)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:112)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:87)
        at okhttp3.RealCall.getResponseWithInterceptorChain(RealCall.kt:194)
        at okhttp3.RealCall.execute(RealCall.kt:67) 
        at com.google.firebase.crashlytics.internal.network.HttpRequest.execute(HttpRequest.java:129) 
        at com.google.firebase.crashlytics.internal.report.network.DefaultCreateReportSpiCall.invoke(DefaultCreateReportSpiCall.java:90) 
        at com.google.firebase.crashlytics.internal.report.network.CompositeCreateReportSpiCall.invoke(CompositeCreateReportSpiCall.java:34) 
        at com.google.firebase.crashlytics.internal.report.ReportUploader.uploadReport(ReportUploader.java:116) 
        at com.google.firebase.crashlytics.internal.report.ReportUploader$Worker.attemptUploadWithRetry(ReportUploader.java:194) 
        at com.google.firebase.crashlytics.internal.report.ReportUploader$Worker.onRun(ReportUploader.java:149) 
        at com.google.firebase.crashlytics.internal.common.BackgroundPriorityRunnable.run(BackgroundPriorityRunnable.java:27) 
        at java.lang.Thread.run(Thread.java:919) 
E/FirebaseCrashlytics: Error occurred sending report com.google.firebase.crashlytics.internal.report.model.SessionReport@8309e69
    java.lang.RuntimeException: java.io.InterruptedIOException: timeout
        at com.google.firebase.crashlytics.internal.report.network.DefaultCreateReportSpiCall.invoke(DefaultCreateReportSpiCall.java:100)
        at com.google.firebase.crashlytics.internal.report.network.CompositeCreateReportSpiCall.invoke(CompositeCreateReportSpiCall.java:34)
        at com.google.firebase.crashlytics.internal.report.ReportUploader.uploadReport(ReportUploader.java:116)
        at com.google.firebase.crashlytics.internal.report.ReportUploader$Worker.attemptUploadWithRetry(ReportUploader.java:194)
        at com.google.firebase.crashlytics.internal.report.ReportUploader$Worker.onRun(ReportUploader.java:149)
        at com.google.firebase.crashlytics.internal.common.BackgroundPriorityRunnable.run(BackgroundPriorityRunnable.java:27)
        at java.lang.Thread.run(Thread.java:919)
     Caused by: java.io.InterruptedIOException: timeout
        at okhttp3.internal.connection.Transmitter.timeoutExit(Transmitter.kt:105)
        at okhttp3.internal.connection.Transmitter.maybeReleaseConnection(Transmitter.kt:295)
        at okhttp3.internal.connection.Transmitter.noMoreExchanges(Transmitter.kt:259)
        at okhttp3.RealCall.getResponseWithInterceptorChain(RealCall.kt:202)
        at okhttp3.RealCall.execute(RealCall.kt:67)
        at com.google.firebase.crashlytics.internal.network.HttpRequest.execute(HttpRequest.java:129)
        at com.google.firebase.crashlytics.internal.report.network.DefaultCreateReportSpiCall.invoke(DefaultCreateReportSpiCall.java:90)
        at com.google.firebase.crashlytics.internal.report.network.CompositeCreateReportSpiCall.invoke(CompositeCreateReportSpiCall.java:34) 
        at com.google.firebase.crashlytics.internal.report.ReportUploader.uploadReport(ReportUploader.java:116) 
        at com.google.firebase.crashlytics.internal.report.ReportUploader$Worker.attemptUploadWithRetry(ReportUploader.java:194) 
        at com.google.firebase.crashlytics.internal.report.ReportUploader$Worker.onRun(ReportUploader.java:149) 
        at com.google.firebase.crashlytics.internal.common.BackgroundPriorityRunnable.run(BackgroundPriorityRunnable.java:27) 
        at java.lang.Thread.run(Thread.java:919) 
     Caused by: java.io.IOException: Canceled
        at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.kt:65)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:112)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:87)
        at okhttp3.RealCall.getResponseWithInterceptorChain(RealCall.kt:194)
        at okhttp3.RealCall.execute(RealCall.kt:67) 
        at com.google.firebase.crashlytics.internal.network.HttpRequest.execute(HttpRequest.java:129) 
        at com.google.firebase.crashlytics.internal.report.network.DefaultCreateReportSpiCall.invoke(DefaultCreateReportSpiCall.java:90) 
        at com.google.firebase.crashlytics.internal.report.network.CompositeCreateReportSpiCall.invoke(CompositeCreateReportSpiCall.java:34) 
        at com.google.firebase.crashlytics.internal.report.ReportUploader.uploadReport(ReportUploader.java:116) 
        at com.google.firebase.crashlytics.internal.report.ReportUploader$Worker.attemptUploadWithRetry(ReportUploader.java:194) 
        at com.google.firebase.crashlytics.internal.report.ReportUploader$Worker.onRun(ReportUploader.java:149) 
        at com.google.firebase.crashlytics.internal.common.BackgroundPriorityRunnable.run(BackgroundPriorityRunnable.java:27) 
        at java.lang.Thread.run(Thread.java:919) 

Any help is appreciated.

Roshana Pitigala
  • 7,058
  • 8
  • 38
  • 66
  • 2
    I have exactly the same issue. Is it something wrong with crashlytics? – Mkr Jul 10 '20 at 12:10
  • @Mkr just today or did you had this before? – Roshana Pitigala Jul 10 '20 at 12:15
  • 2
    Just today. What is strange, some crashes were uploaded successfully (I think this crashes which happend maybe..1-2 hours ago?) but I can't see rest sent recently. What's more interesitng, i something see info about "succesfully uploaded logs" in .logcat, but I cant see them in firebase console – Mkr Jul 10 '20 at 12:23
  • 1
    To be more precise sometimes i got timeout and sometimes, I see this logs: Initializing Crashlytics 17.1.0 Crashlytics Reports Endpoint upload complete: , but I can't see crashes in console – Mkr Jul 10 '20 at 12:36
  • 2
    Probably related to this ongoing incident: https://status.firebase.google.com/incident/Crashlytics/20004 – David Vávra Jul 10 '20 at 13:33
  • hey, i am experiencing the same error today and there is no ongoing incident o firebase. i am not even using their crashlytics library.. my main issue is not the logs but being unable to see my okhttp client working. did something like that happened with you too? – ansh sachdeva Aug 18 '20 at 17:27
  • @anshsachdeva There was a problem related to network calls with the Gradle plugin `4.0.x`. Try downgrading it to `3.6.4`. – Roshana Pitigala Aug 18 '20 at 18:25
  • 1
    @RoshanaPitigala it could be, but my error went away when i changed my proguard rules to keep okhttp and gson source files. so there are multiple cases which could lead to this super vague error – ansh sachdeva Aug 18 '20 at 20:52

2 Answers2

1

As indicated in the comments, that error is related to this incident, https://status.firebase.google.com/incident/Crashlytics/20004, and can be tracked via that link.

Oleg Kodysh
  • 764
  • 2
  • 12
0

The issue is now fixed. The root cause for the issue was unknown. But as David suggested in this comment it may be linked to the following incident which occurred on the same day.

However, their logs did not specifically say that those two were related.


Anyway, my advice for future readers. If you have encountered this issue, visit below link to check the status of the Crashlytics itself, because there's a good chance that it may be one of their issues.

*It may take a while for the status to get updated.

Roshana Pitigala
  • 7,058
  • 8
  • 38
  • 66