代码之家  ›  专栏  ›  技术社区  ›  Mia

如何将卷曲转换为elasticsearch py查询格式?

  •  0
  • Mia  · 技术社区  · 9 年前

    如何编写elasticsearch py查询来查询以下相同的数据?

    --data-binary '{"query": {"filtered": {"query": {"bool": {"should":[ {"query_string": {"query":"request.action.raw:\"aaa\" AND (loglevel:INFO)"}}, {"query_string": {"query":"request.action.raw:\"bbb\" AND (loglevel:INFO)"}}, {"query_string": {"query":"request.action.raw:\"ccc\" AND (loglevel:INFO)"}}, } }, "filter": {"bool": {"must":[ {"range": {"@timestamp": {"from":111,"to":222}}}, {"fquery": {"query": {"query_string": {"query":"file:(\"ddd")"}}, "_cache":true}}]}}}}}
    
    1 回复  |  直到 9 年前
        1
  •  0
  •   Mohamed Ali JAMAOUI    9 年前

    from elasticsearch import Elasticsearch
    ELASTICSEARCH_ENDPOINT = "url_to_your_elasticsearch_node"
    es = Elasticsearch([ELASTICSEARCH_ENDPOINT])
    
    
    request= '{"query": {"filtered": {"query": {"bool": {"should":[ {"query_string": {"query":"request.action.raw:\"aaa\" AND (loglevel:INFO)"}}, {"query_string": {"query":"request.action.raw:\"bbb\" AND (loglevel:INFO)"}}, {"query_string": {"query":"request.action.raw:\"ccc\" AND (loglevel:INFO)"}}, } }, "filter": {"bool": {"must":[ {"range": {"@timestamp": {"from":111,"to":222}}}, {"fquery": {"query": {"query_string": {"query":"file:(\"ddd")"}}, "_cache":true}}]}}}}}' 
    results = es.search(index="index_name", doc_type="doctype_name", body=request)
    

    请注意,除了请求之外,还需要在脚本中配置以下参数:

    • ELASTICSEARCH_端点 :elasticsearch节点或群集的URL
    • 索引名称 :索引名称。
    • :doctype名称。