Developing for Splunk Enterprise

Can I get the current app from Python?

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

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

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

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