Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Error Tracking #207

Open
samfundev opened this issue Apr 10, 2021 · 7 comments · May be fixed by #446
Open

Add Error Tracking #207

samfundev opened this issue Apr 10, 2021 · 7 comments · May be fixed by #446
Labels
enhancement New feature or request

Comments

@samfundev
Copy link
Collaborator

samfundev commented Apr 10, 2021

I'd like to add Sentry to Twire with an GlitchTip backend. It would make it much easier for users to report issues with Twire. Which can be used to fix previously unreported issues or give more detail to issues that have been reported on GitHub. I could also see adding a button in Twire that allows users to report problems inside the app using Sentry.

The information that I think should be reported is:

  • Stack trace
  • Twire version
  • Android version
  • User comment
  • Device model
    The reason I think the device model should be included is that it gives useful information about the device like screen resolution, density, cutouts/notches, etc. which might be necessary to reproduce the issue.

The first time a report happens, users would be asked if Twire should:

  • Always send reports.
  • Ask before sending reports. (Default)
  • Never send reports.
    This preference can be changed later in the settings. What information is included would also be mentioned in this dialog.

Feel free to let me know what you think about this being implemented into Twire. I want to make sure Twire is respecting people's privacy.

@samfundev samfundev added the enhancement New feature or request label Apr 10, 2021
@Perflyst
Copy link
Collaborator

As far as I know NewPipe also uses ACRA but they don't send data from with-in the app to the backend but use email instead.

@Disqu3-mirOir-qt
Copy link

hi default asking before send it,s better for me user have choice

@roshavagarga
Copy link

Personally I prefer the way other apps handle it - not having a way to send data without a middle-step (sending an e-mail is a good example) and having it set to turned off by default. Mentioning the specifics of what information is sent, why and giving the user the option to not send all of his/her information would be a good thing, as well as being mindful of GDPR - any info, whether sent willingly, has to be deleted upon the user's request, so you need to offer some form of contact for users that sent you data through ACRA.

@samfundev
Copy link
Collaborator Author

Thanks for feedback everyone, let me try to address some of it:

@Perflyst
As far as I know NewPipe also uses ACRA but they don't send data from with-in the app to the backend but use email instead.

I do know that NewPipe uses email but there's two reasons I don't think email is a great choice for this:

  1. I haven't used it but if I have to use my email address to report something, I feel like that violates my privacy because I can't easily report something anonymously.
  2. Acrarium provides a nice interface and statistics that you can't get with an email.

@Disqu3-mirOir-qt
hi default asking before send it,s better for me user have choice

The default choice would be asking the user before sending the report. Like I said in the report, the user would be asked how Twire would handle these things.

@roshavagarga
Personally I prefer the way other apps handle it - not having a way to send data without a middle-step (sending an e-mail is a good example) and having it set to turned off by default.

Sorry, I'm not sure if I'm understanding what you're saying here. But Twire would have "a way to send data with a middle-step", which would be Twire asking you if you want to send the report when you have the "Ask before sending reports" option selected. I'm not sure what you mean by "having it set to turned off by default". Are you saying the default option should be "Never send reports" when Twire asks for the first time what you want to do with reports?

as well as being mindful of GDPR - any info, whether sent willingly, has to be deleted upon the user's request, so you need to offer some form of contact for users that sent you data through ACRA.

I know very little about GDPR but I did read this issue about it on the ACRA repo. From what I can see, I don't think GDPR would go into effect here because I wouldn't be recording IPs, emails, etc.

@roshavagarga
Copy link

@samfundev Basically:

  1. Have error reports set to 'never send' until the first time a popup shows up, and even on that.
  2. GDPR applies if you have identifiers, but if you gather data that can't be used to identify users in any way it's okay. If installation IDs are unique, as mentioned in that issue, you'd have to anonymize, not collect them or find another workaround to make sure the information you collect, even willingly, can't be used to identify users. If that's impossible, a simple e-mail where people can reach the devs and say 'please delete data connected with this ID' is enough :)

@samfundev
Copy link
Collaborator Author

@roshavagarga

  1. Definitely, if the user hasn't told us what their choice is, no reports will be sent. If they choose the "Never send reports" option, then they will continue to not be sent. They would only be sent if you choose "Always send reports" or "Ask before sending reports". In the latter, you would need to explicitly confirm each report before it would get sent. If you don't confirm it (by dismissing the dialog or whatever) then it wouldn't be sent.
  2. I believe the installation IDs are unique, but I don't think those have to be included. ACRA has a page about what can be included in a report and I believe any of the things listed could be disabled. So more explicitly these are the only things that would be included:
  • REPORT_ID
  • STACK_TRACE
  • APP_VERSION_CODE
  • ANDROID_VERSION
  • USER_COMMENT
  • PHONE_MODEL
    You can read about each of the things on the wiki page, but I don't think any of those could be used to identify the user.

@samfundev samfundev changed the title Add Application Crash Reports for Android (ACRA) Add Error Tracking Jul 6, 2024
@samfundev
Copy link
Collaborator Author

samfundev commented Jul 6, 2024

UPDATE: I think I'll be using Sentry with a GlitchTip backend.

samfundev added a commit that referenced this issue Jul 6, 2024
@samfundev samfundev linked a pull request Jul 6, 2024 that will close this issue
2 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants