Snmp陷阱接收器作为Apache Nifi中的自定义处理器

问题描述 投票:1回答:1

目标: - 寻找在Apache Nifi中使用SNMP陷阱接收机制作为自定义处理器的选项。

看看如何在Nifi(Apache docsyoutube videos)中创建自定义处理器的参考资料,GetSNMP的Nifi源代码(包括AbstractSNMPProcessor),ListenSysLog,GetFile等。

有一个简单的(java code)SNMPTrap接收器使用SNMP4J库,可以使用基于UDP或TCP的端口监听特定地址。然后出现陷阱(可以通过SNMP4J库的简单Java代码模拟)可以打印PDU细节。

现在,在尝试将此代码作为自定义处理器在Nifi中编写时,不确定将侦听机制放在何处,然后处理实际的PDU部分。有点打击在这里。

更多细节 :-

GetSNMP处理器讨论特定OID并使用它我们有GET或Walk策略选项来获取信息。这里(我的目标)寻找一个Nifi服务器运行的选项,并希望从运行Nifi的特定系统中选择SNMP陷阱。而对于我的目标,没有获得扩展GetSNMP代码的上下文。

在ListenSyslogProcessor中,有一个阻塞队列机制。从中我无法派出去侦听陷阱的ip地址以及如何使用OnConrigger方法的ProcessContext,ProcessSession选项来实现Nifi自定义处理器。

欢迎任何投入......

snmp apache-nifi receiver snmp4j snmp-trap
1个回答
0
投票

一种可能的解决方案:

无法在Apache Nifi中创建自定义处理器以接收SNMP陷阱。还有其他的东西是可能的,我会在这里说明一下。它可能对其他人有所帮助。

  1. Java code没有变化
  2. 使用Nifi的ExecuteProcess Processor来运行上面的Java代码。
  3. 成功的结果将被推向Nifi Flow的更多组件。

实际上尝试使用net-snmp,snmptrapd等linux命令来捕获SNMP陷阱。这些选项实际上并没有捕获SNMP陷阱,通过Java代码陷阱发送器进行测试,然后使用来自在线源的命令生成陷阱。

如果您有更好的想法,请分享。

© www.soinside.com 2019 - 2024. All rights reserved.