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:
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?
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
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
so much awesomeness !