1

我正在尝试使用 collectd 编解码器设置 logstash。这是我的配置:

收集文件

Hostname    "localhost"
LoadPlugin interface
LoadPlugin load
LoadPlugin memory
LoadPlugin network
<Plugin interface>
    Interface "eth0"
    IgnoreSelected false
</Plugin>
<Plugin network>
    <Server "127.0.0.1" >
    </Server>
</Plugin>

logstash.conf

input {
        udp {
                port => 25826
                buffer_size => 1452
                codec => collectd { }
                type => "collectd"
        }
}
output {
        stdout {}
}

但我在logstash输出中得到的只有很多:

2015-03-05T22:06:35.802+0000 本地主机%{消息}

我猜 collectd 一定是在向我发送事件,但它们是空的。

4

2 回答 2

2

好的,经过比我愿意承认的时间更长的时间,我想通了。您必须为输出指定编解码器,例如:

output {
    stdout {  codec => json }
}

现在一切正常

于 2015-03-06T16:43:09.503 回答
1

您也可以指定 { codec => ruby​​debug } 或 { codec => json_lines }。只是因为某种奇怪的原因,以普通格式编写它会打印 %{message} 。

于 2015-10-21T23:43:05.607 回答