FOSS4G 2022 general tracks

Just van den Broecke

Just van den Broecke is an independent Open Source geospatial professional working under the
trading name "Just Objects" - https://justobjects.nl. In his daily work
he designs, develops and deploys Open Source geospatial infrastructures, stacks and products.
He is a core contributor to the Open Source projects pygeoapi (also PSC), GeohealthCheck, Stetl, NLExtract and more. He is also founder and chair of OSGeo.nl, the Dutch Local OSGeo Chapter.

The speaker's profile picture

Sessions

08-25
09:30
30min
pygeoapi project status 2022
Tom Kralidis, Francesco Bartoli, Angelos Tzotsos, Just van den Broecke

pygeoapi is an OGC API Reference Implementation. Implemented in Python, pygeoapi supports numerous OGC APIs via a core agnostic API, different web frameworks (Flask, Starlette, Django) and a fully integrated OpenAPI capability. Lightweight, easy to deploy and cloud-ready, pygeoapi's architecture facilitates publishing datasets and processes from multiple sources. The project also provides an extensible plugin framework, enabling developers to implement custom data adapters, filters and processes to meet their specific requirements and workflows. pygeoapi also supports the STAC specification in support of static data publishing.

pygeoapi has a significant install base around the world, with numerous projects in academia, government and industry deployments. The project is also an OGC API Reference Implementation, lowering the barrier to publishing geospatial data for all users.

This presentation will provide an update on the current status, latest developments in the project, including new core features and plugins. In addition, the presentation will highlight key projects using pygeoapi for geospatial data discovery, access and visualization.

State of software
Room Onice
08-24
17:15
30min
GeoHealthCheck - QoS Monitor for Geospatial Web Services
Tom Kralidis, Just van den Broecke

Keeping (OGC) Geospatial Web Services up-and-running is best accommodated by continuous monitoring: not only downtime needs to be guarded,
but also whether the services are functioning correctly and do not suffer from performance and/or other Quality of Service (QoS) issues.
GeoHealthCheck (GHC) is an Open Source Python application for monitoring uptime and availability of OGC Web Services.
In this talk we will explain GHC basics, how it works, how you can use and even extend GHC (plugins).

There is an abundance of standard (HTTP) monitoring tools that may guard for general status and uptime of web services.
But OGC web services often have their own error, "Exception", reporting not caught by generic HTTP uptime
checkers. For example, an OGC Web Mapping Service (WMS) may provide an Exception as a valid XML response or
in a error message written "in-image", or an error may render a blank image.
A generic uptime checker may assume the service is functioning as from those requests and an HTTP status "200" is returned.

Other OGC services may have specific QoS issues that are not directly obvious. A successful and valid "OWS GetCapabilities" response may not
guarantee that individual services are functioning correctly. For example an OGC Web Feature Service (WFS) based on a dynamic database may
return zero Features on a GetFeature response caused by issues in an underlying database. Even standard HTTP checkers supporting "keywords"
may not detect all failure cases in OGC web services. Many OGC services will have multiple "layers" or feature types, how to check them all?

What is needed is a form of semantic checking and reporting specific to OGC services!

GeoHealthCheck (GHC) is an Open Source (MIT) web-based framework through which OGC-based web services can be monitored. GHC is written in
Python (with Flask) under the umbrella of the GeoPython GitHub Organization. It is currently an OSGeo Community Project.

GHC consists of two parts: (1) a web-UI app (using Flask) through which OGC service endpoint
URLs and their checks can be managed, plus for visualising monitoring-results and (2) a monitoring engine that executes scheduled
"health-checks" on the OGC service endpoints. Both parts share a common database (via SQLAlchemy, usually SQLite or PostgreSQL).
The database also stores all historic results, allowing for various forms of reporting.

GHC is extensible: at this moment of writing a plugin-system is developed for "Probes" in order to support an expanding number of
cases for OGC specific requests and -checks. Work is in progress to provide a GHC API for various integrations.

Links:
- Website: http://geohealthcheck.org
- Sources: https://github.com/geopython/GeoHealthCheck
- Demo: http://geohealthcheck.osgeo.org

State of software
Room Verde