Splunk Search

Get current user from Custom Search Command

maxdouglas
Engager

Hello Splunkers,

I am developing an app containing a Custom Generating Search Command. (I think the Generating part is irrelevant for this case)
I need my custom command to get the user who executed this search.

Following the page below, I got to this code, which returns the wrong user:
http://dev.splunk.com/view/python-sdk/SP-CAAAEJ6#currentuser

from splunklib.searchcommands import GeneratingCommand, dispatch, Configuration
from splunklib import client

@Configuration(streaming=True, local=True)
class MyCommand(GeneratingCommand):
    def generate(self):
        service = client.connect(username='fixed_user', password='fixed_password')
        user = service.username  # user is fixed_user, not the current user
        yield {'_time': time.time(),'_raw': user}

dispatch(MyCommand, sys.argv, sys.stdin, sys.stdout, __name__)

When I execute the search | mycommand on Splunk Web, I get fixed_user, not the current logged user.
How can my custom command know which user is calling it?

0 Karma
1 Solution

anatoliikostin
Explorer

You can make use of self which is passed into generate(self):

user = self._metadata.searchinfo.username

View solution in original post

anatoliikostin
Explorer

You can make use of self which is passed into generate(self):

user = self._metadata.searchinfo.username

Got questions? Get answers!

Join the Splunk Community Slack to learn, troubleshoot, and make connections with fellow Splunk practitioners in real time!

Meet up IRL or virtually!

Join Splunk User Groups to connect and learn in-person by region or remotely by topic or industry.

Get Updates on the Splunk Community!

Quantify Your Splunk Investment Impact: Introducing Savings Metrics to Value Insights

Building on the foundation established in our initial Value Insights releases, we are introducing the Savings ...

Event Series: Telemetry Pipeline Management

Balancing Scale and Spend: Gaining Control Over High-Volume Metrics in Splunk Observability Cloud As ...

Kick the Tires Before You Commit: A Hands-On Tour of the Splunk Observability Cloud ...

Evaluating an enterprise observability platform usually goes like this: fill out a form, get a free trial with ...