我一直在研究一个辅助项目,以便学习弹性搜索。我正在使用Marvel插件来POST我的elasticsearch项目的索引/映射。除了一个例外,一切正常。出于某种原因,在我的Kibana仪表板上,图表获取值“country”并将其分成多个值(例如,“United States”显示为两个单独的条目“United”和“State”),即使我指示“索引“:”not_analyzed“为该字段。
这是我为弹性搜索提供的命令/索引/映射:
PUT /traffic_mon
{"traffic":
{
"_timestamp" : {
"enabled" : true,
"path" : "timestamp"
},
"properties": {
"timestamp": {"type": "date","format":"basic_date_time"},
"source_ip": {"type": "string"},
"dest_ip": {"type": "string"},
"country": {"type": "string", "index": "not_analyzed"},
"source_port": {"type": "integer"},
"destination_port": {"type": "integer"},
"traffic_type": {"type": "string"}
}
}
}
}
这是语法问题吗?
我已经广泛研究过这个问题,但仍然无法想出造成这种情况的原因。就像我说的,我对弹性搜索相当新,欢迎任何帮助/建议。
答案 0 :(得分:0)
我相信您需要点击_mapping API才能使用 -
PUT /traffic_mon/traffic/_mapping
{
"traffic": {
"_timestamp": {
"enabled": true,
"path": "timestamp"
},
"properties": {
"timestamp": {
"type": "date",
"format": "basic_date_time"
},
"source_ip": {
"type": "string"
},
"dest_ip": {
"type": "string"
},
"country": {
"type": "string",
"index": "not_analyzed"
},
"source_port": {
"type": "integer"
},
"destination_port": {
"type": "integer"
},
"traffic_type": {
"type": "string"
}
}
}
}