我有 Rails 应用程序和不同的环境,如开发、登台和生产,RAILS_ENV 设置该值。我想在logstash中添加该字段以过滤环境,所以我的问题是在logstash配置或logstash转发器中在哪里设置该变量以及如何设置
最佳答案
logstash 和logstash 转发器都可以。
1) Logstash 转发器
来自logstash转发器readme :
Any part of config can use environment variables as $VAR or ${VAR}. They will be evaluated before processing JSON, allowing to pass any structure.
转发器.conf 示例:
"files": [
{
"paths": [
"./example.log"
],
"fields": {
"type": "example",
"env": "$RAILS_ENV"
}
}
]
注意: Logstash 转发器 > 需要 0.4.0
您可以按照 instructions on github 构建最新版本.
2) Logstash
在logstash中,您可以使用environment filter.设置环境变量中的字段
示例:
filter {
environment {
add_field_from_env => { "ENV" => "RAILS_ENV" }
}
}
关于Logstash转发器设置环境变量值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32481276/