# Compréhension et utilisation logstash, Kibana

**URL:** <https://discuss.elastic.co/t/comprehension-et-utilisation-logstash-kibana/87676>\
**Category:** Discussions en français\
**Created:** [May 31, 2017, 6:48am UTC](https://discuss.elastic.co/t/comprehension-et-utilisation-logstash-kibana/87676 "2017-05-31T06:48:38Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![pitieu](https://avatars.discourse-cdn.com/v4/letter/p/7ea924/32.png) [@pitieu](https://discuss.elastic.co/u/pitieu)\
**Post date:** [May 31, 2017, 6:48am UTC](https://discuss.elastic.co/t/comprehension-et-utilisation-logstash-kibana/87676/1 "2017-05-31T06:48:38Z")

</div>

Bonjour,  
Je suis novice dans elastic stack et je suis en formation d'administrateur systèmes et réseaux. Et pendant ma formation je dois faire une présentation d'elastic stack. J'ai réussi à installer les 3 logiciels (ELK) mais je suis bloqué quand Kibana me demande de mettre l'INDEX PATTERN. Je ne comprend pas à quoi ça correspond? Comment le configurer dans logstash? Connaissez-vous des tuto qui pourrai m'aider? Surtout que j'apprécie elastic stack et j'aimerai le mettre en prod plus tard dans mon entreprise.  
Merci de votre aide.

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [May 31, 2017, 7:01am UTC](https://discuss.elastic.co/t/comprehension-et-utilisation-logstash-kibana/87676/2 "2017-05-31T07:01:17Z")

</div>

En fait Kibana te demande sur quel(s) index tu veux travailler.

Kibana doit en effet découvrir quels sont les champs qu'il peut utiliser.

Pour cela tu configures un index pattern. Tu donnes soit le nom exact de ton index: `my_index` ou tu peux utiliser des wildcards: `logstash-*` par exemple.

---

<div class="post-metadata">

**Author:** ![pitieu](https://avatars.discourse-cdn.com/v4/letter/p/7ea924/32.png) [@pitieu](https://discuss.elastic.co/u/pitieu)\
**Post date:** [May 31, 2017, 9:02am UTC](https://discuss.elastic.co/t/comprehension-et-utilisation-logstash-kibana/87676/3 "2017-05-31T09:02:40Z")

</div>

Mon problème c'est bien ça j'ai beau mettre un index mais kibana dit qu il ne le trouve pas.

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [May 31, 2017, 9:13am UTC](https://discuss.elastic.co/t/comprehension-et-utilisation-logstash-kibana/87676/4 "2017-05-31T09:13:30Z")

</div>

Que donne:

```auto
curl localhost:9200/_cat/indices?v

```

---

<div class="post-metadata">

**Author:** ![pitieu](https://avatars.discourse-cdn.com/v4/letter/p/7ea924/32.png) [@pitieu](https://discuss.elastic.co/u/pitieu)\
**Post date:** [May 31, 2017, 11:19am UTC](https://discuss.elastic.co/t/comprehension-et-utilisation-logstash-kibana/87676/5 "2017-05-31T11:19:15Z")

</div>

Voilà ce que me retourne la commande  
yellow open .kibana YfsaDDDrSlaroRRn4ed10g 1 1 1 0 4.2kb 4.2kb

---

<div class="post-metadata">

**Author:** ![Heinmci](https://avatars.discourse-cdn.com/v4/letter/h/6a8cbe/32.png) [@Heinmci](https://discuss.elastic.co/u/Heinmci)\
**Post date:** [May 31, 2017, 11:52am UTC](https://discuss.elastic.co/t/comprehension-et-utilisation-logstash-kibana/87676/6 "2017-05-31T11:52:28Z")

</div>

Salut,  
Si la commande retourne uniquement cette ligne cela veut dire qu'il n'y a auncun index présent (sauf celui que Kibana a créé) sur le seveur elastic search  
Comment as tu créé ton index?  
Dans Kibana, dans l'onglet "dev tools", si tu tapes l'exemple de la doc ([https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-create-index.html](https://www.elastic.co/guide/en/elasticsearch/reference/current/indices-create-index.html)) :

```
PUT test 
{
"settings" : {
    "number_of_shards" : 1
},
"mappings" : {
    "type1" : {
        "properties" : {
            "field1" : { "type" : "text" }
        }
    }
}
}

```

Normalement si tu tapes test dans l'index pattern tu le retrouveras!  
(tu devras décocher "Index contains time-based events ")

Puis pour supprimer l'index il te suffit de faire

```
DELETE test
```

---

<div class="post-metadata">

**Author:** ![pitieu](https://avatars.discourse-cdn.com/v4/letter/p/7ea924/32.png) [@pitieu](https://discuss.elastic.co/u/pitieu)\
**Post date:** [June 1, 2017, 6:35am UTC](https://discuss.elastic.co/t/comprehension-et-utilisation-logstash-kibana/87676/7 "2017-06-01T06:35:56Z")

</div>

Merci de ton aide donc ça fonctionne voici ce que j'obtiens:  
health status index uuid pri rep docs.count docs.deleted store.size pri.store.size  
yellow open .kibana YfsaDDDrSlaroRRn4ed10g 1 1 2 0 8.7kb 8.7kb  
yellow open test 39UvObx8TF6qSllk9UsFJg 1 1 0 0 159b 159b

Donc l'index test que je viens de créer permet de rediriger mes log vers cet index?

---

<div class="post-metadata">

**Author:** ![Heinmci](https://avatars.discourse-cdn.com/v4/letter/h/6a8cbe/32.png) [@Heinmci](https://discuss.elastic.co/u/Heinmci)\
**Post date:** [June 1, 2017, 6:44am UTC](https://discuss.elastic.co/t/comprehension-et-utilisation-logstash-kibana/87676/8 "2017-06-01T06:44:31Z")

</div>

Je ne suis pas sur d'avoir bien compris ta question.  
Si tu demandes comment rediriger tes logs dans cet index (à partir de logstash), dans ce cas là tu devrais avoir quelque chose comme ça dans ton fichier de conf logstash :

```auto
output {
    elasticsearch {
        hosts => ["localhost:9200"]
        index => "test"
    }
}

```

---

<div class="post-metadata">

**Author:** ![pitieu](https://avatars.discourse-cdn.com/v4/letter/p/7ea924/32.png) [@pitieu](https://discuss.elastic.co/u/pitieu)\
**Post date:** [June 1, 2017, 6:46am UTC](https://discuss.elastic.co/t/comprehension-et-utilisation-logstash-kibana/87676/9 "2017-06-01T06:46:20Z")

</div>

Effectivement j'ai bien ça mais quand je met mon index dans kibana, il ne me trouve pas.

---

<div class="post-metadata">

**Author:** ![Heinmci](https://avatars.discourse-cdn.com/v4/letter/h/6a8cbe/32.png) [@Heinmci](https://discuss.elastic.co/u/Heinmci)\
**Post date:** [June 1, 2017, 6:47am UTC](https://discuss.elastic.co/t/comprehension-et-utilisation-logstash-kibana/87676/10 "2017-06-01T06:47:27Z")

</div>

Qu'est ce que tu entends par "mettre ton index dans kibana" ?  
Je ne suis pas certain de ce que tu cherches à faire pour être honnête donc c'est dur de savoir comment t'aider!

---

<div class="post-metadata">

**Author:** ![pitieu](https://avatars.discourse-cdn.com/v4/letter/p/7ea924/32.png) [@pitieu](https://discuss.elastic.co/u/pitieu)\
**Post date:** [June 1, 2017, 6:51am UTC](https://discuss.elastic.co/t/comprehension-et-utilisation-logstash-kibana/87676/11 "2017-06-01T06:51:39Z")

</div>

Justement je cherche à comprendre le fonctionnement (comme préciser dans le titre de mon post) entre kibana et logstash car j'ai du mal à tout saisir.

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [June 1, 2017, 6:56am UTC](https://discuss.elastic.co/t/comprehension-et-utilisation-logstash-kibana/87676/12 "2017-06-01T06:56:11Z")

</div>

La chose de base à comprendre:

- Logstash ou \*beat: outils de collecte de données qui envoient vers elasticsearch les données collectées
- Elasticsearch: outil qui indexe les données que tu lui envoies soit "à la main" soit via un outil de collecte
- Kibana: outil de visualisation qui se connecte à Elasticsearch et permet de visualiser les données qui y ont été indexées.

Donc @Heinmci te propose d'envoyer des données vers elasticsearch pour y être indexées dans un index test:

> [@Compréhension et utilisation logstash, Kibana](https://discuss.elastic.co/t/comprehension-et-utilisation-logstash-kibana/87676/8):
>
> Je ne suis pas sur d'avoir bien compris ta question. Si tu demandes comment rediriger tes logs dans cet index (à partir de logstash), dans ce cas là tu devrais avoir quelque chose comme ça dans ton fichier de conf logstash : output { elasticsearch { hosts =\> ["localhost:9200"] index =\> "test" } }

Je t'ai expliqué comment connecter Kibana à un index existant:

> [@Compréhension et utilisation logstash, Kibana](https://discuss.elastic.co/t/comprehension-et-utilisation-logstash-kibana/87676/2):
>
> En fait Kibana te demande sur quel(s) index tu veux travailler. Kibana doit en effet découvrir quels sont les champs qu'il peut utiliser. Pour cela tu configures un index pattern. Tu donnes soit le nom exact de ton index: my\_index ou tu peux utiliser des wildcards: logstash-\* par exemple.

Est-ce plus clair ?

---

<div class="post-metadata">

**Author:** ![pitieu](https://avatars.discourse-cdn.com/v4/letter/p/7ea924/32.png) [@pitieu](https://discuss.elastic.co/u/pitieu)\
**Post date:** [June 1, 2017, 7:05am UTC](https://discuss.elastic.co/t/comprehension-et-utilisation-logstash-kibana/87676/13 "2017-06-01T07:05:35Z")

</div>

Oui j'avais compris tout ça , ton explication m'a éclaircie sur certains point. Merci  
Donc si je met logstash-\* il utilise tous les index dans elasticsearch sans lui préciser les index exact?  
Sinon pour logstash le fichier de conf doit être structuré avec une entrée (input) et une sortie vers elasticsearch (output)?

---

<div class="post-metadata">

**Author:** ![Heinmci](https://avatars.discourse-cdn.com/v4/letter/h/6a8cbe/32.png) [@Heinmci](https://discuss.elastic.co/u/Heinmci)\
**Post date:** [June 1, 2017, 7:18am UTC](https://discuss.elastic.co/t/comprehension-et-utilisation-logstash-kibana/87676/14 "2017-06-01T07:18:16Z")

</div>

Si dans Kibana tu mets `logstash-*` dans l'index pattern, ça va prendre en compte tous tes indexes qui matchent avec cette regex (comme `logstash-2017.05.20` ou `logstash-2017.05.21`)  
Et oui, pour le fichier de conf tu dois avoir un input, par exemple :

```auto
input{
    file{
        path => "C:/logtest/*.log"
        start_position => beginning
    }
}

```

Cela va prendre tous les fichiers .log de mon dossier logtest  
Et oui, un output comme vu au dessus. La plupart du temps tu auras aussi un filter entre les deux pour personnaliser les données que tu veux envoyer à elastic search

Il est aussi important de noter que si les fichiers (.log dans ce cas) sont déjà présents avant que tu lances logstash, il ne va pas les parser, il va juste parser tout ce qui est "nouveau", donc tu peux juste rajouter un ligne à un fichier existant, ou alors tu rajoutes les fichiers dans le dossier une fois que logstash est déjà lancé!

---

<div class="post-metadata">

**Author:** ![pitieu](https://avatars.discourse-cdn.com/v4/letter/p/7ea924/32.png) [@pitieu](https://discuss.elastic.co/u/pitieu)\
**Post date:** [June 1, 2017, 9:10am UTC](https://discuss.elastic.co/t/comprehension-et-utilisation-logstash-kibana/87676/15 "2017-06-01T09:10:34Z")

</div>

Ok merci je vais essayer tout ça et je vous fais un petit retour.  
Ton start\_position c'est pour quoi faire?

---

<div class="post-metadata">

**Author:** ![Heinmci](https://avatars.discourse-cdn.com/v4/letter/h/6a8cbe/32.png) [@Heinmci](https://discuss.elastic.co/u/Heinmci)\
**Post date:** [June 1, 2017, 9:36am UTC](https://discuss.elastic.co/t/comprehension-et-utilisation-logstash-kibana/87676/16 "2017-06-01T09:36:11Z")

</div>

D'après la doc ;

```auto
start_position:
Value can be any of: beginning, end
Default value is "end"
Choose where Logstash starts initially reading files: at the beginning or at the end. The default behavior treats files like live streams and thus starts at the end. If you have old data you want to import, set this to beginning.

This option only modifies "first contact" situations where a file is new and not seen before, i.e. files that don’t have a current position recorded in a sincedb file read by Logstash. If a file has already been seen before, this option has no effect and the position recorded in the sincedb file will be used.

```

Je t'avoue que ça n'est pas très clair pour moi mais je crois que ça sert juste à indiquer la position par défaut de lecture de fichier par logstash

---

<div class="post-metadata">

**Author:** ![dadoonet](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/dadoonet/32/137187_2.png) [@dadoonet](https://discuss.elastic.co/u/dadoonet)\
**Post date:** [June 1, 2017, 12:58pm UTC](https://discuss.elastic.co/t/comprehension-et-utilisation-logstash-kibana/87676/17 "2017-06-01T12:58:05Z")

</div>

Oui. Ça sert à retraiter le fichier depuis le début à chaque redémarrage.

---

<div class="post-metadata">

**Author:** ![pitieu](https://avatars.discourse-cdn.com/v4/letter/p/7ea924/32.png) [@pitieu](https://discuss.elastic.co/u/pitieu)\
**Post date:** [June 2, 2017, 6:52am UTC](https://discuss.elastic.co/t/comprehension-et-utilisation-logstash-kibana/87676/18 "2017-06-02T06:52:39Z")

</div>

Petit retour comme prévu donc j'arrive à configurer un index par contre j'ai l'impression que logstash ne parvient pas à envoyer les logs vers elasticsearch voici ce que j'obtiens.  
yellow open centos jx9maXKpQ---I0N77JxP0A 5 1 0 0 795b 795b

Mon fichier de conf dans logstash:  
input{  
file{  
path =\> "/var/log/\*.log"  
}  
}

output {  
elasticsearch {  
hosts =\> ["localhost:9200"]  
index =\> "centos"  
}  
}

---

<div class="post-metadata">

**Author:** ![Heinmci](https://avatars.discourse-cdn.com/v4/letter/h/6a8cbe/32.png) [@Heinmci](https://discuss.elastic.co/u/Heinmci)\
**Post date:** [June 2, 2017, 7:03am UTC](https://discuss.elastic.co/t/comprehension-et-utilisation-logstash-kibana/87676/19 "2017-06-02T07:03:35Z")

</div>

Est ce que logstash te met un message d'erreur ou pas?  
Est ce que tu as bien modifié un fichier dans /var/log après que logstash soit lancé?  
Ta config me parait bonne en tout cas

---

<div class="post-metadata">

**Author:** ![pitieu](https://avatars.discourse-cdn.com/v4/letter/p/7ea924/32.png) [@pitieu](https://discuss.elastic.co/u/pitieu)\
**Post date:** [June 2, 2017, 7:07am UTC](https://discuss.elastic.co/t/comprehension-et-utilisation-logstash-kibana/87676/20 "2017-06-02T07:07:23Z")

</div>

J'ai ça:  
juin 02 09:04:50 localhost.localdomain systemd[1]: logstash.service holdoff time over, scheduling restart.  
juin 02 09:04:50 localhost.localdomain systemd[1]: Started logstash.  
juin 02 09:04:50 localhost.localdomain systemd[1]: Starting logstash...  
juin 02 09:05:00 localhost.localdomain logstash[8364]: Sending Logstash's logs to /var/log/logstash which is now configured via log4j2.properties

Par contre je n'ai rien modifié dans /var/log

[Next page](https://discuss.elastic.co/t/comprehension-et-utilisation-logstash-kibana/87676.md?page=2)
