Vous pouvez configurer des analyseurs Comma-Separated Value (CSV) pour les collecteurs FileLog
et WinLog
.
Les options disponibles pour l'analyseur csv
sont fields
et delimiter
.
Options de l'analyseur CSV
Les informations relatives à la structure de l'analyseur csv sont les suivantes :
Option | Description |
---|---|
fields |
L'option L'option
Les noms de champs doivent être séparés par une virgule, comme suit :
fields = field_name1, field_name2, field_name3, field_name4Cette définition suppose que les noms field_name1, field_name2, field_name3 et field_name4 sont attribués de manière séquentielle aux champs extraits. Si des champs sont omis par l'analyseur CSV, leurs noms peuvent également ne pas figurer sur la liste. Par exemple, fields = field_name1, , field_name3, field_name4 Dans ce cas, l'analyseur extrait uniquement le premier, le troisième et le quatrième champs de l'événement. Il leur attribue ensuite les noms field_name1, field_name3 et field_name4. Si l'option Champs ne spécifie pas une liste complète de champs dans vos journaux, l'analyseur renvoie une liste vide. Par exemple, si le fichier journal contient Vous ne pouvez pas utiliser |
delimiter |
L'option Par exemple, L'analyseur csv prend en charge n'importe quel ensemble de caractères comme délimiteurs placés entre guillemets, par exemple "||" ou "asd". Les séparateurs de valeurs des champs dans les journaux doivent correspondre exactement au modèle défini par le paramètre des délimiteur, sinon l'analyseur va échouer. Des caractères spéciaux tels qu'un espace ou une tabulation peuvent être définis comme délimiteur pour l'analyseur csv à condition que le caractère d'échappement précède le caractère spécial (\", \s, \t). Par exemple, L'option |
Configuration de l'analyseur de journaux CSV
Pour analyser des journaux issus de sources winlog ou filelog, utilisez la configuration suivante :
[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
Selon cette configuration, les journaux collectés à partir de la source some_csv_logs (par exemple à partir du répertoire directory=D:\Logs) sont analysés par myparser. Si ces journaux contiennent trois valeurs séparées par un point-virgule, les événements analysés de façon séquentielle reçoivent les noms field_name1, field_name2 et field_name3.
Pour analyser le journal CSV suivant :
"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_notesL'analyseur CSV renvoie les champs suivants :
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.