From 3ba958f6e5cc10993bc5079d8c5cb94f436751a2 Mon Sep 17 00:00:00 2001 From: Yannik Schmidt Date: Sat, 8 Jul 2023 16:01:50 +0200 Subject: [PATCH] fix: use fallback filter icinga link for static services --- icingatools.py | 7 ++++++- server.py | 3 ++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/icingatools.py b/icingatools.py index 7eb7888..d48c767 100644 --- a/icingatools.py +++ b/icingatools.py @@ -74,10 +74,15 @@ def delete_service(user, async_service_name, app): client.objects.delete("Service", service_api_helper_name) -def build_icinga_link_for_service(user, service_name, app): +def build_icinga_link_for_service(user, service_name, static_configured, app): name = _build_service_name(user, service_name) url_fmt = "{base}/icingaweb2/dashboard/#!/icingaweb2/monitoring/service/show?host={host}&service={service}" + + if static_configured: + url_fmt = "{base}/icingaweb2/monitoring/list/services?service={service}&modifyFilter=1" + name = service_name + return url_fmt.format(base=app.config["ICINGA_WEB_URL"], host=app.config["ASYNC_ICINGA_DUMMY_HOST"], service=name) diff --git a/server.py b/server.py index 83c3d9d..a3a7b25 100755 --- a/server.py +++ b/server.py @@ -142,7 +142,8 @@ def service_details(): status_list = db.session.query(Status).filter(Status.service==service.service).all() - icinga_link = icingatools.build_icinga_link_for_service(user, service.service, app) + icinga_link = icingatools.build_icinga_link_for_service(user, service.service, + service.staticly_configured, app) return flask.render_template("service_info.html", service=service, flask=flask, user=user, status_list=status_list, icinga_link=icinga_link)