Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Testing and issues for new WMTS Probes #420

Open
justb4 opened this issue Feb 8, 2022 · 0 comments
Open

Testing and issues for new WMTS Probes #420

justb4 opened this issue Feb 8, 2022 · 0 comments
Labels
Milestone

Comments

@justb4
Copy link
Member

justb4 commented Feb 8, 2022

Describe the bug

Via issue #379 and PR #406 some new custom WMTS Probes were added.
This issue is opened to discuss some problems when testing these Probes with various WMTSs.
NB: problems may well be related to the WMTS instances themselves. Sometimes it is hard to assess.

Tested several WMTSs using the WMTS GetTile for all layers. Probe.
Direct access to the WMTSs in the GHC Demo site:
https://demo.geohealthcheck.org/resources?resource_type=OGC%3AWMTS

Below results and and log output from GHC demo Web app for the various WMTSs.

General Findings

  • even if the 'All Layers' Probe was chosen, in the Probe UI still individual layers could be chosen
  • guess sample means that the Probe makes a random choice, like a random Layer/Tile?
  • Capabilities Probe worked for each WMTS

PDOK BRT

No problems detected. Tried several variants for both Probes.

IGN Geoportail (French GDI)

Strange errors related to WMTS not returning image formats but looks like Vector Tiles application/x-protobuf. So maybe not an issue. (?)

2022-02-08 15:59:09,645 - GeoHealthCheck.probe - INFO - Requesting: GET url=https://wxs.ign.fr/choisirgeoportail/geoportail/wmts?SERVICE=WMTS&VERSION=1.0.0&REQUEST=GetTile&LAYER=PLAN.IGN&TILEMATRIXSET=PM&TILEMATRIX=13&TILEROW=2909&TILECOL=4133&FORMAT=application/x-protobuf&EXCEPTIONS=application/vnd.ogc.se_xml&STYLE=default
2022-02-08 15:59:09,758 - GeoHealthCheck.probe - INFO - response: status=200
2022-02-08 15:59:09,758 - GeoHealthCheck.probe - INFO - Result: success=False msg=HTTP Error status=404 response_time=1.342711

Slovenian WMTS

Strange problem getting Bounding box when adding the Probe. Log output below.

2022-02-08 16:00:03,685 - init - ERROR - Exception on /probe/GeoHealthCheck.plugins.probe.wmts.WmtsGetTileAll/380/edit_form [GET]
Traceback (most recent call last):
  File "/venv/lib/python3.7/site-packages/flask/app.py", line 2446, in wsgi_app
    response = self.full_dispatch_request()
  File "/venv/lib/python3.7/site-packages/flask/app.py", line 1951, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/venv/lib/python3.7/site-packages/flask/app.py", line 1820, in handle_user_exception
    reraise(exc_type, exc_value, tb)
  File "/venv/lib/python3.7/site-packages/flask/_compat.py", line 39, in reraise
    raise value
  File "/venv/lib/python3.7/site-packages/flask/app.py", line 1949, in full_dispatch_request
    rv = self.dispatch_request()
  File "/venv/lib/python3.7/site-packages/flask/app.py", line 1935, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
  File "/venv/lib/python3.7/site-packages/flask_login/utils.py", line 261, in decorated_view
    return func(*args, **kwargs)
  File "/GeoHealthCheck/GeoHealthCheck/app.py", line 820, in get_probe_edit_form
    probe_obj.expand_params(resource)
  File "/GeoHealthCheck/GeoHealthCheck/plugins/probe/wmts.py", line 453, in expand_params
    raise err
  File "/GeoHealthCheck/GeoHealthCheck/plugins/probe/wmts.py", line 445, in expand_params
    bbox84 = layer_object.boundingBoxWGS84
AttributeError: 'ContentMetadata' object has no attribute 'boundingBoxWGS84'
2022-02-08 16:01:11,345 - GeoHealthCheck.probe - INFO - Requesting: GET url=https://storitve.eprostor.gov.si/ows-pub-wmts/service/wmts

Austrian Basemap

Reported as REST-only (?), while I think KVP is reported as well. Logs.
Mostly not-found errors e.g. on https://basemap.at/wmts/bmapoverlay/google3857/11/1098/714.png


