Sie können Parser für das kommagetrennte Format (CSV) sowohl für FileLog
als auch für WinLog
-Collectors konfigurieren.
Die verfügbaren Optionen für den csv
-Parser sind fields
und delimiter
.
Optionen für Parser für das kommagetrennte Format (CSV-Parser)
Beachten Sie die folgenden Informationen hinsichtlich der Struktur des csv-Parsers.
Option | Beschreibung |
---|---|
fields |
Die Die
Feldnamen müssen durch Kommas getrennt werden, beispielsweise
fields = field_name1, field_name2, field_name3, field_name4Diese Definition basiert auf der Annahme , dass die Namen field_name1, field_name2, field_name3 und field_name4 sequenziell den extrahierten Feldern zugeordnet werden. Wenn manche Felder vom CSV-Parser ausgelassen werden müssen, können die Namen in der Liste ausgelassen werden. Beispiel: fields = field_name1, , field_name3, field_name4 In diesem Fell extrahiert der Parser nur das erste, dritte und vierte Feld des Ereignisses und weist diesen dann die Namen field_name1, field_name3 und field_name4 zu. Wenn die fields-Option keine vollständige Liste der Felder in Ihren Protokollen angibt, gibt der Parser eine leere Liste zurück. Wenn die Protokolldatei z. B. |
delimiter |
Die Beispielsweise Der csv-Parser unterstützt alle Zeichenfolgen als Trennzeichen, welche in Anführungszeichen eingeschlossen sind, z. B. "||" oder "asd". Die Trennzeichen der Feldwerte in den Protokollen müssen mit dem durch den Trennzeichen-Parameter definierten Muster exakt übereinstimmen, da der Parser andernfalls fehlschlägt. Sonderzeichen wie z. B. Leerzeichen oder Tabstopps können als Trennzeichen für den csv-Parser definiert werden, so lange das Espacezeichen dem Sonderzeichen für (\", \s, \t) vorangestellt wird. Beispielsweise Die Option |
CSV-Parser-Konfiguration
Verwenden Sie die folgende Konfiguration, um Protokolle aus winlog- oder filelog-Quellen zu analysieren.
[filelog|some_csv_logs] directory=D:\Logs include=*.txt;*.txt.* parser=myparser [parser|myparser] base_parser = csv fields = timestamp,field_name1, field_name2, field_name3 delimiter = ";" field_decoder={"timestamp": "tsp_parser"} [parser|tsp_parser] ; timestamp is a built-in parser base_parser=timestamp ; "format" is an option of timestamp parser format=%Y-%m-%d %H:%M:%S
Bei Verwendung dieser Konfiguration werden Protokolle, die aus der some_csv_logs-Quelle erfasst werden (z. B. aus dem Verzeichnis directory=D:\Logs) von myparser analysiert. Wenn die erfassten Protokolle drei durch Semikolon getrennte Werte enthalten, erhalten die analysierten Ereignisse sequenziell die Namen field_name1, field_name2 und field_name3.
So analysieren Sie das folgende CSV-Protokoll:
"United States","USA","North America","High income: OECD","Fiscal year end: September 30; reporting period for national accounts data: CY."
[parser|csv_log_parser] base_parser=csv fields=country_name, country_code, region, income_group, special_notesDer CSV-Parser gibt folgende Felder zurück:
country_name=United States country_code=USA region=North America income_group=High income: OECD special_notes=Fiscal year end: September 30; reporting period for national accounts data: CY.