I have Metricbeat 6.3.2 sending to Logstash 6.3.2 sending to ElasticSearch 6.3.0. I have enabled the beta add_host_metadata
processor in Metricbeats.
In Kibana, the host
field is showing like this.
{
"os": {
"family": "debian",
"codename": "xenial",
"version": "16.04.5 LTS (Xenial Xerus)",
"platform": "ubuntu"
},
"architecture": "x86_64",
"name": "myhost1",
"id": "c2d8354c6253fb563beeebeb07b902b5",
"containerized": false
}
where I would expect host.name
, host.architecture
, host.os.platform
etc. fields to have been parsed to individual fields and be searchable.
I thought that it may have something to do with the default field mappings provided by Metricbeat which look like this.
"host": {
"properties": {
"architecture": {
"ignore_above": 1024,
"type": "keyword"
},
"id": {
"ignore_above": 1024,
"type": "keyword"
},
"name": {
"ignore_above": 1024,
"type": "keyword"
},
"os": {
"properties": {
"family": {
"ignore_above": 1024,
"type": "keyword"
},
"platform": {
"ignore_above": 1024,
"type": "keyword"
},
"version": {
"ignore_above": 1024,
"type": "keyword"
}
}
}
}
},
so they do not explicitly define all of the fields. However, if I reindex the documents into a new index with the same index template, I get what I expect.
I am going to edit the index template now and define all of the fields, so tomorrow when the index rolls over it will pick up the new template and I will let you know the outcome. Any thoughts in the meantime?