这是我的logstash.conf文件。我正在尝试使用logstash-output-zabbix插件来报警。但是这个错误..。
Field referenced by log_getter is missing {:level=>:warn}
我在zabbix服务器中有一个名为ELK
的主机,其中有一个log_getter
项,hello
作为密钥(Zabbix )。
My config file...
input {
lumberjack {
port => 5000
type => "logs"
ssl_certificate => "/etc/pki/tls/certs/logstash-forwarder.crt"
ssl_key => "/etc/pki/tls/private/logstash-forwarder.key"
}
}
filter {
grok {
match => [ "message", "%{SYSLOGBASE} %{DATA:data}" ]
add_tag => [ "zabbix-sender" ]
add_field => [
"zabbix_host", "%{source_host}",
"zabbix_item", "item.key",
"send_field", "data"
]
}
}
output{
elasticsearch{
host => localhost
}
}
output {
zabbix {
zabbix_host => "log_getter"
zabbix_key =>"hello"
zabbix_server_host => "10.0.30.215"
}
}
发布于 2015-08-17 15:01:38
根据zabbix插件文档的说法,这个插件期望zabbix_host =>
包含一个字段名,这个字段名保存着zabbix主机名。由于您没有任何名为log_getter
的字段,因此您将得到一个错误:Field referenced by log_getter is missing
zabbix_host
和zabbix_key
都期望值是字段引用。您已经在grok过滤器中设置了值。只需在输出配置中使用它们:
zabbix {
zabbix_host => "zabbix_host"
}
不需要zabbix_key
值。你可以把它忘了。您可能需要相应地更改zabbix服务器配置以接受事件。
https://stackoverflow.com/questions/32053093
复制相似问题