2017-08-23 1 views
0

Est-ce que quelqu'un sait comment ajouter des informations de géolocalisation personnalisées dans Logstash 5.5? Logstash 5.x ne prend pas en charge les anciennes bases de données .dat MaxMind GeoIP. Il y avait un outil disponible pour ajouter des données csv personnalisées à cette base de données. Il n'y a pas d'écrivain disponible pour le format MMDB actuel (le seul supporté par Logstash 5.x)Enrichir les journaux avec la géoinformation personnalisée

J'ai essayé avec les filtres translate et csv, mais ils ne conviennent pas pour cette tâche. La traduction ne peut lire qu'une ligne de données CSV et ne peut pas rechercher les lignes.

Un dictionnaire YAML n'est pas non plus possible, car j'ai non seulement la latitude et la longitude dans mon csv mais aussi les noms de ville et ainsi de suite.

Il semble un peu étrange qu'il n'y ait pas de plugin pour rechercher des données, par exemple. une base de données, csv, peu importe et ajouter des champs à un objet.

Peut-être que quelqu'un a une idée?

Merci à l'avance

+0

Quelles sont vos données source et quel est le document de sortie prévu? – whites11

+0

Il existe des modules perl pour le format hérité et le format MMDB. Vous pourrez peut-être utiliser le code source de la version .dat pour le convertir au format MMDB. Il y a aussi un plugin (j'ai écrit) qui va faire des recherches basées sur les clés dans un fichier CSV/YML/JSON et ajouter plusieurs champs à un événement. Voir https://github.com/alcanzar/logstash-filter-augment – Alcanzar

+0

@ whites11 Mes sources sont les journaux d'accès nginx et apache que je veux compléter avec des données de géolocalisation personnalisées à partir de CSV, JSON, YAML (ce qui fonctionne le mieux). La sortie est stockée dans ElasticSearch. – Conrad

Répondre

0

En logstash 5.5, vous pouvez utiliser le GeoIP filter plugin pour convertir une adresse IP à un endroit.

En logstash, vous devez configurer un filtre de cette façon:

filter { 
    "field": "clientip" 
} 

Vous devez régler « clientip » avec le champ dans votre document qui contient l'adresse IP que vous souhaitez rechercher.

+0

Le filtre geoip supporte uniquement les fichiers MMDB de MaxMind et non structurés comme CSV – Conrad

+0

Vous n'avez donc pas besoin d'une résolution geoip (adresse IP) => latitude/longitude) mais une sorte de mappage personnalisé (adresse IP => votre valeur ici)? – whites11

+0

Nous avons beaucoup d'utilisateurs internes avec des adresses IP privées qui ne sont pas incluses dans les bases de données publiques GeoIP. Par conséquent, j'ai besoin d'une solution pour rechercher des données liées à une adresse IP dans un fichier/base de données (tout ce qui fonctionne). – Conrad