Suchen#
Die gezielte Recherche in der IT-Dokumentation ist oft der schnellste Weg zum Ziel -- schneller als das Navigieren durch Menustrukturen.
Das Suchfeld#
Das Suchfeld findest du in der Web GUI von i-doit in der oberen rechten Ecke. Gib dort beliebige Begriffe ein. Bereits beim Tippen erscheinen erste Suchergebnisse (Suchvorschläge), die du mit der Maus oder Tastatur auswählen kannst, um direkt zum gefundenen Datensatz zu springen.
Neben der Freitextsuche, kann die Suche auf bestimmte Objekt-Attribute beschränkt werden:
- Beginnt die Suche mit einer Raute, gefolgt von der Objekt-ID (#123), wird nach Drücken der Return-Taste die Übersichtsseite des Objekts mit ebendieser ID aufgerufen.
- Beginnt die Suche mit dem Stichwort title, gefolgt von einem Doppelpunkt und dem Objekt-Titel, wird das entsprechende Objekt angezeigt (title:acme).
Das Suchergebnis#
Führen die Suchvorschläge nicht zum gewünschten Ergebnis, drücke die Return-Taste. Du erhältst eine Seite mit Suchergebnissen. Neben jedem gefundenen Datensatz wird die Quelle angezeigt, beispielsweise das Attribut einer Kategorie eines Objekttyps im CMDB-Modul.
Lesezeichen/Favoriten setzen
Jede Suche kann über die URL referenziert werden. Wird nach dem Begriff "acme" gesucht, ergibt das die URL http://i-doit/i-doit/search?q=acme. So können Suchergebnisse als Lesezeichen/Favoriten im Webbrowser gespeichert werden, um sie schneller wieder aufzurufen.
Such-Modus#
Du kannst zwischen zwei Modi wählen, die zu unterschiedlichen Ergebnissen führen können:
- Normal: Für die Suche wird die Indexierung (siehe unten) verwendet. Dies ist die Standard-Einstellung.
- Deep Search: Es werden nacheinander Attribute durchsucht. Diese Suche nimmt mehr Zeit in Anspruch.
Den Such-Modus wählst du unter Extras > Suche nach der ersten Suche aus. Den Standard-Modus legst du unter Verwaltung > [Mandanten-Name] Verwaltung > Einstellungen für [Mandanten-Name] > Suche > Standard Such-Modus fest.
Automatische Deep Search#
Liefert die Suche im voreingestellten Modus kein oder ein unzureichendes Ergebnis, kann automatisch die Deep Search ausgeführt werden. Konfiguriere dieses Verhalten unter Verwaltung > [Mandanten-Name] Verwaltung > Einstellungen für [Mandanten-Name] > Suche > Automatische DeepSearch:
| Option | Beschreibung |
|---|---|
| Aktiv | Die Such-Ergebnisse werden durch eine zusätzliche Deep Search ergänzt. |
| Aktiv, wenn keine Ergebnisse gefunden werden | Die zusätzliche Deep Search wird gestartet, wenn keine Ergebnisse gefunden worden sind. |
| Deaktiviert | Die zusätzliche Deep Search wird nicht berücksichtigt. |
Indexierung#
Der Suchindex wird automatisch bei Installation und Update erzeugt. Nur bei sehr grossen Datenbanken mit mehr als 500.000 Objekten musst du ihn manuell erstellen, damit die Suche performant läuft. Die Indexierung läuft unabhängig von Benutzer-Interaktionen im Hintergrund. Starte sie über das i-doit console utility:
1 | |
Alternativ kann der Reindex auch in der i-doit Verwaltung unter Systemtools -> Cache / Datenbank über die Schaltfläche Suche-Index erneuern ausgeführt werden.
Speicherbedarf
Auf einem Unix-artigen Betriebssystem wird der Index pro 1 Million indizierter Datensätze ca. 500 MByte groß. Die Dauer einer Suchabfrage wird durch große Indizes in der Regel nicht erhöht.
Über die Konsole suchen#
Das i-doit console utility erlaubt dir auch das Suchen über die Kommandozeile:
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
Über die API suchen#
Über die programmierbare Schnittstelle (API) von i-doit kannst du ebenfalls in der IT-Dokumentation suchen. Verwende dazu die Methode idoit.search:
1 2 3 4 5 6 7 8 9 10 | |
Die Antwort vom Server sieht folgendermaßen aus:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | |
Indexierung anpassen#
Die Indexierung nutzt Funktionen von MySQL/MariaDB, die du benutzerdefiniert anpassen kannst. Einige Einstellungen konfigurierst du in der Konfigurationsdatei von MySQL/MariaDB (z.B. /etc/mysql/conf.d/i-doit.cnf). Für andere führst du SQL-Statements aus, z.B. über den Kommandozeilen-Client:
1 | |
Wortlänge#
Eine wichtige Frage ist, wie lang ein Wort mindestens sein muss, damit es indexiert wird. Häufig steht dieser Wert auf 3 Zeichen -- Begriffe wie "PC 01" werden dann nicht gefunden. Ein Wert von 2 oder sogar 1 Zeichen ist oft besser geeignet:
1 | |
Diese Einstellung könnte dazu führen, dass der Index um ein vielfaches größer wird.
Worttrenner#
Um Wörter voneinander zu unterscheiden, werden verschiedene Zeichen als Worttrenner herangezogen (z. B. Leerzeichen, Punkt, Strich). Damit der Begriff "PC-01" gefunden wird, wird dieser in "PC" und "01" aufgeteilt. Hier ist also wieder die Wortlänge entscheidend, ob "PC" und "01" indiziert werden oder nicht.
Stoppwörter#
Stoppwoerter sind Begriffe, die bei der Suche ignoriert werden (z.B. "am", "dem", "mit"). MySQL bringt eine kleine, englischsprachige Liste mit, die du durch eine eigene ersetzen kannst. Verwende dazu die folgenden SQL-Statements:
System-Datenbank von i-doit angeben:
1 | |
1 | |
1 | |
Tabelle leeren:
1 | |
Liste von deutschen Stoppwörtern einfügen:
1 2 | |
Listen von Stoppwoertern in verschiedenen Sprachen findest du schnell im Internet.
Damit deine Liste die MySQL-eigene ersetzt, trage folgende Einstellung in die MySQL-Konfiguration ein:
1 | |
Änderungen am Index aktivieren#
Damit Änderungen am Index-Verhalten wirksam werden, sind drei Schritte erforderlich. Starte zuerst den MySQL-Dienst neu. Unter Debian-basierten Betriebssystemen:
1 | |
Führe anschließend folgendes SQL-Statement für jede Mandanten-Datenbank aus:
1 | |
Vollständiges SQL Statement für den ersten Mandanten mit der Datenbank idoit_data:
1 2 | |
Führe zum Schluss ein Neu-Indexing über die i-doit Console oder die i-doit Verwaltung durch (siehe oben).
Das Limit von 2500 Ergebnissen erhöhen#
Wenn Objekte fortlaufend benannt werden (z.B. 123456-00001 bis 123456-99999), findest du mit den Standard-Sucheinstellungen nur Objekte bis 123456-02500. Dieses Limit dient der Performance. Um es zu erhöhen, fuege die folgende Experteneinstellung hinzu.
Beispiel für ein Limit von 5000 Ergebnissen:
| Key | Value | Type |
|---|---|---|
| search.limit | 5000 | Tenant-wide |
Tipps zur Suche#
IPv6 Adressen lassen sich auch mit gekürzten Schreibweisen finden. So kann beispielsweise die Adresse "2001:0db8:85a3:0000:0000:8a2e:0370:7334" auch mit "2001:db8:85a3::8a2e:370:7334" gefunden werden. Es ist also nicht notwendig, die vollständige Adresse einzugeben, um das gewünschte Ergebnis zu erhalten.
Es ist auch möglich MAC-Adressen mit Doppelpunkt, ohne Trennzeichen oder in 4er Blöcken zu suchen. So kann beispielsweise die Adresse "00:1A:2B:3C:4D:5E" auch mit "001A2B3C4D5E" oder "001A.2B3C.4D5E" gefunden werden. Es ist also nicht notwendig, die Trennzeichen einzugeben, um das gewünschte Ergebnis zu erhalten.

