Logstash 配置(一)input配置
标准输入(Stdin)
我们已经见过好几个示例使用 stdin 了。这也应该是 logstash 里最简单和基础的插件了。
[root@bigdata111 confs_test]# vi input_stdin.conf
input {
stdin {
add_field => {"key" => "value"}
codec => "plain"
tags => ["add"]
type => "std"
}
}
output{stdout{codec=>rubydebug}}
注:add_field要添加字段的名称-这里叫做key
tags:又加了的字段
type这里换成了’std’(这是可以自己随便设的)
----------------------------------------------------------------
我建议大家把整段配置都写入一个文本文件,
然后运行命令:../bin/logstash -f ./input_stdin.conf。
[root@bigdata111 confs_test]# ../bin/logstash -f ./input_stdin.conf
因为是标准的输入,所以启动LS之后就直接在控制台输入即可,输出也是在当前控制台。
输入 "hello world" 并回车后,你会在终端看到如下输出:
解释
type 和 tags 是 logstash 事件中两个特殊的字段。
通常来说我们会在输入区段中通过 type 来标记事件类型。
而 tags 则是在数据处理过程中,由具体的插件来添加或者删除的。
最常见的用法是像下面这样:
input {
stdin {
type => "web"
}
}
filter {
if [type] == "web" {
grok {
match => ["message", %{COMBINEDAPACHELOG}]
}
}
}
output {
if "_grokparsefailure" in [tags] {
nagios_nsca {
nagios_status => "1"
}
} else {
elasticsearch {
}
}
}