Splunk Search

How to extract a csv data fields message data into fields?

Cheng2Ready
Communicator

I have a field message that when
I run the search

index=example123 host=5566
|search "*specials word*"
I table message


it displays as an example below: 

2024-08-02 16:45:21- INFO Example (['test1' , 'test2', 'test3', 'test4', 'test5', 'test6', 'test7)'] , ['Medium', 'Large ', 'Small', 'Small ', 'Large ', 'Large ', 'Large '])

Is there a way to run a command so that the data in the field "Message"  can be extracted into their own fields or displayed like this matching 1:1 on a table 



test1           test2       test3        test4         test5           test6          test7
Medium     Large      Small        Small         Large        Large          Large

or

test1 = Medium 
test2= Large 
test3 = Small
.... ect

 

0 Karma
1 Solution

ITWhisperer
SplunkTrust
SplunkTrust

Assuming your real events don't have brackets in the names, try something like this

| rex "Example \(\[(?<keys>[^\]]*)\]\s*,\s*\[(?<values>[^\]]*)\]\)"
| rex max_match=0 field=keys "'(?<key>[^']+)'"
| rex max_match=0 field=values "'(?<value>[^']+)'"
| table key value
| eval pairs=mvzip(key, value, "=")

View solution in original post

0 Karma

ITWhisperer
SplunkTrust
SplunkTrust

Assuming your real events don't have brackets in the names, try something like this

| rex "Example \(\[(?<keys>[^\]]*)\]\s*,\s*\[(?<values>[^\]]*)\]\)"
| rex max_match=0 field=keys "'(?<key>[^']+)'"
| rex max_match=0 field=values "'(?<value>[^']+)'"
| table key value
| eval pairs=mvzip(key, value, "=")
0 Karma

Cheng2Ready
Communicator

I think I found the answer
| rex field="Example" seemed to work


Thank you

0 Karma

ITWhisperer
SplunkTrust
SplunkTrust

It is often quicker if you give accurate representations of your real data, not just made up names, but good that you worked out how to fix it.

0 Karma

Cheng2Ready
Communicator

Thank you for your prompt response
I have different container names
example replacing

'test1' , 'test2', 'test3', 'test4', 'test5', 'test6', 'test7

to as an example

'x99_846' , 'beacon score', 'account count', '', 'credit_transactions', 'status_active_years', 'current'

ect

0 Karma

ITWhisperer
SplunkTrust
SplunkTrust

Does the search work for you?

0 Karma

Cheng2Ready
Communicator

partially 
Where we had "Example"
It can sometimes be other words
so its not capturing everything from  ([

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!

Your Feedback. Our Roadmap. Visit the PX Feedback Booth at .conf26

You use Splunk every day, come and help shape what's next.  Save Your Seat: Product-Focused Sessions at ...

Agentic SOC Triage: Investigating Splunk ES Notables with MCP Server and a Local LLM

The Problem: Too Many Alerts, Too Little Context Security operations teams running Splunk Enterprise Security ...

Painting a Clearer Picture: Creating Cross-Domain Visibility with AI Canvas

Watch Now Painting a Clearer Picture: Creating Cross-Domain Visibility with AI Canvas     Do you ever feel ...