【发布时间】:2015-09-09 13:44:36
【问题描述】:
我有 Rails 应用程序和不同的环境,如开发、登台和生产,RAILS_ENV 设置了该值。我想在logstash中添加该字段以过滤环境,所以我的问题是在logstash配置或logstash转发器中在哪里设置该变量以及如何设置
【问题讨论】:
标签: logstash logstash-grok logstash-configuration logstash-forwarder
我有 Rails 应用程序和不同的环境,如开发、登台和生产,RAILS_ENV 设置了该值。我想在logstash中添加该字段以过滤环境,所以我的问题是在logstash配置或logstash转发器中在哪里设置该变量以及如何设置
【问题讨论】:
标签: logstash logstash-grok logstash-configuration logstash-forwarder
logstash 和 logstash 转发器都可以。
来自logstash转发器readme:
配置的任何部分都可以使用环境变量作为 $VAR 或 ${VAR}。 它们将在处理 JSON 之前进行评估,允许传递任何 结构。
forwarder.conf 示例:
"files": [
{
"paths": [
"./example.log"
],
"fields": {
"type": "example",
"env": "$RAILS_ENV"
}
}
]
注意:需要 Logstash 转发器 > 0.4.0
您可以在instructions on github之后构建最新版本。
在 logstash 中,您可以使用 environment filter. 从环境变量中设置字段
示例:
filter {
environment {
add_field_from_env => { "ENV" => "RAILS_ENV" }
}
}
【讨论】:
"env": "${RAILS_ENV}" 吗?