Opened 3 years ago

Last modified 3 years ago

#4672 closed change

Introduce HockeyApp event-based error reporting — at Version 9

Reported by: mario Assignee:
Priority: P3 Milestone: Adblock-Browser-for-iOS-1.5.2
Module: Adblock-Browser-for-iOS Keywords:
Cc: pavelz, lisabielik, scheer, mario Blocked By:
Blocking: Platform: Adblock Browser for iOS
Ready: yes Confidential: no
Tester: Rraceanu Verified working: yes
Review URL(s):

Description (last modified by mario)

Background

As of 2016 HockeyApp provides a service called "HockeyApp Events" which can be used to intercept non-crashing errors/exceptions and collect them as error reports. This function is based on HockeyApp's crash report, which has been introduced with #3272.
Introducing this enables us to better understand potential problems and react faster to non-crashing errors.

What to change

HA Events
Implement HA events as described in this documentation.

Opt-In UI

  • Change Crash Reports to Crash and Error Reports in the settings menu
  • Change SEND CRASH REPORT to SEND CRASH AND ERROR REPORTS in the crash reports settings menu
  • Change Ask me after a crash to Ask me after a crash or error in the crash reports settings menu
  • Change Only anonymized data containing device information and crash details are sent. to Only anonymized data containing device information and crash or error details are sent. in the crash reports settings menu
  • Change Ask me after a crash to Ask me after a crash or error in the crash reports settings menu
  • Add a modal dialog which is shown as soon as an error is intercepted the same way as the modal which is shown when a crash occurs:
    • Title: Adblock Plus Encountered an Error
    • Description: Would you like to send a report to fix the problem?
    • Button 1: Send Report
    • Button 2: Always Send
    • Button 3: Don't Send

Opt-In Logic

  • As soon as an error is intercepted for the first time, show the modal dialog as described above.
  • As soon as an error is intercepted the next time, base action on the error reporting settings:
    • If "Ask me after a crash" is active, show the modal dialog above
    • If "Always" is active, send the error report without showing the modal dialog again
    • If "Don't Send" is active, send no report without showing the modal dialog again

Restrictions
Due to the fact, that non-crashing errors could happen multiple times in a row, apply the following limitations:

  • Limit the error report dialog to be shown only once every minute
  • Limit the events to be sent to a technical reasonable amount in order not to slow down ABB or clog the user|s internet connection if a repeating error is intercepted in a loop

Change History (12)

Changed 3 years ago by mario

Changed 3 years ago by mario

Changed 3 years ago by mario

comment:1 Changed 3 years ago by mario

  • Description modified (diff)

comment:2 Changed 3 years ago by mario

  • Cc lisabielik added

@Lisa, could you please review the text changes introduced with this issue (Opt-In UI section)? Thanks!

comment:3 Changed 3 years ago by lisabielik

Change:

Only anonymized data containing containing device information and crash details are send.

to:

Only anonymized data containing device information and crash or error details are sent.

comment:4 Changed 3 years ago by mario

  • Description modified (diff)

Oh, that one slipped through. Thanks! Changed the description.

comment:5 Changed 3 years ago by mario

  • Ready set

comment:8 Changed 3 years ago by pavelz

@mario @lisabielik forgotten texting update needed:
former options per crash reports settings menu: Always/Never/Ask me after a Crash

Third option should still say only ...Crash or rather Crash or Error (evt. Crash/Error) per all other requested changes to that dialog?

comment:9 Changed 3 years ago by mario

  • Description modified (diff)
  • Ready unset

Updated the description. Waiting for lisabielik's feedback.

Note: See TracTickets for help on using tickets.