Views für meine Kontaktgruppen

Hallo liebe checkmk Gemeinde,

ich habe Hosts zu Kontaktgruppen und die Kontaktgruppen zu Usern zugewiesen.
Alles super soweit. Wenn ich im User Profil “Only show hosts and services the user is a contact for” setze bekomme ich auch nur meine Hosts angezeigt.

Ich will aber eigentlich immer alle Alarme sehen können, hätte aber gerne für meine User einen View wo sie nur die Hosts sehen für die sie Mitglied einer Kontaktgruppe sind.

Ist es möglich views so zu filtern das nur die Hosts angezeigt werden für die der aktuelle User ein Contact ist?

Den Filter auf “Host Contact” gibt es, aber wie übergebe ich den aktuellen Usernamen?

Jörg

Da keine Antwort gekommen ist, gehe ich davon aus das dies nicht umsetzbar ist.

Gruß Jörg

Sagen wir mal so es geht nicht zum zusammenklicken im Web :wink:
Ich hab deine Frage bestimmt vor zwei Wochen überlesen oder zu wenig Zeit zum Nachdenken gehabt.
Das Problem ist, der Username des eingeloggten Benutzers steht nirgends als Variable zur Verfügung.
Hier meine Lösung.

Du erstellst ganz normal die Views, diesen müssen nur schon den Filter für den Contact enthalten.
Danach überführst die von dir erstellten Views in richtige View Definitionen (keine mk Files mehr)

Ergebnis sieht dann so aus.

#!/usr/bin/env python
# -*- encoding: utf-8; py-indent-offset: 4 -*-
from cmk.gui.login import check_auth_by_cookie

user = check_auth_by_cookie()

multisite_builtin_views.update({
        'allhosts2': {'add_context_to_title': True,
              'browser_reload': 30,
              'column_headers': 'pergroup',
              'context': {'host_acknowledged': {'is_host_acknowledged': '-1'},
                          'host_check_command': {'host_check_command': ''},
                          'host_ctc': {'host_ctc': user},
                          'host_ctc_regex': {'host_ctc_regex': ''},
....
              'single_infos': [],
              'sorters': [('site', False), ('site_host', False)],
              'title': u'All hosts 2',
              'topic': u'Hosts',
              'user_sortable': True},
})

Wie unschwer zu erkennen ist hab ich hier nur die zwei Zeilen für die Auswertung des aktuellen Cookies mit rein getan und dann halt das Ergebnis bei dem Filter “host_ctc” eingetragen.
Test war soweit erfolgreich. Abgelegt ist das File ganz normal unter “~/local/share/check_mk/web/plugins/views/”

2 Likes

Hallo Andreas,
vielen Dank fürs ausarbeiten!

Ich werde das in der Nächsten Woche versuchen umzusetzen.

Gruß
Jörg

Hallo Andreas,

das funktioniert so leider nicht.

check_auth_by_cookie() hat bei mir einen anderen Usernamen geliefert. Also nicht meinen eigenen.