From 17f82f9dddc0df757bd59680ef6eca2497460354 Mon Sep 17 00:00:00 2001 From: jlecour Date: Fri, 23 Dec 2016 11:59:38 +0100 Subject: [PATCH] Exemple de purge d'index manuelle --- HowtoElasticsearch.md | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/HowtoElasticsearch.md b/HowtoElasticsearch.md index bced8257..6c768a9e 100644 --- a/HowtoElasticsearch.md +++ b/HowtoElasticsearch.md @@ -554,3 +554,22 @@ $ JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/jre/ /usr/share/elasticsearch/bin/ ### Erreur "missing authentication token for REST request" Si vous obtenez une erreur HTTP *401 Unauthorized* avec le détail "missing authentication token for REST request...", c'est probablement que le plugin [shield](https://www.elastic.co/guide/en/shield/current/installing-shield.html) est activé. + +### Comment supprimer proprement des vieux index + +Lorsqu'on utilise (par exemple) Elasticsearch pour des logs, il peut être utile de supprimer les données anciennes. + +La solution la plus propre est d'utiliser [Curator](https://www.elastic.co/guide/en/elasticsearch/client/curator/current/index.html), mais lorsque ça n'est pas possible (à cause de compatibilité avec le système) on peut recourir à une approche manuelle moins souple mais efficace : + +Voici un exemple qui pour les index nommés `logstash-*`, ne va conserver que les 20 derniers. + +~~~{.bash} + #!/bin/bash + +indices=$(curl http://127.0.0.1:9200/_cat/indices/logstash-*?h=i | sort | head -n -20) + +for index in ${indices}; do + # echo Delete ${index} + curl -XDELETE http://127.0.0.1:9200/${index} +done +~~~ \ No newline at end of file