我是新来Kibana的。我在“发现”中做一些搜索,并在“可视化”中绘制它们。对于一个任务,我需要过滤掉一个浮点字段。但是,当我在discover中使用浮点进行搜索时,kibana不会返回任何结果。
例如:
my_field: <= 6.66
那就没有结果了。但是,如果我用整数值搜索
my_field: <= 6
只有这样我才能得到一个搜索结果。但是,myu字段在返回的结果中有浮点值。
所以我的问题是如何在kibana中使用浮点值进行搜索?
编辑:如果我键入 GET master.bckup_v8/_mapping
然后我得到:
"my_field" : {
"type" : "float"
},
而kibana搜索栏看起来像下图:kibana搜索栏截图
选项栏选项:选项
附加信息:使用查询搜索: my_field:[* TO 6.66]
抛出错误:
Discover: Can only use prefix queries on keyword and text fields - not on [peakSpeed] which is of type [float]
查询 my_field:<=6
从检查:
GET /_search
{
"version": true,
"size": 10000,
"sort": [
{
"timestamp": {
"order": "desc",
"unmapped_type": "boolean"
}
}
],
"_source": {
"excludes": []
},
"aggs": {
"2": {
"date_histogram": {
"field": "timestamp",
"interval": "3h",
"time_zone": "Europe/Berlin",
"min_doc_count": 1
}
}
},
"stored_fields": [
"*"
],
"script_fields": {},
"docvalue_fields": [
{
"field": "ingestionTime",
"format": "date_time"
},
{
"field": "timestamp",
"format": "date_time"
}
],
"query": {
"bool": {
"must": [
{
"query_string": {
"query": "my_field: <= 6",
"analyze_wildcard": true,
"default_field": "*"
}
},
{
"range": {
"timestamp": {
"gte": 1606777200000,
"lte": 1607435332914,
"format": "epoch_millis"
}
}
}
],
"filter": [],
"should": [],
"must_not": []
}
},
"highlight": {
"pre_tags": [
"@kibana-highlighted-field@"
],
"post_tags": [
"@/kibana-highlighted-field@"
],
"fields": {
"*": {}
},
"fragment_size": 2147483647
}
}
2条答案
按热度按时间hk8txs481#
首先,您的查询无效。您应该删除:
如果不起作用,则字段可能Map为整数(long?),而不是浮点数。
您可能应该阅读elasticsearch和kibana的基本文档,以了解基本概念和不同的功能。https://www.youtube.com/watch?v=wajulb48xcuhttps用法:/medium.com//@sami.jan/fundamentals-of-elasticsearch-cbb273160f60
6rvt4ljy2#
事实上,你所遭遇的问题在这里有记录。可以通过进入kibana中的“管理>高级设置”,然后将以下内容添加到
query:queryString:options
配置