弹性搜索has_child with simple_query_string

时间:2016-12-31 16:30:36

标签: elasticsearch

我正在尝试在弹性搜索服务器上运行以下查询。

{
    "query": {
        "has_child":{
            "type": "log",
            "query": {
                "simple_query_string" : {
                    "query" : "ipsum"
                }
            }

        }
    }
}

我们的想法是使用查询字符串查询子元素,因为我们希望为客户提供灵活的搜索。

我尝试运行此查询并获得0结果,但如果我在“日志”上运行相同的查询,我会得到很多结果。

任何人都知道是否允许在has_child上使用查询字符串?

- 修改 -

这里有映射:

{
    "template": "*",
    "mappings": {
        "device": {
            "properties": {
                "app": {
                    "type": "long"
                },
                "created_at": {
                    "type": "date"
                },
                "enabled": {
                    "type": "boolean"
                },
                "id": {
                    "type": "long"
                },
                "name": {
                    "type": "text",
                    "fields": {
                        "keyword": {
                            "type": "keyword",
                            "ignore_above": 256
                        }
                    }
                },
                "type": {
                    "type": "keyword",
                    "ignore_above": 256
                },
                "udid": {
                    "type": "keyword",
                    "ignore_above": 256
                }
            }
        },
        "log": {
            "_parent": {
                "type": "device"
            }, 
            "properties": {
                "app": {
                    "type": "long"
                },
                "session": {
                    "type": "long"
                },
                "version.id": {
                    "type": "keyword",
                    "ignore_above": 256
                },                
                "version.version": {
                    "type": "keyword",
                    "ignore_above": 256
                },                
                "version.build": {
                    "type": "keyword",
                    "ignore_above": 256
                },

                "text": {
                    "type": "text",
                    "fields": {
                        "keyword": {
                            "type": "keyword",
                            "ignore_above": 256
                        }
                    }
                },
                "method": {
                    "type": "text",
                    "fields": {
                        "keyword": {
                            "type": "keyword",
                            "ignore_above": 256
                        }
                    }
                },
                "file": {
                    "type": "text",
                    "fields": {
                        "keyword": {
                            "type": "keyword",
                            "ignore_above": 256
                        }
                    }
                },
                "log_level": {
                    "type": "long"
                },
                "tag": {
                    "type": "keyword",
                    "ignore_above": 256
                },
                "time": {
                    "type": "date",
                    "format": "date_time"
                },
                "absolute_time": {
                    "type": "long"
                }
            }
        }
    }
}

0 个答案:

没有答案