Quelltypstruktur verfeinern
Feintunen Sie, wie Health Log Analytics Ihre inneren Protokollnachrichten liest und Anomalien erkennt, indem Sie die extrahierten Eigenschaften in der Quelltypstruktur anpassen.
Vorbereitungen
Erforderliche Rolle: evt_mgmt_admin
Prozedur
- Navigieren zu Alle > Health Log Analytics > Dateneingaben > Quelltypstruktur.
-
Öffnen Sie einen Datensatz.
Hinweis:
- Standardmäßig ist Auto extraction (Automatische Extraktion) ausgewählt, damit Health Log Analytics den Transport-Header automatisch von der inneren Protokollnachricht trennt.
- Wenn das Formular „Source Type Structure“ (Quelltypstruktur) zum ersten Mal angezeigt wird, ruft Health Log Analytics Protokollbeispiele automatisch ab. Rufen Sie in nachfolgenden Sitzungen die neuesten Beispiele ab, indem Sie Refresh Samples (Beispiele aktualisieren) auswählen.
- Wahlweise:
Schauen Sie sich an, wie sich die JavaScript-Funktion auf Protokollzeilen auswirkt.
- Fügen Sie im Feld Test manual sample (Manuelles Beispiel testen) eine Beispielnachricht hinzu.
- Wählen Sie Start.
- Beachten Sie auf der Registerkarte Key/Value Mapping (Schlüssel-Wert-Zuordnung), wie sich die JavaScript-Funktion auf Protokollzeilen auswirkt.
-
Wählen Sie im Feld Raw input sample (Roheingabebeispiel) eine Protokollnachricht aus.
Health Log Analytics verwendet diese Beispielnachricht, um den kombinierten Effekt der automatischen Extraktion und der JavaScript-Funktion in den Protokollzeilen zu veranschaulichen, wenn Sie Ihre JavaScript-Funktion testen.
Die folgenden Felder sind schreibgeschützt:Feld Beschreibung Duration (ms) (Dauer (ms)) Verarbeitungszeit aller Beispiele in Millisekunden Dropped (Verworfen) Gesamtzahl der in allen Beispielen verworfenen Protokolle Fehler Gesamtzahl der in allen Beispielen aufgetretenen Fehler Zeitstempel-Extraktionsfehler Anzahl der Zeitstempel-Extraktionsfehler, die in allen Beispielen aufgetreten sind Severity extraction failures (Schweregrad-Extraktionsfehler) Gesamtzahl der Schweregrad-Extraktionsfehler, die in allen Beispielen aufgetreten sind Message extraction failures (Nachrichten-Extraktionsfehler) Gesamtzahl der Nachrichten-Extraktionsfehler, die in allen Beispielen aufgetreten sind Lengthy properties (Lange Eigenschaften) Gesamtzahl der längeren Eigenschaften in allen Beispielen. Lange Eigenschaften sind Eigenschaften mit mehr als 256 Zeichen.Hinweis:Da Health Log Analytics solche Eigenschaften nicht extrahiert, werden sie in Elasticsearch nicht als Stichwörter indiziert. -
Definieren Sie eine JavaScript-Funktion, die automatisch extrahierte Eigenschaften anpasst oder der Quelltypstruktur Eigenschaften hinzufügt.
-
Ändern Sie in der JavaScript-Konsole entweder die bereitgestellte JavaScript-Standardfunktion, ändern Sie eine vorhandene benutzerdefinierte JavaScript-Funktion, oder definieren Sie eine neue.
Hinweis:Zusätzlich zur JavaScript-Standardfunktion bietet Health Log Analytics mehrere JS-Funktionsvorlagen zum Verfeinern der Quelltypstruktur. Die Vorlagen können als Ausgangspunkt für Ihren benutzerdefinierten Skriptcode dienen. Diese Funktion wird unterstützt in Anwendung Health Log Analytics, Version 20.0.11 - Juli 2021, verfügbar im ServiceNow Store.
Die JavaScript-Funktion zum Verfeinern der Quelltypstruktur verwendet die folgenden Objekte:JS-Funktionsvorlagen Beschreibung Key_Values mit regulärem Ausdruck extrahieren Skript, das zum Analysieren von Protokollen in einer Reihe von Schlüssel-Wert-Paaren verwendet wird, indem reguläre Ausdrücke verwendet werden, um bestimmte Muster von regulären Ausdrücken zu identifizieren. Abhängig von den Protokolldaten, die an den Quelltyp gesendet werden, analysiert es entweder die innere Nachricht oder die vollständige Protokollzeile. Sie können sich anschauen, wie die Daten in den Beispielen angezeigt werden, die in die Quelltypstruktur geladen werden.
Dieser Prozess ist iterativ. Er wird wiederholt, bis alle Schlüssel-Wert-Paare gefunden wurden.
Key_Values mit split-regex extrahieren Skript, das zum Analysieren von Protokollen in einer Reihe von Schlüssel-Wert-Paaren verwendet wird, indem reguläre Ausdrücke verwendet werden, um bestimmte Muster von regulären Ausdrücken zu identifizieren. Dieser Prozess erfasst zuerst die Werte in einem LIST-Formular und verwendet dann die Java-Split-Funktion, um Schlüssel-Wert-Paare zu erstellen.
Je nachdem, wie die Daten in der Roheingabe angezeigt werden, ist diese Funktion möglicherweise effizienter als das
Extrahieren von Key_Values mit regulärem Ausdruck. Die Roheingabe ist entweder die innere Nachricht, die die Headererkennung weiterleitet, oder das vollständige Rohprotokoll, wenn die Headererkennung deaktiviert ist oder für dieses bestimmte Protokoll nicht funktioniert.JSON-Analyse - reduzieren Skript, das zum Extrahieren von JSON-Informationen verwendet wird, die Teil einer anderen Textzeichenfolge aus der Roheingabe sind. Beispielsweise könnten die Informationen eine JSON-Anforderung sein, die als Teil einer längeren inneren Nachricht geschrieben wurde. Innere JSON-Abschnitte sind schwer aufzuteilen. In solchen Fällen kann dieses Skript verwendet werden, um die Schlüssel-Wert-Paare zu „reduzieren“ oder zu analysieren.
Neues Feld aus Roheingabe extrahieren Skript, das zum Extrahieren eines neuen Felds aus der Roheingabe verwendet wird, indem ein regulärer Ausdruck mit Erfassungsgruppen verwendet wird, um das Muster des neuen Felds zu identifizieren. XML-Format analysieren Skript, das zum Extrahieren von Schlüssel-Wert-Paaren aus dem XML verwendet wird, indem das XML-Format mithilfe eines regulären Ausdrucks identifiziert wird. Dieser Prozess ist iterativ. Er wird wiederholt, bis alle Schlüssel-Wert-Paare gefunden wurden.
Numerischen Schweregrad als Textwerte festlegen Skript, das zum Konvertieren von numerischen Schweregradwerten in entsprechende Textschweregradwerte verwendet wird. Hinweis:Damit das System den Schweregrad eines Protokolls richtig identifizieren kann, muss der Schweregrad im Textformat angegeben werden. Es dürfen keine numerischen Schweregradwerte übrig bleiben.Trim-Funktion Skript, das zum Entfernen der doppelten Anführungszeichen verwendet wird, die die Zeichenfolge von VALUE umgeben. Sie können diese Funktion anpassen, um alle anderen Zeichen zu entfernen, die den Ausgabewert eines Schlüssel-Wert-Paares umgeben.
Tabelle : 1. Signatur: Funktionskonstrukt (Beispiel, Ausgabe) Objekt Beschreibung Beispiel Aus der Beispielnachricht extrahierte innere Nachricht Ausgabe Objekt, das die Schlüssel-Wert-Paarzuordnung enthält - Testen Sie die JavaScript-Funktion, indem Sie auf Test klicken.
-
Zeigen Sie das Ergebnis der JavaScript-Funktion in den zugehörigen Listen an, und nehmen Sie bei Bedarf Änderungen vor.
- Die Registerkarte Schlüssel/Wert-Zuordnungen zeigt die Auswirkungen Ihrer JavaScript-Funktion in Kombination mit der automatischen Extraktion des Systems für Ihr Roheingabebeispiel.
Gegebenenfalls können Sie Schlüssel ändern.
- Mit dem Feld Classification (Klassifizierung) können Sie die Klassifizierung einer Eigenschaft zurücksetzen. Die verfügbaren Typen lauten:
Typ Beschreibung Beispiel Zähler Eine Eigenschaft bei dieser Klassifizierung erkennt Anomalien anhand der Häufigkeit, in der die Eigenschaft in jeder Protokollnachricht erscheint. Sie stellt Änderungen in der Menge dieses Werts als Teil der automatischen Ursachenanalyse dar. Hinweis:Als Zähler klassifizierte Eigenschaften verbrauchen Ressourcen.Statuscodes, Antwortcodes, Aktionen oder Muster Anzeige Eine Eigenschaft mit dieser Klassifizierung erkennt Anomalien in einem numerischen Wert, der kontinuierlich gemeldet wird. Hinweis:Als Anzeige klassifizierte Eigenschaften verbrauchen Ressourcen.CPU, Arbeitsspeicher oder Antwortzeit Anzeige ohne Zeit Eine Eigenschaft mit dieser Klassifizierung erkennt Anomalien in einem numerischen Wert, der nicht kontinuierlich gemeldet wird. Das System meldet eine Anomalie in diesem Wert, egal wann die Anomalie aufgetreten ist. Hinweis:Diese Funktion wird unterstützt in Anwendung Health Log Analytics, Version 20.0.11 - Juli 2021, verfügbar im ServiceNow Store.Automatische Ursachenanalyse (nur ARC) Eine Eigenschaft mit dieser Klassifizierung meldet die Eigenschaft nicht als eigenständige Anomalie, sondern als Teil der automatischen Ursachenanalyse einer anderen Anomalie. Benutzername, IP-Adressen, Anwendungskomponenten oder Rechenzentrum Ungültig Eine Eigenschaft mit dieser Klassifizierung wird in der automatischen Ursachenanalyse nicht berechnet oder angezeigt. Hinweis:Als ungültig klassifizierte Eigenschaften sparen Ressourcen. - Über das Feld Bezeichnungen, die zugewiesen werden sollen können Sie eine Eigenschaft für eine Bezeichnung festlegen.
Bezeichnung Beschreibung Zeitstempel Eigenschaft, die den Zeitstempel des Events enthält Hinweis:Wenn die automatische Erkennung von Headereigenschaften aktiviert ist und der Quelltyp keinen Zeitstempel hat, extrahiert das System den Zeitstempel aus dem Übertragungsheader. Wenn die Headererkennung deaktiviert ist oder für die relevanten Protokollzeilen in der Dateneingabe nicht funktioniert, müssen alle Protokollzeilen über die richtigen Zeitstempel verfügen.Schweregrad Eigenschaft, die den Schweregrad des Protokolls darstellt Nachricht Protokollnachricht Das System verwendet diese Eigenschaft, um Textmuster in den Daten zu identifizieren. Host Eigenschaft, die den Host darstellt, von dem das Event gesendet wurde Hinweis:Wenn die automatische Erkennung von Headereigenschaften aktiviert ist und der Quelltyp keinen Host hat, extrahiert das System den Host aus dem Übertragungsheader. Wenn die Headererkennung deaktiviert ist oder für die relevanten Protokollzeilen in der Dateneingabe nicht funktioniert, müssen alle Protokollzeilen über die einen Host verfügen.Externe ID Eigenschaft, die als eindeutiger Bezeichner für diesen Event-Typ dient. Beispiel: Event-ID im Windows-Event-Protokoll - Im Feld Rename key (Schlüssel umbenennen) können Sie den Schlüssel umbenennen.
- Mit dem Feld Classification (Klassifizierung) können Sie die Klassifizierung einer Eigenschaft zurücksetzen. Die verfügbaren Typen lauten:
- Die Registerkarte Outcome Key-Value (Ergebnis-Schlüssel-Wert) zeigt, wie Ihre JavaScript-Funktion die Daten verarbeitet hat.
- Die übrigen Registerkarten zeigen Fehler, Nachrichten-Extraktionsfehler, Schweregrad-Extraktionsfehler, Zeitstempel-Extraktionsfehler und lange Eigenschaften an.
Hinweis:Wenn sich Ihre neue JavaScript-Funktion nicht wie erwartet verhält, können Sie zur zuletzt veröffentlichten Funktion zurückkehren, indem Sie auf den zugehörigen Link JS-Funktion zurücksetzen klicken. - Die Registerkarte Schlüssel/Wert-Zuordnungen zeigt die Auswirkungen Ihrer JavaScript-Funktion in Kombination mit der automatischen Extraktion des Systems für Ihr Roheingabebeispiel.
- Wahlweise: Nehmen Sie alle erforderlichen Anpassungen vor, und testen Sie die JavaScript-Funktion erneut.
-
Ändern Sie in der JavaScript-Konsole entweder die bereitgestellte JavaScript-Standardfunktion, ändern Sie eine vorhandene benutzerdefinierte JavaScript-Funktion, oder definieren Sie eine neue.
-
Klicken Sie auf Save template (Vorlage speichern), um die JavaScript-Funktion zu speichern.
Sie können die JavaScript-Funktion entweder als neue Vorlage speichern oder die aktuell ausgewählte Vorlage überschreiben.
- Um die JavaScript-Funktion als neue Vorlage zu speichern, geben Sie einen neuen Namen in das Feld Template name (Vorlagenname) ein.
- Um die aktuell im Feld JS function templates (JS-Funktionsvorlagen) ausgewählte Vorlage zu überschreiben, lassen Sie das Feld Template name (Vorlagenname) leer.
- Klicken Sie auf Publish (Veröffentlichen), um die JavaScript-Funktion in der Datenbank zu speichern.
Ergebnisse
Das neue Skript wird automatisch der Liste der JS-Funktionsvorlagen hinzugefügt, aus denen Sie auswählen können. Diese Funktion wird unterstützt in Anwendung Health Log Analytics, Version 20.0.11 - Juli 2021, verfügbar im ServiceNow Store.
Nächste Maßnahme
Fahren Sie mit den verbleibenden Setup-Aufgaben für Dateneingaben fort: Stellen Sie sicher, dass alle Protokollquellen vorhanden und aktiv sind, und fügen Sie gegebenenfalls Zeitstempelformate hinzu.