我正试图获得字段的名称为“IP”被Map为“IP”类型与一个。关键字字段的类型“关键字”。以下Map未创建.keyword字段。我如何使弹性Map这个领域?
"IP": { "type": "ip", "fields": { "keyword": { "type": "keyword", "ignore_above": 256 } } }
gmxoilav1#
我给你举个例子来测试一下。
请注意,添加keyword字段后,应运行POST index_name/_update_by_query更新现有数据。
keyword
PUT test_ip { "mappings": { "properties": { "IP": { "type": "ip" }, "other_fields": { "type": "keyword" } } } }
PUT test_ip/_mapping { "properties": { "IP": { "type": "ip", "fields": { "keyword": { "type": "keyword", "ignore_above": 256 } } } } }
PUT test_ip { "mappings": { "properties": { "IP": { "type": "ip", "fields": { "keyword": { "type": "keyword", "ignore_above": 256 } } } } } }
> { "error": { > "root_cause": [ > { > "type": "resource_already_exists_exception", > "reason": "index [test_ip/xBXNCAjnRjODoAAY3TGFBA] already exists", > "index_uuid": "xBXNCAjnRjODoAAY3TGFBA", > "index": "test_ip" > } > ], > "type": "resource_already_exists_exception", > "reason": "index [test_ip/xBXNCAjnRjODoAAY3TGFBA] already exists", > "index_uuid": "xBXNCAjnRjODoAAY3TGFBA", > "index": "test_ip" }, >. "status": 400 }
ndasle7k2#
TLDR:需要在创建Map后刷新索引。使用动态Map规则动态创建Map。当第一个对象通过时,将创建新的Map。此信息不会立即在Kibana中显示。创建Map后,您可能必须刷新索引,以便在构建可视化时填充新字段。
2条答案
按热度按时间gmxoilav1#
我给你举个例子来测试一下。
请注意,添加
keyword
字段后,应运行POST index_name/_update_by_query更新现有数据。创建索引
(工作)使用_mapping API更新Map
(error)如果你像下面这样测试,你会得到一个错误。
错误:
ndasle7k2#
TLDR:需要在创建Map后刷新索引。
使用动态Map规则动态创建Map。当第一个对象通过时,将创建新的Map。此信息不会立即在Kibana中显示。创建Map后,您可能必须刷新索引,以便在构建可视化时填充新字段。