Sentry
![](https://s3.amazonaws.com/media-p.slid.es/uploads/467099/images/2673178/sentry_512.png)
Because developers need super powers to track exceptions
WHAT IS SENTRY?
![](https://s3.amazonaws.com/media-p.slid.es/uploads/467099/images/2673215/The_Sentry.png)
BASICS
- Language-agnostic error tracker
- Semi-automatic grouping of incidents
- Filterable tags
- Ownership through assignment
- Resolve or snooze to mark issues as done
- Easy-to-implement protocol
- Extensive REST API
![](https://s3.amazonaws.com/media-p.slid.es/uploads/467099/images/2673191/Screen_Shot_2016-05-27_at_05.56.38.png)
Frameworks & Languages
-
getsentry.com
- Small plan starts at 29 USD/month
- 9 USD/month for hobbyists not available anymore
-
Self-hosted
- 100% open source
- Tricky to set up
HOSTING
How to use it
![](https://s3.amazonaws.com/media-p.slid.es/uploads/467099/images/2673207/use-the-force-luke_gp_320659.jpg)
JS
<script src="https://cdn.ravenjs.com/3.0.4/raven.min.js"></script>
Raven.config('https://<key>@app.getsentry.com/<project>').install()
try {
doSomething(a[0])
} catch(e) {
Raven.captureException(e)
}
Install
By default, Raven makes a best effort to capture any uncaught exception.
To report errors manually :
Config DNS
NojeJS
try {
doSomething(a[0])
} catch(e) {
Raven.captureException(e)
}
Install
To report errors manually :
Config
npm install raven --save
var raven = require('raven');
// Config DNS
var client = new raven.Client('https://<key>:<secret>@app.getsentry.com/<project>');
// Use Sentry as global error tracker.
client.patchGlobal();
![](https://s3.amazonaws.com/media-p.slid.es/uploads/467099/images/2673263/Demo-Time.jpg)
-
Integrating Sentry is super easy
- Plays well with issue trackers etc.
- White-/Blacklisting errors can be tricky
Conclusion
Questions ?
To be continued
![](https://s3.amazonaws.com/media-p.slid.es/uploads/467099/images/2673284/llaggxfjqduc4yjmtpaq.jpg)
deck
By Vincent Quagliaro
deck
- 795