SlimeVR / SlimeVR-Server

Server app for SlimeVR ecosystem
https://slimevr.dev
Apache License 2.0
667 stars 174 forks source link

Add sentry.io error tracking #393

Open ImUrX opened 1 year ago

ImUrX commented 1 year ago

I need opinions on others if this is a good idea, this basically sends errors to a server where we can see errors happening to the code, it works really well (it includes build info, backtracing and a lot more we can add ourselves) and it can be self-hosted. This would require a Privacy Policy, the idea would be to have it disabled by default and add an opt-in option in the GUI somewhere, this would link to the privacy policy so the user can read it.

This would help a lot for finding errors that aren't actually getting reported by users and have a better tracking on the precise errors. I don't find any cons tbh because it's disabled by default and it will be pretty helpful if it's actually enabled.

TheButlah commented 1 year ago
  1. Does sentry.io have good java integration? What about rust and typescript? can we use this same service across all parts of the tech stack?
  2. How much does this cost to use this as a service?
  3. Where do we host the service?
  4. What are some alternatives that we could consider in this decision?
  5. Would this include just errors, or would it also include other metrics? For example, frequency of user reset, amount of divergance from calibration position at reset time, etc, like things that can improve our understanding of if there were other subtle bugs introduced?
TheDevMinerTV commented 1 year ago
  1. Compatibility shouldn't be an issue 😅 image
  2. Depending on the tier, starting at $89/mo
  3. Some cheaper VPS, probably
  4. Sounds like a smart idea

4 should be 5 but I can't get it to be 5, so deal with it

ImUrX commented 1 year ago
  1. It's open source
  2. You can pay sentry.io or self-host it, we can try it before actually paying for it :P
  3. Maybe New Relic? But like sentry.io is open-source
  4. It's not automatic, it wont log errors that are catched. We need to add everything ourselves. It has a lot of features like breadcumbs that would help us give custom information for context-sensitive errors also
TheDevMinerTV commented 1 year ago

New Relic is hella expensive

cleafspear commented 4 months ago

regarding as someone who is a active user with sentry: sentry has multiple pay tiers. they limit the amount of ingested data normally based on the pay tier you use, but the self-hosted edition does not have any limits on it, and is not cost, at the limitation that you will have community support for issues. in regards to what data it collects? its entirely based on your error handler. you can have it provide anything you want in the logs, tho by default, it normally contains the following: os type; hardware stats (cpu,gpu,ram) log level :error,warning,ect.,machine ID (only to match with other errors from the same machine, and a user UUID (only useful to id machines logged into with the exact same user/domain joined machines) it is very useful to id what is going on and can give a statistic on what is causing the errors.