Matcher des valeurs


(Axel Dujardin) #1

hello world !

Fraichement débarquer dans le monde d'Elastic, il-y'a encore pas mal de choses que je suis en train de découvrir et je commence à buté sur un point auquel je n'arrive pas à avoir de réponse clair, alors peut-être que quelqu'un pourrais m'aider sur ce point ! :wink:

Mon travail consiste à interroger plusieurs bases de données (3 plus exactement).
Dans le même fichier de .conf je possèdent plusieurs "Input" de JDBC avec une requête SQL adaptés pour chacune de ces bases de données.

Je récupère dans ces différente bases, un champs différent mais qui possèdent une valeurs identique.

exemple : (bdd1) glpi_computers.name = 'toto' & (bdd2) ordinateur.nom = 'toto'

Je souhaiterais que lorsque je lance une recherche 'toto' sur Kibana, il m'affiche dans mes grilles, les attributs de 'toto' de GLPI et les attributs de l'autre base de données ou la valeur de la clé ordinateur.nom et égale à 'toto'.

Est-il possible d'ajouter au JSON de GLPI les clés/valeurs de 'toto' de (bdd2) pour tout avoir dans le même index ? ou et t'il possible de dire que si la valeur d'une recherche apparaît dans n'importe quel autre champ alors affiche moi ce champ ainsi que ceux qui y sont lier.

Alors je ne sait pas si ma demande et bien clair x) mais en tout cas je ne sais pas du tout de quel côté chercher ! si quelqu'un à une piste j'en serais ravis :smile: !


(David Pilato) #2

Si ces 2 attributs portent la même sémantique pourquoi ne pas changer leur nom à l'indexation ?

Soit avec logstash puisque tu t'utilises soit avec node ingest. Ca ne te simplifierait pas ton problème ?


(Axel Dujardin) #3

Merci pour ta réponse dadoonet,
tu veux dire dans le fichier .conf de logstash je peux changer le nom de mon attributs ( grâce au filtre ? ) Je sais que je peux les renommé en SQL avec 'AS' mais pas dans le fichier de conf. Mais merci je vais regardé de ce côté déjà ! Et si il possède le même nom à l'indexation, il devrais associer automatiquement les autres attributs de (bdd1) & (bdd2) ensemble ?


(David Pilato) #4

Mutate filter pour renommer : https://www.elastic.co/guide/en/logstash/current/plugins-filters-mutate.html

Et si il possède le même nom à l'indexation, il devrais associer automatiquement les autres attributs de (bdd1) & (bdd2) ensemble ?

Pas certain de ce que tu veux dire. Si tu veux dire "faire un JOIN" entre 2 documents, la réponse est non.
Si tu veux dire chercher aussi bien dans la source bdd1 que bdd2 avec cet attribut, la réponse est oui.