我想使用 Elasticsearch 输入插件在 Logstash 中查询当前日期前一天的 Elasticsearch 索引。
我尝试了以下日志配置,
input {
elasticsearch
{
hosts => ["localhost:9200"]
index => "logstash-%{+YYYY.MM.dd-6}"
query => '{ "query": { "query_string": { "query": "*" } } }'
size => 500
scroll => "5m"
docinfo => true
}
}
output { stdout { codec => rubydebug }
}
有人可以帮助我怎么做吗?
可以在弹性搜索查询中使用日期数学索引名称,
日期数学索引名称解析使您能够搜索范围 时间序列索引,而不是搜索所有时间序列 索引和筛选结果或维护别名。限制 搜索的索引数可减少集群上的负载 并提高执行性能。例如,如果您正在搜索 对于每日日志中的错误,您可以使用日期数学名称模板 将搜索限制为过去两天。
几乎所有具有索引参数的 API 都支持日期数学 索引参数值。
例如,搜索昨天的索引,假设索引使用默认的 Logstash 索引名称格式,logstash-YYYY.MM.dd
GET /<logstash-{now/d-1d}>/_search