Splunk Search

Extract first 3 lines of raw logs and group

alex5441
Explorer

Hi,

My current query for splunk dashboard is as:

........| eval ErrorMsg=_raw | stats count by Application, ErrorMsg | sort -count | table count, Application, ErrorMsg

My able looks like this:

countApplicationErrorMsg
5abc

{"severity" : "ERROR", "exception" : "xyz abc asd......."........"time" : "12:00:00"><there are mutiple key value pairs with data in multiple lines>........}

10abc{"severity" : "ERROR", "exception" : "xyz abc asd......."........."time" : "12:01:00"<there are mutiple key value pairs with data in multiple lines>........}

 

How can I get table like this:

15abc"exception" : "xyz abc asd 
Labels (2)
0 Karma
1 Solution

manjunathmeti
Champion

Try this:

... | rex "exception\"\s?:\s?\"(?<ErrorMsg>[^\"]+)\"" | stats count by Application, ErrorMsg | sort -count | table count, Application, ErrorMsg

View solution in original post

scelikok
SplunkTrust
SplunkTrust

Hi @alex5441,

Please try below;

| rex "exception\"\s:\s\"(?<ErrorMsg>.*?)\""
| stats count by Application ErrorMsg 
| sort -count 
| table count, Application, ErrorMsg
If this reply helps you an upvote and "Accept as Solution" is appreciated.
0 Karma

manjunathmeti
Champion

hi @alex5441,
You can extract the values for the field ErrorMsg using rex command.

 

........| rex "(?<ErrorMsg>\"exception\"\s:\s\"\w+\s\w+\w\s\w+)" | stats count by Application, ErrorMsg | sort -count | table count, Application, ErrorMsg

 

 

If this reply helps you, a like would be appreciated.

0 Karma

alex5441
Explorer

Hi @manjunathmeti 

Thanks for your reply  but Nothing changed on table.

0 Karma

manjunathmeti
Champion

I updated my answer, check now.

0 Karma

alex5441
Explorer

Hi manjunathmet,

Nothing changed agian. However I think if I get everything extracted value of exception Key that would suffice my requirement. 

{"Severity": "ERROR", "exception":"..................................", "logger":"....................."}

In above pattern I am able to extract with regex:   exception":"(.*?)"

But I have to use it as rex in my SPL which needs escaping special chars which I am not sure about.

0 Karma

manjunathmeti
Champion

Try this:

... | rex "exception\"\s?:\s?\"(?<ErrorMsg>[^\"]+)\"" | stats count by Application, ErrorMsg | sort -count | table count, Application, ErrorMsg
Get Updates on the Splunk Community!

Observe and Secure All Apps with Splunk

  Join Us for Our Next Tech Talk: Observe and Secure All Apps with SplunkAs organizations continue to innovate ...

Splunk Decoded: Business Transactions vs Business IQ

It’s the morning of Black Friday, and your e-commerce site is handling 10x normal traffic. Orders are flowing, ...

Fastest way to demo Observability

I’ve been having a lot of fun learning about Kubernetes and Observability. I set myself an interesting ...