After adding hyphenation decompounder to my custom template, logstash fails to install it: "Got response code '500' contacting Elasticsearch at URL...".
I have already had different token filters like stopwords and stemmers and the template used to work just fine. Also dictionary decompounder with a word list as an array works. Problems start when I supply a path to a word list and for hyphenation decompounder when I supply paths for both word list and hyphenation patterns. I have tried both, absolute and relative paths. As I work with kubernetes, I have made sure that the files exist on the pod with configmap. The elasticsearch version is 7.1.1. and logstash version 6.2.3. My assumption is that either the paths can't be resolved or the files are not compatible with my elasticsearch or logstash version. However, I have implemented the decompounder according to the manual from the elasticsearch documentation: Compound Word Token Filters | Elasticsearch Guide [7.1] | Elastic
Here are the settings for my index:
"index.refresh_interval":"5s",
"analysis":{
"filter":{
"english_stop":{
"type":"stop",
"stopwords":"english"
},
"light_english_stemmer":{
"type":"stemmer",
"language":"light_english"
},
"english_possessive_stemmer":{
"type":"stemmer",
"language":"possessive_english"
},
"german_stop":{
"type":"stop",
"stopwords":"german"
},
"german_stemmer":{
"type":"stemmer",
"language":"light_german"
},
"german_hyphenation_decompounder": {
"type" : "hyphenation_decompounder",
"word_list_path": "/user/share/logstash/config/german_dictionary.txt",
"hyphenation_patterns_path": "/user/share/logstash/config/hyphentation_grammar_ngerman.xml",
"max_subword_size": 22
}
},
"analyzer":{
"custom_english":{
"tokenizer":"standard",
"filter":[
"lowercase",
"english_stop",
"english_possessive_stemmer",
"light_english_stemmer"
]
},
"custom_german":{
"type": "custom",
"tokenizer":"standard",
"filter":[
"lowercase",
"german_stop",
"german_normalization",
"german_stemmer",
"german_hyphenation_decompounder"
]
}
}
}
},
And this is how I install my custom template:
template => "/user/share/logstash/config/elasticsearch-template.custom.json"
template_overwrite => true
template_name => "mytemplate"
I would like to know what the error response '500' means and why I receive this.