【问题标题】:Query timestamp range using elasticsearch-dsl-py使用 elasticsearch-dsl-py 查询时间戳范围
【发布时间】:2019-10-18 14:48:31
【问题描述】:

我有一个弹性搜索范围查询,我想将其翻译成elasticsearch-dsl:

Elasticsearch Python API

{"range": 
    {"@timestamp": 
        {"gte": 1570258800000, 
         "lte": 1571036400000, 
         "format": "epoch_millis"
        }
     }
 }

Elasticsearch-DSL-Py 查询?

from elasticsearch import Elasticsearch
from elasticsearch_dsl import Search

client = Elasticsearch(<connection_details>)

s = Search(using=client, index="my-index") \
    .query("???")

【问题讨论】:

    标签: python elasticsearch elasticsearch-dsl elasticsearch-dsl-py


    【解决方案1】:

    试试这个:

    from elasticsearch import Elasticsearch
    from elasticsearch_dsl import Search
    
    client = Elasticsearch(<connection_details>)
    
    s = Search(using=client, index="my-index") \
        .filter('range' ,  **{'@timestamp': {'gte': 1570258800000 , 'lt': 1571036400000, 'format' : 'epoch_millis'}})
    

    【讨论】:

      【解决方案2】:
      s = s.query('range', **{'@timestamp': {'gte': ...}})
      

      希望对你有帮助

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-09-01
        • 1970-01-01
        • 2021-05-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-09-07
        • 2019-01-24
        相关资源
        最近更新 更多