我正在实现Logstash / Kibana / ElasticSearch,以提供用于查看我们的Apache日志的快速仪表板。到目前为止,我已经创建了一个索引,该索引后附加了日志,但是现在我希望对索引进行分区,以便每天有一个索引。
目前,我正在通过日常工作导入日志:
cat logfile.txt | /opt/logstash/bin/logstash --config apacheimport.conf
配置的
output
部分指定索引:output {
elasticsearch {
...
index => "apache"
...
}
}
我将如何配置它以使用指定的日期(需要参数化日期,日志永远不会来自当前日期,并且导入可以针对过去的时间范围)。
另外,我只是在学习ElasticSearch的别名系统。有没有一种解决方案,Logstash总是写到
apache
别名,elasticsearch在内部确定正确的索引?如果有可能,则任何引用或暗示都将是很好的评估方法。
最佳答案
我不认为有任何方法可以在命令行中传递它,但是您可以执行以下操作:
filter {
ruby {
code => 'event["file"] = ENV["SOME_ENV_VAR_NAME"]'
}
}
然后,您可以编写一个包装器脚本来设置/导出
SOME_ENV_VAR_NAME
并调用logstash。
关于elasticsearch - 我可以配置Logstash使用包含参数化日期的索引吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25870435/