我正在使用logstash在ES中使用许多计算机上的实时服务中的许多指标来填充ES。 Logstash每天创建一个新索引,我发现在不指定索引的情况下查询ES,运行缓慢。 (我目前维持5天的指标)。如果我指定特定的索引,例如今天
.es(index=logstash-2018.01.15, q= examplequery
它运行得非常快 有没有办法可以使用日期字段指定今日索引?
例如
.es(index=logstash-'get date', q= examplequery
答案 0 :(得分:2)
您可以使用该查询获取今天日期的索引:
.es(index='<logstash-{now/d}>')
一个有趣的读物,其中包含弹性搜索中可用的所有选项,以在索引名称中包含日期数学:
https://www.elastic.co/guide/en/elasticsearch/reference/current/date-math-index-names.html
答案 1 :(得分:0)
通过查看语法,我猜你正在使用Timelion或使用查询字符串的东西。这里有一个很好的教程,包括指定索引模式:
https://www.elastic.co/blog/timelion-tutorial-from-zero-to-hero
在你的情况下它将是
.es(index=logstash-*, q= examplequery
或
.es(index=logstash-2018.01.*, q= examplequery
如果您今年1月需要,且索引模式为'logstash -YYYY.MM.dd'