2022-02-08 16:01:50,600 - GeoHealthCheck.app - INFO - adding Probe class=GeoHealthCheck.plugins.probe.wmts.WmtsGetTileAll parms={'probe_class': 'GeoHealthCheck.plugins.probe.wmts.WmtsGetTileAll', 'parameters': {'layers': ['geolandbasemap'], 'tilematrixset': 'sample', 'tilematrix': 'sample', 'latitude_4326': '47.698321', 'longitude_4326': '13.1411895', 'format': 'sample', 'exceptions': 'application/vnd.ogc.se_xml', 'style': 'default', 'kvprest': 'REST'}, 'checks': [{'check_class': 'GeoHealthCheck.plugins.check.checks.HttpStatusNoError', 'parameters': {}}, {'check_class': 'GeoHealthCheck.plugins.check.checks.NotContainsOwsException', 'parameters': {'strings': ['ExceptionReport>', 'ServiceException>']}}, {'check_class': 'GeoHealthCheck.plugins.check.checks.HttpHasImageContentType', 'parameters': {}}]}
2022-02-08 16:01:50,624 - GeoHealthCheck.geocoder - INFO - Requesting: url=http://ip-api.com/json/www.basemap.at
2022-02-08 16:01:50,679 - GeoHealthCheck.geocoder - INFO - response: status=200
2022-02-08 16:01:52,325 - GeoHealthCheck.probe - INFO - Requesting: GET url=https://www.basemap.at/wmts/geolandbasemap/google3857/4/8/5.png
2022-02-08 16:01:52,412 - GeoHealthCheck.probe - INFO - Check: fun=GeoHealthCheck.plugins.check.checks.HttpStatusNoError result=False
2022-02-08 16:01:52,413 - GeoHealthCheck.probe - INFO - Check: fun=GeoHealthCheck.plugins.check.checks.NotContainsOwsException result=True
2022-02-08 16:01:52,413 - GeoHealthCheck.probe - INFO - Check: fun=GeoHealthCheck.plugins.check.checks.HttpHasImageContentType result=False
2022-02-08 16:01:52,465 - GeoHealthCheck.probe - INFO - Requesting: GET url=https://www.basemap.at/wmts/bmapoverlay/google3857/11/1098/714.png
2022-02-08 16:01:52,578 - GeoHealthCheck.probe - INFO - Requesting: GET url=https://www.basemap.at/wmts/bmapgrau/google3857/18/140641/91452.png
2022-02-08 16:01:52,681 - GeoHealthCheck.probe - INFO - Requesting: GET url=https://www.basemap.at/wmts/bmaphidpi/google3857/5/17/11.jpeg
2022-02-08 16:01:52,770 - GeoHealthCheck.probe - INFO - Requesting: GET url=https://www.basemap.at/wmts/bmaporthofoto30cm/google3857/18/140641/91452.jpeg
2022-02-08 16:01:52,876 - GeoHealthCheck.probe - INFO - Requesting: GET url=https://www.basemap.at/wmts/bmapgelaende/google3857_0-17/2/2/1.jpeg
2022-02-08 16:01:52,990 - GeoHealthCheck.probe - INFO - Requesting: GET url=https://www.basemap.at/wmts/bmapoberflaeche/google3857_0-17/3/4/2.jpeg
2022-02-08 16:01:53,050 - GeoHealthCheck.probe - INFO - Result: success=False msg=HTTP Error status=404 response_time=0.776604

OpenGeoGroep - OpenBasisKaart

When adding the Probe (like Slovenian example) this error in UI: Error getting Probe form for GeoHealthCheck.plugins.probe.wmts.WmtsGetTileAll

2022-02-08 16:32:13,553 - views - WARNING - Cannot expand plugin vars for GeoHealthCheck.plugins.probe.wmts.WmtsGetTile err=AttributeError("'ContentMetadata' object has no attribute 'boundingBoxWGS84'")
2022-02-08 16:32:13,585 - views - WARNING - Cannot expand plugin vars for GeoHealthCheck.plugins.probe.wmts.WmtsGetTileAll err=AttributeError("'ContentMetadata' object has no attribute 'boundingBoxWGS84'")
2022-02-08 16:32:46,891 - init - ERROR - Exception on /probe/GeoHealthCheck.plugins.probe.wmts.WmtsGetTileAll/424/edit_form [GET]
Traceback (most recent call last):
  File "/venv/lib/python3.7/site-packages/flask/app.py", line 2446, in wsgi_app
    response = self.full_dispatch_request()
  File "/venv/lib/python3.7/site-packages/flask/app.py", line 1951, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/venv/lib/python3.7/site-packages/flask/app.py", line 1820, in handle_user_exception
    reraise(exc_type, exc_value, tb)
  File "/venv/lib/python3.7/site-packages/flask/_compat.py", line 39, in reraise
    raise value
  File "/venv/lib/python3.7/site-packages/flask/app.py", line 1949, in full_dispatch_request
    rv = self.dispatch_request()
  File "/venv/lib/python3.7/site-packages/flask/app.py", line 1935, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
  File "/venv/lib/python3.7/site-packages/flask_login/utils.py", line 261, in decorated_view
    return func(*args, **kwargs)
  File "/GeoHealthCheck/GeoHealthCheck/app.py", line 820, in get_probe_edit_form
    probe_obj.expand_params(resource)
  File "/GeoHealthCheck/GeoHealthCheck/plugins/probe/wmts.py", line 453, in expand_params
    raise err
  File "/GeoHealthCheck/GeoHealthCheck/plugins/probe/wmts.py", line 445, in expand_params
    bbox84 = layer_object.boundingBoxWGS84
AttributeError: 'ContentMetadata' object has no attribute 'boundingBoxWGS84'

Context

  • in Docker on Demo site
  • GeoHealthCheck Version latest as on feb 8, 2022 after merging Wmts Probe #406
@justb4 justb4 added the bug label Feb 8, 2022
@justb4 justb4 added this to the Version 0.9.0 milestone Feb 8, 2022
@justb4 justb4 modified the milestones: Version 0.9.0, Version 0.9.1 Aug 10, 2022
@justb4 justb4 modified the milestones: Version 0.9.1, Version 0.9.2 Jun 19, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant