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

Distributed error reporting #12214

Open
11 tasks done
akolson opened this issue May 27, 2024 · 1 comment · May be fixed by #12489
Open
11 tasks done

Distributed error reporting #12214

akolson opened this issue May 27, 2024 · 1 comment · May be fixed by #12489
Labels
Epic gsoc A GSoC project task

Comments

@akolson
Copy link
Member

akolson commented May 27, 2024

Background

Kolibri is primarily used in disconnected or low connectivity environments. In contrast to many offline platforms where error reporting can happen via Sentry or similar services, in these offline environments, errors that happen to users cannot be directly reported.

Kolibri currently offers the ability to copy and paste error reports in the frontend to share them back via other means - it would be useful to automate this process and allow error reports to be automatically shared back when connectivity is available.

Story

As a user of Kolibri in a low connectivity environment, I want any errors I encounter while using the platform to be automatically queued and sent once connectivity is restored, so that they are addressed without requiring manual intervention.

Requirements

  • Django error reporting mechanisms should be used to capture and report backend errors.
  • An appropriate error handling mechanism should be implemented on the frontend to report errors.
  • An API to capture and report frontend errors should be implemented.
  • A consumable error reporting stack should be used so that errors are only synced back once (See pingback mechanism).
  • A database, external to Kolibri, should be used to store all reported errors. Using an external database ensures comprehensive error reporting beyond the confines of the codebase.
  • It is worth looking into Kolibri's Sentry plugin for inspiration on how it captures errors on the frontend and backend*

Out of Scope

  • Implementing changes to enable reporting of captured errors via the LE Telemetry API falls outside the scope of this task, as the LE Telemetry project is closed source.

Contributors

Feature Tasks

  1. DEV: backend gsoc
    thesujai
  2. DEV: backend gsoc
    thesujai
  3. DEV: backend gsoc
    thesujai
  4. DEV: backend gsoc
    thesujai
  5. DEV: backend gsoc
    thesujai
  6. DEV: backend gsoc
    thesujai
  7. DEV: backend gsoc
    thesujai
  8. DEV: backend gsoc
  9. DEV: backend gsoc
    rtibbles
  10. DEV: backend gsoc
  11. DEV: backend gsoc
    thesujai
@akolson
Copy link
Member Author

akolson commented Jul 19, 2024

New feature to be implemented in Telemetry

@akolson akolson linked a pull request Jul 25, 2024 that will close this issue
9 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Epic gsoc A GSoC project task
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant