Admin Manual

 


How Splunk Works
Applications

How applications work

This documentation does not apply to the most recent version of Splunk. Click here for the latest version.

How applications work

A Splunk application can be as simple as a collection of event types and as complex as an entirely new program that uses Splunk underneath the hood. This document is a general discussion of building Splunk applications, linking off to pages handling more specific issues.


Note: Be sure to check SplunkBase to see if there's already an application there that does what you need, or is close enough that it can be modified faster than you can build one from scratch.


Plan your application

Not all Splunk applications need a lot of planning, but it certainly doesn't hurt to give some thought to what you're trying to do before you start. Some things to keep in mind:


You also want to try to think of an application at two different levels:


Figure 1: Creating separate applications for a particular technology and for your internal needs can be one way of maintaining your company's settings, without having to scrub them before sharing an application with the public.


CreateApplications-ApplicationsDiagram-separate.jpg


Figure 2: Creating a section for your internal settings inside an application built for a specific technology allows you to maintain things in one place, but may need to be scrubbed to prevent sensitive internal from escaping into the wild.


CreateApplications-ApplicationsDiagram-together.jpg


And, of course, as with any code or scripting, it's always a good idea to add comments in your application as much as possible. That way, you don't have to remember why you set up a stanza the way you did, and someone else needing to change the configuration doesn't have to reverse-engineer things.


Apply the Splunk Application Standard to your data

Once you know which data sources (log files, configuration files, etc. for particular technologies) your application needs to interact with, you can look at samples of this data side by side with the Splunk Application Standard. See How to apply the Splunk Application Standard for a discussion on how to do this. You may find that somebody else has already done part of the work!


Build your application

At this stage, it is more useful to look at specific documents discussing different features your application has than it is to discuss building in general. Documents of interest here include:


Test your application

Once you've built your application, it's wise to test it and ensure that it works as expected. Be sure that if you directly edited or created configuration files, that you've restarted your Splunk instance to load them. Then walk through the process of using the application as someone in the field would, or get a few people in the field to do so and report back their experiences and suggestions.


The larger variety of data you have loaded when testing, the more you can be sure that you aren't going to generate false positives and other unexpected results.


Package your application to share

You can share your application with the rest of the Splunk community through SplunkBase. To do so, you'll need to package it up, which means pulling all of the pieces out of your general Splunk configuration and into a collection of isolated files meant just for this application. Documentation helpful toward this goal is the Splunk developer docs.


In general:


Share your application on SplunkBase

Once your application is ready to go, upload it to SplunkBase for the rest of the Splunk community to share.

This documentation applies to the following versions of Splunk: 3.2 , 3.2.1 , 3.2.2 , 3.2.3 , 3.2.4 , 3.2.5 , 3.2.6 View the Article History for its revisions.


You must be logged into splunk.com in order to post comments. Log in now.

Was this documentation topic helpful?

If you'd like to hear back from us, please provide your email address:

We'd love to hear what you think about this topic or the documentation as a whole. Feedback you enter here will be delivered to the documentation team.

Feedback submitted, thanks!