Developing for Splunk Enterprise

What is the proper way to access input lookup files using custom command logic (Python SDK)?


I'm currently trying to create a custom command to handle a multivalue lookup without having to run


Using MVexpand on large records with multivalue fields will multiply the number of rows and can be unwieldy if we have to use this logic on multiple multivalue fields.

The hope is for a custom command logic to do the following:

1. pull in a lookup file,
2. loop through each record, for each multivalue field
3. --loop through each multivalue field and apply the lookup.

In regards to Splunk custom command coding, what's the guideline for accessing input lookup files? Its mentioned on the python-SDK main page, but then there's no mention of it in the python SDK reference site. for any input file, do we need to add a code to check 4-5 different locations to see if such a file exists? If this is the route, is there a proper order to check the file, for example, check systems/lookup first then local app/bin/lookup then user lookup directory?

Ideally, it would be great if we can make the same call that the system is using when you run |lookup command and |inputloookup command.
GeneratingCommand: Generates event records based on command arguments. Examples of generating commands include search (at the beginning of the pipeline), inputcsv, input lookup, and metadata.

python SDK reference site

location of CSV files >> In addition to the directory noted here, i've noticed lookup files are also placed here: /opt/splunk/etc/users/{user-account}/{splunk-app}/lookups/

if you offer any code that will help resolve, i'll be happy to offer my karma points.

Labels (2)
0 Karma