Well that doesn't look like a very helpful response...
Anyway here's some more info on what I'm currently trying to do: as I understand it Logstash seems to be able to do the template management with these options.
So I created a simple template JSON file like:
{
"template_name": {
"template": "filebeat-*",
"mappings": {
"log_type": {
"properties": {
"field1": {
"type": "string",
"index": "not_analyzed"
},
...
}
}
}
}
}
and setup my Elasticsearch output plugin on Logstash with these options:
manage_template => false
template_name => "template_name"
template => "/etc/logstash/template.json"
template_overwrite => true
and finally restarted Logstash AND deleted the daily indexes on Elasticsearch.
Doesn't look like it's working though. It seems not even the template is present on Elasticsearch as curl -XGET http://localhost:9200/_template
only retuns {}
.
EDIT: I manually uploaded the template JSON file to Elasticsearch (removing the first level of wrapping the settings with the template name) and it all works like a charm. Fields are typed correctly etc. So the only thing I seem to be missing is how to make Logstash do that work.