Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

Testing and issues for new WMTS Probes

Offen
#420 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Anfängerfreundlichkeit
35/100
Issue-Typ
Bug
Klarheit
Muss geklärt werden
Aktivitätsstatus
Veraltet
Tech-Stack
docker, python
Bereich
backend, testing-qa

Rechercherichtung

Reproduziere die aufgeführten WMTS-Fälle im Docker-Demo-Kontext, beginnend mit GeoHealthCheck/plugins/probe/wmts.py expand_params und dem get_probe_edit_form-Pfad in GeoHealthCheck/app.py. Vergleiche die Bounding-Box-Fehler von Slovenian und OpenBasisKaart mit den österreichischen REST/KVP- und Tile-Antworten. Die Aufgabe ist erledigt, wenn die gemeldeten Fehler im Probe-Formular und bei der Request-Verarbeitung behoben oder eindeutig behandelt sind und Tests oder reproduzierbare Prüfungen die betroffenen Fälle abdecken.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

bug

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 #406
Vorherrschende Sprache
Python
Sterne
92
Forks
76
Ø Merge
7 Std. 21 Min.
Gemergte PRs (30 T.)
3

Entwicklungsumgebung

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus geopython/GeoHealthCheck

Alle Issues in geopython/GeoHealthCheck

Ähnliche Issues

Weitere Issues zu Python

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.