Fork me on GitHub

Stashboard

The open source status page for cloud services and APIs.

Sweet screen shot of Stashboard Mustaches For Everyone

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.

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.

Twilio

Stashboard was created at Twilio.

Stashboard is licensed under the MIT License