solidusjs / solidus

A simple server that generates pages from JSON and Templates
MIT License
28 stars 7 forks source link

Support for Sentry exception logging #78

Closed pushred closed 10 years ago

pushred commented 10 years ago

Preprocessors aren't always written perfectly and may result in exceptions that take down a page's context. Sentry offers a great way to track such exceptions across many projects. Unlimited projects, team members, and open source instrumentation make Sentry highly competitive amongst it's competition.

Implementation as middleware seems straightforward. Presence of the SENTRY_DSN environment variable would be a good way to easily turn this logging on & off, in conjunction with setting these variables with hosts such as Modulus, Heroku, and Nodejitsu.

Fauntleroy commented 10 years ago

With all this talk of ENV variables I'm starting to think we might want to develop a strategy for configuration. What goes into JSON vs ENV? Are there cases where something can be configured in both? What takes precedence?

pushred commented 10 years ago

Using SENTRY_DSN variable is a feature of the Raven clients, reducing our work to be done here, but it does dovetail nicely with the strategy in #75. If you follow the idea of a project-scoped file vs. the shell config you would want to pass any SENTRY_DSN value specified there to the middleware vs. anything defined in the shell. The latter should still work as a fallback though.