diff --git a/brian_dashboard_manager/templating/helpers.py b/brian_dashboard_manager/templating/helpers.py index e7bbd68772272967caa6af9185172cb1ab80ed5c..2f57dd63ce526532b5b7121a208c0d5c9e850e08 100644 --- a/brian_dashboard_manager/templating/helpers.py +++ b/brian_dashboard_manager/templating/helpers.py @@ -212,7 +212,7 @@ def get_nren_interface_data(services, interfaces, excluded_dashboards): if_name = _interfaces[0].get('port') router = _interfaces[0].get('equipment') router = router.replace('.geant.net', '') - title = f'{router} - {if_name} - {name} ({sid})' + title = f'{router} - {{}} - {if_name} - {name} ({sid})' if lag_service: if len(_interfaces) > 1: @@ -495,7 +495,7 @@ def get_panel_fields(panel, panel_type, datasource): }) -def default_interface_panel_generator(gridPos, ipv6_only=False): +def default_interface_panel_generator(gridPos, use_ipv4=True, use_ipv6=True): """ Helper for generating panel definitions for dashboards. @@ -503,7 +503,8 @@ def default_interface_panel_generator(gridPos, ipv6_only=False): panel data and panel type. :param gridPos: generator for grid positions - :param ipv6_only: whether to use IPv6 traffic exclusively or not + :param use_ipv4: include ipv4 interfaces + :param use_ipv6: include ipv6 interfaces :return: function that generates panel definitions """ @@ -525,29 +526,22 @@ def default_interface_panel_generator(gridPos, ipv6_only=False): result = [] for panel in panels: - if ipv6_only: - if panel.get('has_v6', False): - result.append(get_panel_fields({ - **panel, - **next(gridPos) - }, 'IPv6', datasource)) - else: - continue - else: + if use_ipv4: result.append(get_panel_fields({ **panel, **next(gridPos) }, 'traffic', datasource)) + if use_ipv6: if panel.get('has_v6', False): result.append(get_panel_fields({ **panel, **next(gridPos) }, 'IPv6', datasource)) - if errors: - result.append(get_panel_fields({ - **panel, - **next(gridPos) - }, 'errors', datasource)) + if errors: + result.append(get_panel_fields({ + **panel, + **next(gridPos) + }, 'errors', datasource)) return result @@ -583,8 +577,8 @@ def get_nren_dashboard_data_single(data, datasource, tag): gridPos = gridPos_generator(id_gen) agg_panels = [] - panel_gen = default_interface_panel_generator(gridPos) - panel_ipv6_gen = default_interface_panel_generator(gridPos, ipv6_only=True) + panel_gen = default_interface_panel_generator(gridPos, use_ipv4=True, use_ipv6=False) + panel_ipv6_gen = default_interface_panel_generator(gridPos, use_ipv4=False, use_ipv6=True) services_dropdown = create_dropdown_panel('Services', **next(gridPos))