Splunk Dev

Can I get the current app from Python?

timpgray
Path Finder

I notice there is a method to get the current apps dir from python. There is also a getCurrentApp() available in javascript, but I need the current app from Python.

Does anyone have any suggestions?

Tags (2)
1 Solution

araitz
Splunk Employee
Splunk Employee

Which type of python file? We tend to use python's __file__ attribute. I assume that you have imported os and cherrypy at least.

For example, in the file $SPLUNK_HOME/etc/apps/TA-opseclea/appserver/controllers/:

 app_name = __file__.split('.')[-2]

If I was implementing a controller method where a request was routed to me:

@route('/:app/:action=edit/:name')
@expose_page(must_login=True, methods=['GET']) 
def edit(self, app, action, name, **kwargs):
    host_app = cherrypy.request.path_info.split('/')[3]

For a scripted input in an app's .\bin directory:

app_name = __file__.split(os.sep)[-3]

View solution in original post

0 Karma

araitz
Splunk Employee
Splunk Employee

Which type of python file? We tend to use python's __file__ attribute. I assume that you have imported os and cherrypy at least.

For example, in the file $SPLUNK_HOME/etc/apps/TA-opseclea/appserver/controllers/:

 app_name = __file__.split('.')[-2]

If I was implementing a controller method where a request was routed to me:

@route('/:app/:action=edit/:name')
@expose_page(must_login=True, methods=['GET']) 
def edit(self, app, action, name, **kwargs):
    host_app = cherrypy.request.path_info.split('/')[3]

For a scripted input in an app's .\bin directory:

app_name = __file__.split(os.sep)[-3]
0 Karma

timpgray
Path Finder

I am writing a custom search command. Looks like the last option you presented may be the one. I will give it a shot. Thanks

0 Karma
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!

Persistent Queue at TcpOut — One of Splunk's Most Practical Features

Splunk introduced persistent queueing at the tcpout layer as one of the most practical resilience features in ...

Catalog Is Now Generally Available on Splunk Cloud Platform

A Unified View of Your Data  Security logs, application events, business data, and historical telemetry often ...

Your Path to AgenticOps: AI Experiences for Every Splunk Practitioner

Your Path to AgenticOps: AI Experiences for Every Splunk Practitioner   Watch on demand us for a demo-driven ...