2017-04-01 14 views
0

私はelasticsearchをpythonで最後の5分間の最後のイベントを検索しようとしています。しかし、私はヒットなしでこの答えを得ています。これはESの答えです:Elasticsearchクエリでヒットしない

{"hits": {"hits": [], "total": 0, "max_score": null}, "_shards": {"successful": 45, "failed": 0, "total": 45}, "took": 13, "timed_out": false} 

そして私は木場でそれらを見るのでヒットがあることを知っています。

は、これは私のコードです:

from datetime import datetime 
from elasticsearch import Elasticsearch, RequestsHttpConnection 
import certifi 
import datetime 

def get_events(): 
    es = Elasticsearch([ELASTIC_SEARCH_ENDPOINT],use_ssl=True) 
    from_date = datetime.datetime.now() - datetime.timedelta(minutes=15) 
    to_date = datetime.datetime.now() 
    query = {"query": 
       { 
        "range": 
        { 
         "timestamp": 
         { 
          "gte": from_date, 
          "lte": to_date 
         } 
        } 
       }  
      } 
    res = es.search(index="logstash-*", body=query) 
    print '########### recent events ############' 
    print res 
    return res 

どのように私はこの問題を解決することができますか?

答えて

1

Elasticsearchに保存されているタイムスタンプは、from_dateおよびto_date(クエリで使用されている)と同じタイムゾーン(UTCまたはマシン時刻)にあります。 これは、結果が表示されない理由です。

+0

ElasticSearchサービスを使用しているため、マシンにアクセスできません –

+1

UTCの時間範囲を指定できます –

+0

どのようにですか? AWSコンソールでオプションが見つからない –

関連する問題