Splunk Search

How to populate a dropdown with file extensions extracted from a search?

dreamwork801
Path Finder

I want my users to be able to chose a file extension from a drop down that is populated with a search. I was thinking I could do something that looks for a decimal point like this:

index = git | rex field = Data.payload.head_commit.modified{} max_match=1 "(?<extension>*"."*)" | table extension

But that doesn't work because some of the file addresses have decimal points in them so it would grab an address an not a specific file name.

Some examples:

files/payments/Request.cs
App.files/payments.js
Hello/test.payments/request.xml

And I basically would want the drop down list to populate .cs, .js, .xml and NOT .files/payments.js or NOT .payments/request.xml

Tags (2)
1 Solution

somesoni2
Revered Legend

Try this

index = git | rex field = Data.payload.head_commit.modified{} max_match=1 "\w+(?<extension>\.\w+)$" | table extension

View solution in original post

somesoni2
Revered Legend

Try this

index = git | rex field = Data.payload.head_commit.modified{} max_match=1 "\w+(?<extension>\.\w+)$" | table extension

somesoni2
Revered Legend

For getting all the values matched in a multivalued field, use max_match=0 (for unlimited)

0 Karma

dreamwork801
Path Finder

I want the rex to get all extensions.
Okay will do. Thank you

0 Karma

somesoni2
Revered Legend

If Data.payload.head_commit.modified{} is a multivalued field, do you want the rex to get all the extentions or just the first one?

By the way your approach is good as stats also eliminates duplicates. You might want to get rid of "sort extension" though, stats output will already by sorted by extension.

dreamwork801
Path Finder

That works! Thank you. The only small problem I have is that Data.payload.head_commit.modified{} may have multiple values and so when the rex grabs the extensions it groups them weird. So I have a way around by doing

index = git | rex field=Data.payload.head_commit.modified{} max_match=1 "\w+(?.\w+)$" | stats count by extension | sort extension | fields - count

Because stats pulls out the indivual values instead of leaving them grouped. I didn't know if you knew of a cleaner way to do this. Thanks

Get Updates on the Splunk Community!

Stay Connected: Your Guide to May Tech Talks, Office Hours, and Webinars!

Take a look below to explore our upcoming Community Office Hours, Tech Talks, and Webinars this month. This ...

They're back! Join the SplunkTrust and MVP at .conf24

With our highly anticipated annual conference, .conf, comes the fez-wearers you can trust! The SplunkTrust, as ...

Enterprise Security Content Update (ESCU) | New Releases

Last month, the Splunk Threat Research Team had two releases of new security content via the Enterprise ...