Monitoring Your Web Applications, Y'all

What is Engine Light?

CfA has lots of projects. These projects are written in different languages, hosted in different places, and have different levels of complexity.

Engine Light surfaces a small set of app details and monitors an app’s state. This basic set of functionality lets users know if an app is okay or not.

To display app information or check the app’s state, Engine Light fetches JSON via the app’s status API endpoint from /.well-known/status. Here’s an example of what a JSON response would look like:

{
  "status": "ok",
  "updated": 1380064049,
  "dependencies": [ "Postgres", "Sendgrid" ],
  "resources": { "Sendgrid": 17.85 }
}

Status may contain either "ok" or an error message. The app determines what an errored state is. Updated is a unix timestamp indicating when the status check occurred by the app. Dependencies are third party services the app uses and resources are third party services or data stores with usage limitations. An app sends current resource usage information as a percentage.