Code Monkey home page Code Monkey logo

openaq-status's Introduction

OpenAQ Status Page

A status page for the OpenAQ API. The page is live on https://openaqstatus.org.

Screen Shot 2022-01-05 at 9 28 00 AM

Development

The page is built with the Hugo static site generator and hosted on AWS S3.

Previous Version

The Hugo version of this page is a complete rewrite of the original React based web page. The React application is preserved for reference on the react branch of this repository.

openaq-status's People

Contributors

danielfdsilva avatar dolugen avatar jflasher avatar olafveerman avatar pwellner avatar russbiggs avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

openaq-status's Issues

Hosting

@jflasher Where do you propose the status page to be hosted? gh-pages or S3? If the latter, could you create a bucket?

Not time-sensitive

Design review

@ascalamogna The status page is ready for your review.

I tried to keep as simple as possible and used the openaq-design-system to apply some styling.

image

This is how warnings on the Fetch section are shown and stacked:

image

Let me know if you need anything. To run status locally, you'll also need to run the API locally.

cc @danielfdsilva

Link to the status page

Maybe add the link to the status pages (human readable one and API one) in the README/description of this repo?

Review statuses

The functionality of the status page is implemented. We're still revising the style and layout, but it's ready for your review.
Most importantly, please review the statuses and feedback messages.

API health

Here we are fetching the status from New Relic. Their green, orange, red system is a bit ambiguous, so it's hard to come up with a very descriptive error message. For now we have:

New Relic Our status message
green API is up and running
orange Something's not right
red The API is down
unknown API health unknown

API Fetch

On the API Fetch side, we are doing a couple of checks.

Reason Type Message
Can't fetch the results info The API is down, can't determine the status of OpenAQ fetch
Last fetch too old warning The last fetch started more than 12 minutes ago.
No recent results warning The last five fetches yielded no results
No info or warning success Fetch seems to be working properly

At the moment, there is nothing that really causes an error message on fetch.

@jflasher @RocketD0g Some feedback on this would be great. Anything else that we can determine from either the New Relic API or the fetches endpoint?

Calendar refresh

the calendar does not properly refresh when left open over a month turnover i.e March 31 to April 1. Likely need to redraw calendar on updates or check for month turnover

Add customizeable info section

For instances where there is maintenance that might not be accurately reflected in other sections, for example knowing the database will go up and down. This could be as simple as a section in the index.html that's easy to comment out when not needed.

Upgrade Node version

After fixing basic functionality it would be good to get Node to a modern version for ease of development

Scope status page v1

A ticket to discuss the overall scope of the status page. The first version will reflect:

  1. API health
    New Relic: green, yellow, red
  2. Fetch health
    Hit the fetches endpoint and check the last time(s) it ran. We can include some summary stats like: total measurements added from x different sources. Also total failures and their reasons.

In the future, if we want to do more complex analytics, for example on Source level, this could be added to Fluffy. This could include source health, by checking the amount of measurements reported by station.

The first iteration will be similar to the OAM status page.

cc @danielfdsilva @nbumbarger @ascalamogna @jflasher @RocketD0g

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.