Utilisation de ELK pour stocker des fichiers csv contenant des flows

Bonjour à tous et à toutes

Je suis débutant avec la suite elk et je voudrais faire une chose :

J'ai des fichiers CSV qui contiennent des flux de données obtenues avec argus + ra, voici un exemple de fichier :

         StartTime      Flgs    RunTime  Proto            SrcAddr  Sport   Dir            DstAddr  Dport  TotPkts   TotBytes State 
   15:22:25.626402                         man                  0      0                        0      0        0          0   STA
   13:14:24.779287  e          4.981112    tcp           uneIP.41578     ->          uneIP.telnet       69       4720   CLO
   13:14:29.911912  e d        3.686514    tcp           uneIP.41578     ->          uneIP.telnet       17       1206   CLO

(je préfère masquer les ip car ils y en a des publiques)

Donc je possède plusieurs fichiers comme cela dans un répertoire et j'aimerais les indéxer dans elasticsearch, dans un index pattern qui est déjà créé (mais j'ai vu qu'on pouvais mettre plusiseurs types de données dans un seul index pattern)

Voici le fichier de configuration que j'ai testé :

input{
	file { 
		path => "/home/netflows/*.csv"
		start_position => "beginning"
		sincedb_path => "/dev/null"
		codec => netflow
	}
}
output { 
	elasticsearch {
		hosts => "localhost:9200"
		index => "index-flows"
	}
stdout{ codec => rubydebug }
}

Mais j'ai eu plusieurs warnings :

[WARN ] 2019-06-03 14:56:56.151 [[main]-pipeline-manager] elasticsearch - Restored connection to ES instance {:url=>"http://localhost:9200/"}

[WARN ] 2019-06-03 14:56:56.429 [[main]-pipeline-manager] elasticsearch - Detected a 6.x and above cluster: the `type` event field won't be used to determine the document _type {:es_version=>7}

et ensuite pleins de fois celui-ci

[WARN ] 2019-06-03 14:56:58.875 [[main]<file] netflow - Ignoring Netflow version v8224

Est-ce que quelqu'un pourrait m'aider à envoyer les données netflow de mes fichiers csv dans elasticsearch et créer le type de donnée Netflow dans mon index svp ?

Merci d'avance

Je ne comprends pas ce que vient faire le codec netflow ici (je ne le connais pas ceci-dit).
Tes fichiers CSV sont bien au format texte et lisibles ?

Par contre, il te faut sans doute ajouter un filtre CSV pour extraire le contenu de chaque ligne.

Un exemple de filtre CSV sur cette page:

1 Like

Merci pour votre réponse
J'ai pris exemple en ajoutant le filter csv comme ceci :

filter {
	csv {
		columns => [ "StartTime","Flgs","RunTime","Proto","SrcAddr","Sport","Dir","DstAddr","Dport","TotPkts","TotBytes","State"]
		separator => ";"
		#skip_empty_columns => "true"
		#skip_empty_rows => "true"
	}

Comment puis-je faire pour créer un type de données dans elasticsearch ?
J'ai un index pattern qui contient déjà d'autres données différentes, et je souhaiterai dans cet index pattern créer un type de données que j'appellerais "netflow", de manière retrouver uniquement mes données de fichiers csv lorsque je veux y accèder ?

Merci beaucoup

Bonjour Monsieur,

Après quelques recherches concernant ma question sur les types de données, j'ai trouvé un exemple de "mapping"

PUT 'Server_URL/Index_Name/_mapping/Mapping_Name'
{
            "type_1" : {
                        "properties" : {
                                    "field1" : {"type" : "string"}
                        }

si je comprends bien je dois mettre le type de données que je veux (par exemple Netflow, CSV, ou autres) à la place de type_1 , et j'imagine que je dois indiquer ce mapping dans mon fichier de configuration logstash ,?
Mon but est de pouvoir indéxer deux types de données différentes dans un seul index-pattern (ou alors il est préfèrable d'en créer un deuxième ?) et d'obtenir uniquement les données Netflows, ou alors mes autres données, ou les deux, quand j'en ai besoin

Merci et bonne journée

Créé un nouvel index.

La notion de type disparait en version 7. Donc un index par "type" d'objet est ce qu'il faut faire, sauf besoins très particuliers.

Salut,

Juste a ce propos n’oublie pas Le Common schema qui pourrait être utile d’après le besoin que tu présente.

et la doc:

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.