There are many options for capturing data (text files, tcp/udp, etc) however, what are the possibilities for getting data out of Splunk? For example, we want to use Splunk as a central repository to store some data. After Splunk indexes this data, we want to make it available to be consumed by downstream applications.
One possibility I will try is using Splunk CLI so that downstream applications can call a CLI command with a real-time search and consume the data as it comes. (Not sure if it would work yet, will be trying this tomorrow).
Are there any other possibilities here? Some APIs so that C++ and/or Java apps can easily stream data that comes out of the real-time Splunk search? Maybe there are some Splunk Apps available for this purpose?
There is a topic in the documentation that explains the various options for exporting search results, including CLI, REST API, and SDKs. See http://docs.splunk.com/Documentation/Splunk/6.2.2/Search/Exportsearchresults.
You have the option of building custom applications and leverage the APIs Splunk makes available. We've had success with a similar use case using the Java API. I'm not sure how real-time searches work but overall, getting the data out of Splunk is easy enough.