FirebaseCrashlytics:创建报告HTTP请求失败。 okhttp3超时

时间:2020-07-10 12:02:51

标签: android firebase okhttp crashlytics crashlytics-android

由于连接超时问题,Crashlytics迁移至最新Firebase Crashlytics SDK后无法报告致命/非致命崩溃。我遵循了官方文档中提到的确切步骤。

这是我的应用程序级别构建包

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'

现在,崩溃日志没有记录下来,每次我打开该应用程序时都会得到此提示,

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) 

感谢您的帮助。

2 个答案:

答案 0 :(得分:1)

如评论中所述,该错误与此事件https://status.firebase.google.com/incident/Crashlytics/20004有关,可以通过该链接进行跟踪。

答案 1 :(得分:0)

该问题现已解决。问题的根本原因是未知的。但正如Davidthis comment中建议的那样,该事件可能与同一天发生的以下事件有关。

但是,他们的日志并没有具体说明这两个是相关的。


无论如何,我对未来读者的建议。如果您遇到此问题,请访问下面的链接以检查Crashlytics本身的状态,因为很有可能这可能是他们的问题之一。

*状态更新可能需要一段时间。