# Sentry notes
Sentry
* All the separate applications should have their own project. Projects can be shared between members of the teams.
* Sentry can log events and group them in issues by fingerprinting the error messages and relating the events. It does that automatically by analyzing the stacktrace or you can set the event.fingerprint in the code.
* Also can throttle
* Also log events can be associated with a certain release/version of the app
https://docs.sentry.io/product/releases/
* Of course can also be associated with environments, we already do this
* Sentry can be linked to the source code
and show the stacktrace, the point in code, etc
even shows the suspectful commits that are related to the code failing
* sentry can log errors into an MS Teams room
* Can set custom fields to correlate events.
* Sentry supports hooks onBeforeSend to scrub or remove details from users that we don't want to send to Sentry.io
also can be set as "Sensitive fields" so we don't log stuff that we don't log data that shouldn't be in logs
* Downsides: We are adding Sentry dependencies all over our code, we should wrap it into a custom error tracker class, but that can take a while and I'm not sure if the internal reflection that it does to get the stacktrace etc is going to work well
## Doc
The most complete and useful guides I've seen are the official ones,
* https://www.youtube.com/watch?v=Kz-SudCTdu4
* https://www.youtube.com/watch?v=ojebwsIeVOg
## Powerful features
* Creating Dashboards (requires a business plan)
