【发布时间】:2014-10-27 01:49:37
【问题描述】:
我有一个 .Net 应用程序试图从弹性搜索文档存储中获取数据,记录的结构如下:
{
"_index": "TestIndex",
"_type": "amqp",
"_id": "123",
"_source": {
"@timestamp": "2014-10-27T01:31:54.780Z",
"type": "amqp",
"LogGenerationTime": "2014-10-26T21:31:54.780",
"ThreadID": "6",
"ProcessID": "8136",
"SessionID": "xyz",
"UserID": "12345678",
},
}
我想在过去 20 分钟内使用 LogGenerationTime 获取所有记录。这是我到目前为止编写的查询,但它似乎没有返回任何数据:
var format = "yyyy-MM-dd'T'HH:mm:ss.fff";
var lowerBound = DateTime.Now.AddMinutes(-20);
ISearchResponse<Amqp> resultSet = _elasticSearchClient.Search<Amqp>(q => q.Query
(p => p.Range
(v => v.OnField
(x => x.LogGenerationTime).GreaterOrEquals(lowerBound, format))));
有人可以帮助编写正确的查询以获取预期结果吗?谢谢!
【问题讨论】:
-
您的查询看起来非常正确。我建议使用 fiddler 查看它发送给 ES 的 json 以尝试确定问题。
标签: c# .net lambda elasticsearch nest