2015-08-19 1 views
0

J'ai créé mon index avec les paramètres de mon analyseur et il affiche les paramètres de mon analyseur lorsque j'appelle les propriétés de l'index. Lorsque j'essaie d'utiliser quelque chose index avec l'analyseur, il déclenche une exception nommée "analyseur introuvable". Voici mes paramètres d'analyseur;L'analyseur Elasticsearch n'a pas pu être trouvé. Exception

"settings":{ 
    "index":{ 
     "settings":{ 
      "analysis":{ 
       "filter":{ 
        "turkce_lowercase":{ 
         "type":"lowercase", 
         "language":"turkish"}, 
        "turkce_stop":{ 
         "type":"stop", 
         "stopwords_path":"/home/power/Documents/stop_words.txt"} 
         }, 
       "analyzer":{ 
        "turkce":{ 
         "filter":["turkce_lowercase","turkce_stop"], 
         "tokenizer":"standard_tokenizer"} 
         }, 
       "tokenizer":{ 
        "standard_tokenizer":{ 
         "type":"standard", 
         "max_token_length":"900"} 
         } 
         } 
        } 
      } 
      } 
+1

Pouvez-vous afficher la requête que vous essayez d'envoyer? – Val

+0

Je n'envoie aucune requête quand je poste /_analyze? Analyszer = turkce dit analyseur non trouvé mais dans les paramètres d'index je vois mon analyseur. –

+0

Pouvez-vous essayer d'ajouter '" type ":" custom "' dans votre analyseur 'turkce' (voir [ici] (https://www.elastic.co/guide/en/elasticsearch/reference/current/analysis-custom -analyzer.html))? – Val

Répondre

0

Dans votre custom analyzer, il vous suffit d'ajouter "type": "custom" pour indiquer que votre analyseur est un analyseur personnalisé et non un standard.

"analyzer": { 
    "turkce": { 
     "type": "custom",   <----- add this 
     "filter": [ 
     "turkce_lowercase", 
     "turkce_stop" 
     ], 
     "tokenizer": "standard_tokenizer" 
    } 
    }