Getting Data In

Multiple json events coming as one

khalid7assan
New Member

I have multiple events which are coming as one
and I need to separate them into separate events in order to create a table and etc
Is there a way to do it in the search time?
{
"Timestamp": "2020-02-08T15:45:00.036Z",
"Query Parameters": "",
"RequestMethod": "POST",
"Request": "{tt}",
"Response": "{tt}",
"HTTPStatusCode": "200",
"TotalResponseTimeApprox.(ms)": "290.0",
"TargetResponseTime(ms)": "241.0"
}{
"Timestamp": "2020-02-08T15:45:00.334Z",
"Query Parameters": "",
"RequestMethod": "POST",
"Request": "{tt}",
"Response": "{tt}",
"HTTPStatusCode": "200",
"TotalResponseTimeApprox.(ms)": "290.0",
"TargetResponseTime(ms)": "241.0"
}

Thank you

Tags (2)
0 Karma
1 Solution

javiergn
Super Champion

Hi @khalid7assan,

Your event can be parsed with the following SPL:

| rex field=_raw max_match=0 "(?ms)(?<split_raw>\{.+?\})(?=\{|\s*$)"
| mvexpand split_raw

You can replicate the behaviour by copying and pasting the following code in Splunk:

| makeresults
| eval _raw = "
    {
    \"Timestamp\": \"2020-02-08T15:45:00.036Z\",
    \"Query Parameters\": \"\",
    \"RequestMethod\": \"POST\",
    \"Request\": \"{tt}\",
    \"Response\": \"{tt}\",
    \"HTTPStatusCode\": \"200\",
    \"TotalResponseTimeApprox.(ms)\": \"290.0\",
    \"TargetResponseTime(ms)\": \"241.0\"
    }{
    \"Timestamp\": \"2020-02-08T15:45:00.334Z\",
    \"Query Parameters\": \"\",
    \"RequestMethod\": \"POST\",
    \"Request\": \"{tt}\",
    \"Response\": \"{tt}\",
    \"HTTPStatusCode\": \"200\",
    \"TotalResponseTimeApprox.(ms)\": \"290.0\",
    \"TargetResponseTime(ms)\": \"241.0\"
    }
"

| rex field=_raw max_match=0 "(?ms)(?<split_raw>\{.+?\})(?=\{|\s*$)"
| mvexpand split_raw
| fields - _raw, _time

Output:

alt text

If you find any issues or your events are more complex than the one you included in your question, please post some more examples so that we can take a look.

Regards,
J

View solution in original post

0 Karma

javiergn
Super Champion

Hi @khalid7assan,

Did any of the answers below help with your problem? If so please don't forget to accept one so that other users can benefit from this answer in the future.

Thanks,
J

0 Karma

to4kawa
Ultra Champion

props.conf

[your_sourcetype]
SHOULD_LINEMERGE = false
LINE_BREAKER =(^){

make appropriate props.conf

0 Karma

javiergn
Super Champion

Hi @khalid7assan,

Your event can be parsed with the following SPL:

| rex field=_raw max_match=0 "(?ms)(?<split_raw>\{.+?\})(?=\{|\s*$)"
| mvexpand split_raw

You can replicate the behaviour by copying and pasting the following code in Splunk:

| makeresults
| eval _raw = "
    {
    \"Timestamp\": \"2020-02-08T15:45:00.036Z\",
    \"Query Parameters\": \"\",
    \"RequestMethod\": \"POST\",
    \"Request\": \"{tt}\",
    \"Response\": \"{tt}\",
    \"HTTPStatusCode\": \"200\",
    \"TotalResponseTimeApprox.(ms)\": \"290.0\",
    \"TargetResponseTime(ms)\": \"241.0\"
    }{
    \"Timestamp\": \"2020-02-08T15:45:00.334Z\",
    \"Query Parameters\": \"\",
    \"RequestMethod\": \"POST\",
    \"Request\": \"{tt}\",
    \"Response\": \"{tt}\",
    \"HTTPStatusCode\": \"200\",
    \"TotalResponseTimeApprox.(ms)\": \"290.0\",
    \"TargetResponseTime(ms)\": \"241.0\"
    }
"

| rex field=_raw max_match=0 "(?ms)(?<split_raw>\{.+?\})(?=\{|\s*$)"
| mvexpand split_raw
| fields - _raw, _time

Output:

alt text

If you find any issues or your events are more complex than the one you included in your question, please post some more examples so that we can take a look.

Regards,
J

0 Karma

khalid7assan
New Member

Thank you it worked

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!

IT Service Intelligence 5.0 Series: Your Guide to the June Launch

We are excited to announce the June release of Splunk IT Service Intelligence (ITSI) 5.0. This update ...

Agent Mode Engaged! Enchaining Agentic Operations with Splunk AI Assistant 2.0

    Are you ready to transform how your team handles complex data requests? We invite you to our upcoming ...

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 ...