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