【问题标题】:Android Crashlytics not logging non-fatalsAndroid Crashlytics 未记录非致命事件
【发布时间】:2017-10-02 08:09:58
【问题描述】:

我正在 Fabric 中记录 crashlytics 错误。它适用于崩溃和自动生成的非致命事件。但是当我尝试手动记录非致命事件时,它根本不显示。可能是什么问题? (是的,我在登录后重新打开了应用程序)。

我尝试过的日志记录方法:

Crashlytics.log(message);

Crashlytics.getInstance().core.logException(exception); //Caught exception

Crashlytics.logException(exception); //Caught exception

Crashlytics.logException(new Throwable(message));

它们都没有出现在我的织物仪表板中...

我用这个实例化 Fabric,它的日志记录崩溃了,所以我认为这不是问题。

Fabric.with(this, new Crashlytics());

【问题讨论】:

  • Crashlytics.logException(exception) 应该这样做。通常它记录的非致命事件的数量是有限的。他们都没有显示吗? For any individual app session, only the most recent 8 logged exceptions are stored.docs.fabric.io/android/crashlytics/caught-exceptions.html
  • 没有记录。绝对没有。不是一个。我们每天有 7 万用户,所以它肯定不起作用。
  • 我明白了。正如您在问题中所显示的那样,您已尝试强制进行非致命崩溃。我假设你的过滤器是过去 90 天的?您使用的是哪个版本的 SDK?
  • 强制崩溃:是 过滤器:是 SDK 版本:classpath 'io.fabric.tools:gradle:1.22.1'
  • 对不起,我错过了你的回复!我会通过电子邮件跟进。

标签: android exception crash-reports crashlytics google-fabric


【解决方案1】:

在 Firebase 控制台中的 Crashlytics BETA 中,默认显示“仅崩溃”事件。如果您想查看非致命事件,您必须选择“所有事件”或“仅非致命事件”。

也许它可以在 Fabric 控制台中提供帮助。

附:我不使用没有 Firebase 的面料。

【讨论】:

    【解决方案2】:

    试试这个,它是我项目中的工作代码。

    try {
        //your codes                    
    } catch (Exception ex) {
        ex.printStackTrace();
        Crashlytics.log("log something");//Optional
        Crashlytics.setString("message", message);//Optional
        Crashlytics.logException(ex);
    
    }
    

    【讨论】:

    • 正如问题中所说,这是我尝试过的。不知道为什么它会失败,但根本看不到任何非致命的实例。
    • @Otziii 您是否尝试过在 Crashlytics.logException(ex) 之前使用 .log() 或 .setString();
    猜你喜欢
    • 2017-08-22
    • 2017-12-21
    • 1970-01-01
    • 1970-01-01
    • 2019-01-13
    • 2018-01-15
    • 2018-05-13
    • 1970-01-01
    • 2018-06-20
    相关资源
    最近更新 更多