使用Spring从Splunk读取数据

时间:2015-08-12 21:20:01

标签: java bigdata spring-integration splunk

我需要读取一个记录到splunk的json,解析它并存储在关系数据库中。

我知道如何解析json,并进行后期处理。但是,我不太确定如何从splunk中提取数据。这个用例的最佳策略和Java技术堆栈是什么? (splunk sdk和rest api谈论运行搜索等,但不是数据提取本身。我看到Spring-integration对Splunk有一些扩展,所以我可以使用spring,但是没有找到具体的相同的例子。)

1 个答案:

答案 0 :(得分:0)

对不起拖延,的确如此。

是的,你绝对应该使用Spring Integration Splunk。根据最后一个从那里获取数据的文档,您应该使用search功能。

Spring Integration Splunk就此问题提供了<int-splunk:inbound-channel-adapter>来从Splunk中检索event并将它们发送到下游集成流程。

您可以在项目的测试用例中找到的样本,但最简单的样本可能是这样的:

<int-splunk:inbound-channel-adapter id="inboundChannelAdapter"
                                    splunk-server-ref="splunkServer"
                                    search="search host=SpringIO"
                                    channel="searchResults"
                                    mode="REALTIME"
                                    count="10"
                                    init-earliest-time="">
    <int:poller fixed-delay="100" max-messages-per-poll="1"/>
</int-splunk:inbound-channel-adapter> 

此类操作的结果为List<SplunkEvent> payload Message<?> searchResults} channel