This is a small web application to monitor OGC Web Service implementations, such as SOS
. It was formely known as "OWS Supervisor", but we realized this is useful beyond the context of OWS
In the current state, it supports the following features:
- config file based check configuration
- scheduling of service checks (repetition at arbitrary interval)
- a web front end to inspect the latest checks, including both successful and failed results.
- notification of failed checks via email
The following checks are available.
- Simple service availability check using a GetCapabilities request. If the service does not respond with a valid document, the check fails.
- SOS GeotObservation: Checking for the age of the latest time an of an observation in a SOS. If the sampling time is older than the maximum age then the test fails.
An example deployment (web interface) is available at CURRENTLY NO LIVE DEMO.
The following screen shot shows the AngularJS - based web interface of Supervisor.
There are no binary releases, so please check out the source code and build the project with Maven:
git clone https://github.com/52North/Supervisor.git
mvn clean install
The .war file for deployment is in the directory
Adding a Check
There are two ways of addings checks to a supervisor. First, creating a Java class implementing
. This factory creates the checks. The class must be made available on the classpath and added to the config parameter
. There must also be a constructor without any parameters.
Second, creating a Java class implementing
with a constructor that accepts only strings. This class must be made available on the class path and can then be created by adding a constructor call to the config parameter
CHECKS=org.n52.owsSupervisor.checks.SirCapabilitiesCheck(http://serviceurl, email@example.com, 43200000);
In both cases, multiple checks or classes must be seperated by a
The source code can be found on GitHub
Developer documentation can be found in the README file
We use GitHub issues for a development backlog and GitHub milestones to organize development sprints.
The tasks status is organized in a board at Waffle.io: https://waffle.io/52North/Supervisor
Developers and Contributions
We use the fork & pull development model
Developer contact: Daniel Nüst
, Eike H. Jürrens
, Matthes Rieke