Owainlewis Status Save

An open source, self hosted status page application for communicating service incidents to customers.

Project README

STATUS

If you're using status or have any feedback ideas I'd love to hear them. Pull requests and feature suggestions always welcome : )

An open source, self hosted status page application for communicating service incidents to customers.

It is heavily inspired by https://status.heroku.com and other status page applications such as https://developers.facebook.com/status. This is a very early first attempt put together over a day or two so obviously it's pretty rough. Feel free to submit suggestions, feature requests or fixes.

A demo is available at https://systemstatus.herokuapp.com/

Username: admin Password: password

Please feel free to contribute if you have ideas.

TODO

  • Service overview page
  • Web hook integrations (Slack)
  • Twitter Integration
  • Email notifications
  • SMS notifications

Getting started

The quickest way to get your own version running is to use Heroku. Assuming you have a Heroku account then the app can be deployed in under a minute.

git clone https://github.com/owainlewis/status.git && cd status
heroku create 
# Generate a random secret key and set as an environment variable
heroku config:set APPLICATION_SECRET="SECRETKEY"
heroku config:set STATUS_USERNAME="username"
heroku config:set STATUS_PASSWORD="password"
git push heroku master

Local development

Status is a standard Play framework application written in Scala. It requires PostgreSQL.

If you are familar with the Scala ecosystem (and have activator installed) then you can run with:

createdb status && activator run 

Configuration

Config Value Description
auth.username The admin username for login
auth.password The admin password for login

API

Status comes with a simple JSON REST api for adding data to your system and for integration with other services.

It uses basic authentication (I know) to keep things simple.

Example request to get all incidents

curl -u user:pass -i http://localhost:9000/api/v1/incidents

Delete an incident

curl -iXDELETE -u user:pass http://localhost:9000/api/v1/incidents/5

Integrations

Slack

When you create an incident you can configure status to send a notification to a Slack channel

slack.endpoint="https://hooks.slack.com/services/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"

See https://api.slack.com/incoming-webhooks for more information.

Coming Soon

  • SMS
  • Email
Open Source Agenda is not affiliated with "Owainlewis Status" Project. README Source: owainlewis/status
Stars
150
Open Issues
3
Last Commit
5 years ago
Repository

Open Source Agenda Badge

Open Source Agenda Rating