Alerting devs about production issues via SMS.
We at Goibibo use NewRelic for monitoring our systems. Whenever there is an exception, NewRelic alerts us with an email. More often than not such mails are lost amidst other mails. We wanted our developers to know whenever there are production issues with their sub-systems. Alerting them via SMS seemed like a good approach. NewRelic gives webhooks where they push all the deployment and alert messages. We then thought of writing a small app that would listen to these messages from NewRelic and alert the corresponding owners.
Python : Because we love Python!
Cherrypy : A micro web-framework for Python
Bootstrap : Twitter’s UI framework, makes life easy if you just want to get stuff done.
1. Alert only those developers who own the sub-system
In NewRelic, a user can subscribe himself to an application using user channels and this list can be pulled using 3 NewRelic apis.
2. SMS alerts
We use a third party service for SMS
3. Subscribe/Unsubscribe to NewRelic’s plugin alerts
At the moment, an user can’t subscribe to specific plugin(redis, mysql etc) alert in NewRelic. This is where this app can be really helpful. Its gives a decent dashboard to subscribe/unsubscribe to a plugin alert. You can also subscribe/unsubscribe to NewRelic’s application alerts here.
4. Adding developer details
A user can add his details here.
5. Pull new users, applications, plugins
6. REST apis
All the operations that can be accomplished using this Web app, can also be achieved using netcat(curl fan?) and REST apis.
Most of the functionalities/code has been explained in the project’s README file
Github URL(Fork it, Hack it):