Stashboard The open source status page for cloud services and APIs.

About Stashboard is a status dashboard for APIs and software services. It's similar to the Amazon AWS Status Page or the Google Apps Status Page. Stashboard was originally written by Twilio to provide status information on its Voice and SMS APIs. Stashboard is designed to provide a generic status dashboard for any hosted service or API. The code can be downloaded, customized, and run on any Google App Engine account. Track multiple different API or SaaS services

Set custom status messages and icons such as Up/Down

Show historical status for each service

Runs on Google App Engine so it's independent of your infrastructure (unless your app is on GAE)

Full REST API for both getting and setting status information

CNAME to http://status.yourapp.com Stashboard is written in Python and hosted on Google App Engine. Head over to stashboard.appspot.com to play with the latest version.

Installation If you are unfamiliar with App Engine, make sure to check out the Getting Started guide. First, install the App Engine SDK for Python, available here. The SDK makes it easy to run Stashboard locally or deploy it to appspot.com Next, download and extract Stashboard to your computer. The source is availble for download from Github. Run Locally Open the SDK, choose File > Add Existing Application..., select the stashboard folder you downloaded above and choose a port. Press Run and navigate to http://localhost:{port} to see your Stashboard installation. Deploy to AppSpot Before you can deploy Stashboard, you will need to create an application on App Engine. Google has a simple tutorial for registering applications with App Engine. Once your application is registered, open app.yaml in the Stashboard directory and change application-id to the name of your newly created application. Hit the 'Deploy' button, wait a couple of seconds, and then navigate to http://{app-name}.appspot.com to enjoy your new status dashboard Go To Prod Stashboard can live at http://status.your-company.com. Simply log into Google Apps to manage your domains. Learn more here.

Documentation Full documentation of the REST API can be found at http://readthedocs.org/docs/stashboard/en/latest/restapi The Stashboard REST API is broken down into three resources: Services, Events, and Statuses. Services Services are the basic unit of Stashboard. A service is any web service that can be consumed, and more importantly, can fail. Using Stashboard, you can easily inform your users of the current service status. To handle system status, Stashboard uses the concept of events. Events A service has a list of events, listed in reverse chronological order, which represent the state of that service. To track the state of a web service, an administrator creates events for a given service. For example, if a service is currently down, create an event with a "DOWN" status, explaining why the service isn't working. Once the service is up again, simply create a new event with an attached "UP" status. Statuses A status represents the state of a web service. Instead of being directly attached to services, a status is attached to a service event (described above). Therefore, the current system status is simply the status attached to the most recent event.

Community All Stashboard development and discussion happens in the Stashboard google group. To keep up to date, you can follow @stashboard on Twitter or join the #stashboard channel on freenode.

Download You can download this project in either zip or tar formats.