我正在寻找参考,在那里我可以得到一个简单的程序发送snmp陷阱到ApacheKafka主题使用ApacheCamel。
请帮助我,如果有人可以解释它使用简单的java程序。
我的routebuilder配置
import org.apache.camel.builder.RouteBuilder;
public class SimpleRouteBuilder extends RouteBuilder{
@Override
public void configure() throws Exception {
String topicName = "topic=first_topic";
String kafkaServer = "kafka:localhost:9092";
String zooKeeperHost = "zookeeperHost=localhost&zookeeperPort=2181";
String serializerClass = "serializerClass=kafka.serializer.StringEncoder";
String toKafka = new StringBuilder().append(kafkaServer).append("?").append(topicName).append("&")
.append(zooKeeperHost).append("&").append(serializerClass).toString();
System.out.println(toKafka);
from("snmp:127.0.0.1:161?protocol=udp&type=POLL&oids=1.3.6.1.2.1.1.5.0").split().tokenize("\n").to(toKafka);
}
}
主要方法
import org.apache.camel.CamelContext;
import org.apache.camel.impl.DefaultCamelContext;
import org.snmp4j.Snmp;
public class MainApp {
public static void main(String[] args) {
SimpleRouteBuilder routeBuilder = new SimpleRouteBuilder();
CamelContext ctx = new DefaultCamelContext();
try {
ctx.addRoutes(routeBuilder);
ctx.start();
Thread.sleep(5 * 60 * 1000);
ctx.stop();
}
catch (Exception e) {
e.printStackTrace();
}
}
}
1条答案
按热度按时间nwlqm0z11#
我走错了方向。写入方向如下-
创建陷阱发送器程序。
创建陷阱接收器/侦听器程序。
在trap接收器或侦听器内部,接收trap并通过apachecamel将其发送给apachekafka主题。
pom.xml文件
添加以下依赖项-
Camel 核
snmp4j型
Camel Kafka
陷阱发送器程序
使用apache camel的接收器陷阱