Getting Data In

How to use EVAL in props.conf with a Multivalue field

Rob
Splunk Employee
Splunk Employee

Using props.conf and transforms.conf, I am extracting a multivalue field that contains URL's from my events.

The problem is that when I use an EVAL statement in props.conf to use urldecode to sanitize the some of the URL values in the multivalue field, it will only run on the first field value. For example, the field myURL contains:

  1. http://www.splunk.com
  2. http%3A%2F%2Fwww.splunk.com%2Fdownload%3Fr%3Dheader
  3. http://answers.splunk.com

The props.conf line that is not working is:

EVAL-myURL = urldecode(myURL)

Is there something similar to the mvexpand command that can be run in an eval statement?

1 Solution

Rob
Splunk Employee
Splunk Employee

Unfortunately, a command like mvexpand does not exist for eval. However, to workaround this issue, you can use the eval commands to join the field values together as one value, run the urldecode function, and then split the values back in to a multivalue field. An example for how to do this is:

EVAL-myURL = split(urldecode(mvjoin(myURL, "&")),"&")

Bear in mind that depending on your data, you may need to use a different delimiter to join and split the field. Using the previous example, it might not be desired if your URL contained ampersand characters such as

http://www.splunk.com?answers=1&lang=en

View solution in original post

Rob
Splunk Employee
Splunk Employee

Unfortunately, a command like mvexpand does not exist for eval. However, to workaround this issue, you can use the eval commands to join the field values together as one value, run the urldecode function, and then split the values back in to a multivalue field. An example for how to do this is:

EVAL-myURL = split(urldecode(mvjoin(myURL, "&")),"&")

Bear in mind that depending on your data, you may need to use a different delimiter to join and split the field. Using the previous example, it might not be desired if your URL contained ampersand characters such as

http://www.splunk.com?answers=1&lang=en

yannK
Splunk Employee
Splunk Employee

so much awesomeness !

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!

Announcing Modern Navigation: A New Era of Splunk User Experience

We are excited to introduce the Modern Navigation feature in the Splunk Platform, available to both cloud and ...

Modernize your Splunk Apps – Introducing Python 3.13 in Splunk

We are excited to announce that the upcoming releases of Splunk Enterprise 10.2.x and Splunk Cloud Platform ...

Step into “Hunt the Insider: An Splunk ES Premier Mystery” to catch a cybercriminal ...

After a whole week of being on call, you fell asleep on your keyboard, and you hit a sequence of buttons that ...