This program is the health checker for the Spatial-On-Demand Service Provided by SparkGeo Consulting and MAXAR Techologies. This program allows for intuitive tracking of outages, the ability to add and remove services as necessary, automatic e-mail updates regarding outages all wrapped up in a clean UI that is intuitive to use.
Features
-Application that checks the “health” of Spatial-On-Demand Services
-Can be run on the internet, or locally through Docker
-Features user accounts for various levels of access, security, and restrictions
-Features a tagging system for specific items, enabling users to group up various services together and also enable access restrictions on certain tags.
-Intuitive GUI built in HTML enables ease of navigation throughout the website
-Allows for control over various different services, that can be routinely pinged to check that they are active
Support for the following layers types:
Web Map Service
Web Map Tile Service
Tile Map Service
Web Feature Service
Web Coverage Service
WPS
CSW
SOS
STA
WFS3
FS
WAF
URL
FTP
Geonode Instance
GHC-R
This is an example of how you may give instructions on setting up your project locally. To get a local copy up and running follow these simple example steps. -Install Docker -Run this command WIP WIP WIP
Run in Postgis in same EC2 instance as GHC - Used because of SSL errors occasionally with remote copy of postGIS. Create ghc.env file based on ghc.env.example, runs on port 8
Run the following to run docker images for the GHC runner and GHC web Create GHC.env based on the ghc.env.example Enter location for postgis database in aws:
SQLALCHEMY_DATABASE_URI
- Run in Postgis in same EC2 instance as GHC - Used because of SSL errors occasionally with remote copy of postGIS.
- Create ghc.env file based on ghc.env.example, runs on port 8
- Run the following to run docker images for the GHC runner and GHC web
- Create GHC.env based on the ghc.env.example
- Enter location for postgis database in aws:
This runs both ghc web and ghc runner - used to run an online instance of postgis
$ docker build -t sparkgeo/geohealthcheck .
$ docker run --name spkghc --env-file ghc.env -p 8089:80 -v ghc_postgis:/GeoHealthCheck/DB sparkgeo/geohealthcheck:latest
Front Page
- Front page contains uptime information in clearly viewable form: period of health-checking, uptime percentage, and number of services checked
- A resource list of all of the differing services is then shown, along with their name, tags, current status, and reliability.
- There is also a leaflet map, which displays the location of where the service is hosted (?)
- As users add more and more services, the list will begin to populate and more services will be pinged.
- The add a service button allows the addition of new services.
- Resource type is selected from a list, and the URL of the service is input into the field, without query fields
- Optional tags can be input to allow for organization and further control, as outlined above.
- Upon submission, the user is brought to an edit page.
- Edit page allows for further changes to how the service is displayed on the website.
- Users can change authentication to require more or less for certain users through either basic authentication, or a bearer token.
- Users can be notified of any changes by entering email addresses.
- Webhooks are also enabled allowing for changes to how the data is received from the internet (?)
- The name, owner, and tags given prior are also displayed. Recommended that the name matches the tags or is at least very similar.
- The check can be configured to run in increments of minutes, minimum being 10 minutes however this can be changed.
For further contribution requests
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Distributed under the MIT License. See LICENSE
for more information.
Your Name - @your_twitter - email@example.com
Project Link: https://github.com/your_username/repo_name
This project is based off Geo Health Check by Tom Kralidis @GeoHealthCheck