Splunk Search

How to extract values from a JSON like string?

kotig
Path Finder

I am having data like this in my Splunk and I wanted to extract the value of status which is Active.

How can I do it when this is not a valid JSON string?

 

 

mydata {
name {
value: "1111"
}
id {
value: "2020-07-02 15:49:00"
}
status {
value: "Active"
}
}
Any help is appreciated.

 

 

Labels (5)
0 Karma
1 Solution

bowesmana
SplunkTrust
SplunkTrust

@kotig You are not specifying field=message in the rex command, so it is looking at _raw which no longer exists after your table message statement

| makeresults
| eval message="mydata {
name {
value: \"1111\"
}
id {
value: \"2020-07-02 15:49:00\"
}
status {
value: \"Active\"
}
}"
| rex field=message "status \{\nvalue: \"(?<status>\w+)" | table status

 

View solution in original post

richgalloway
SplunkTrust
SplunkTrust

Assuming that's all one event, then rex should do the job.

... | rex "status \{\nvalue: \"(?<status>\w+)"

 

---
If this reply helps you, Karma would be appreciated.
0 Karma

kotig
Path Finder

yea i tried the rex. But it did not work. What i did was search splunk and put them into a table and then tried the rex as mentioned above but i had no luck.

0 Karma

richgalloway
SplunkTrust
SplunkTrust
Please elaborate. What search did you use? What does the table look like? What rex did you try?
---
If this reply helps you, Karma would be appreciated.
0 Karma

kotig
Path Finder

index=mysearchIndex | table message | rex "status \{\nvalue: \"(?<status>\w+)" | table status

Here - message contains contains the string like below:

message

-----------

mydata {
name {
value: "1111"
}
id {
value: "2020-07-02 15:49:00"
}
status {
value: "Active"
}
}

0 Karma

bowesmana
SplunkTrust
SplunkTrust

@kotig You are not specifying field=message in the rex command, so it is looking at _raw which no longer exists after your table message statement

| makeresults
| eval message="mydata {
name {
value: \"1111\"
}
id {
value: \"2020-07-02 15:49:00\"
}
status {
value: \"Active\"
}
}"
| rex field=message "status \{\nvalue: \"(?<status>\w+)" | table status

 

kotig
Path Finder

Thank you @richgalloway and @bowesmana . That worked.

0 Karma
Get Updates on the Splunk Community!

Data Management Digest – December 2025

Welcome to the December edition of Data Management Digest! As we continue our journey of data innovation, the ...

Index This | What is broken 80% of the time by February?

December 2025 Edition   Hayyy Splunk Education Enthusiasts and the Eternally Curious!    We’re back with this ...

Unlock Faster Time-to-Value on Edge and Ingest Processor with New SPL2 Pipeline ...

Hello Splunk Community,   We're thrilled to share an exciting update that will help you manage your data more ...