如何设置logstash来监听snmptrap?

时间:2016-03-15 08:15:54

标签: logstash

我是lostash和elastichsearch的新手。我想通过snmptrap收集网络设备的日志。我有一个logstash的问题。

+logstash-snmptrap.conf

input {
      snmptrap {
           community => "public"
           port => 160
           type => "snmp_trap"
             }
         }

output {
if [type] == "snmp_trap" {
   file {
     codec => "rubydebug"
     flush_interval => 1
     path => "/tmp/logstash-snmptrap.log"
         }
      }
}

执行命令时,我没有收到任何错误消息,如下所示

root@pc:~# /opt/logstash/bin/logstash -f /etc/logstash/conf.d/logstash-   
snmptrap.conf

Settings: Default filter workers: 1
Logstash startup completed
Settings: Default filter workers: 1
Logstash startup completed

但我无法找到文件" /tmp/logstash-snmptrap.log" , 我的logstash配置有什么问题?

1 个答案:

答案 0 :(得分:0)

我通常会看到snmptrap在端口162上运行。你确定你的是在160吗?

另外,不要以root身份运行该进程。使用端口转发器(例如iptables)发送162到1062(snmptrap侦听的默认端口)。

请记住,如果logstash已关闭,您将丢失陷阱。以前,我有一个小的logstash安装,它会监听snmptrap和syslog并将它们写入redis,以便在主logstash启动时读取。我用snmptrapd写入本地文件替换它,并让logstash从该文件中读取。我对输入的控制比logstash给我的更多。