Alerting devs about production issues via SMS.

09 May 2014

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.

Technologies used:

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.

Features:

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.

7. Documentation

       Most of the functionalities/code has been explained in the project’s README file

Github URL(Fork it, Hack it):

https://github.com/goibibo/newrelic_sms_alert