diff --git a/service.py b/service.py index 1627d03..7b990dd 100755 --- a/service.py +++ b/service.py @@ -107,13 +107,15 @@ class StatusPage: def render_service_details(self): # generate list of hosts by scanning services for unique host_name - host_names = set() + host_names = {} for service in self.get_api_result(): - host_names.add(service['attrs']['host_name']) + host_names[service['joins']['host']['vars']['pretty_name']] = service['attrs']['host_name'] + # render html for each host_name html_output = [] - for host in sorted(host_names): - html_output.append(self.render_services_per_host(host)) + # Can't use .values() here, since we want to sort by prettyname + for prettyname, hostname in sorted(host_names.items()): + html_output.append(self.render_services_per_host(hostname)) return ''.join(html_output)