Splunk Search

How to combine multiple complicated searches?

s0rbeto
Explorer

Hi everyone,

I have these 3 searches, and they are all complicated as it looks. Any idea on how to combine them? It's not something regular eval can do though, My thought is to put them into tables maybe?

index=websphere CPUStarvation
| rex "delay is\s+(?P<Value>\d+)\s+seconds" 
| eval Value=Value . " Seconds"
| eval AlertName = "APM WAS: CPU Starvation detected"
| eval Severity="Critical" 
| eval Details = "APM WAS: Error HMGR0152W. Value Field represent thread scheduling delay"
| table AlertName,Details,Severity,Value,host
| collect index=alerts sourcetype=Alerts:APM

index=websphere OutOfMemoryError 
| rex mode=sed field=_raw "s/\n.*//g" 
| rex mode=sed field=_raw "s/^\[.*PDT\]\s+.{8}\s+//g" 
| eval ts=round(_time,0) 
| stats count as Value list(_raw) as msg by ts,host 
| convert ctime(ts) as dt
| eval AlertName = "APM WAS: OutOfMemoryError"
| eval Severity="Critical" 
| eval Details = "OutOfMemoryError"
| table AlertName,Details,Severity,Value,host
| collect index=alerts sourcetype=Alerts:APM

index=websphere HangingThreat
| rex "active for\s+(?P<Value>\d+)\s+milliseconds.*are\s+(?P<threads>\d+)\s+thread" 
| eval Value=round(Value/1000,2)
| eval Value=Value . " Sec"
| eval AlertName = "APM WAS: WAS Hanging Threads"
| eval Severity="Critical" 
| eval Details = "APM WAS: Error WSVR0605W (".threads." Threads hang). Field 'Value' represent thread activity time"
| table AlertName,Details,Severity,Value,host
| collect index=alerts sourcetype=Alerts:APM

thank you

Tags (2)
0 Karma

NOUMSSI
Builder

Hi,
try this

| multisearch [search index=websphere CPUStarvation
 | rex "delay is\s+(?P<Value>\d+)\s+seconds" 
 | eval Value=Value . " Seconds"
 | eval AlertName = "APM WAS: CPU Starvation detected"
 | eval Severity="Critical" 
 | eval Details = "APM WAS: Error HMGR0152W. Value Field represent thread scheduling delay"
 | table AlertName,Details,Severity,Value,host
 | collect index=alerts sourcetype=Alerts:APM

]

[search index=websphere OutOfMemoryError 
 | rex mode=sed field=_raw "s/\n.*//g" 
 | rex mode=sed field=_raw "s/^\[.*PDT\]\s+.{8}\s+//g" 
 | eval ts=round(_time,0) 
 | stats count as Value list(_raw) as msg by ts,host 
 | convert ctime(ts) as dt
 | eval AlertName = "APM WAS: OutOfMemoryError"
 | eval Severity="Critical" 
 | eval Details = "OutOfMemoryError"
 | table AlertName,Details,Severity,Value,host
 | collect index=alerts sourcetype=Alerts:APM

]

[search index=websphere HangingThreat
 | rex "active for\s+(?P<Value>\d+)\s+milliseconds.*are\s+(?P<threads>\d+)\s+thread" 
 | eval Value=round(Value/1000,2)
 | eval Value=Value . " Sec"
 | eval AlertName = "APM WAS: WAS Hanging Threads"
 | eval Severity="Critical" 
 | eval Details = "APM WAS: Error WSVR0605W (".threads." Threads hang). Field 'Value' represent thread activity time"
 | table AlertName,Details,Severity,Value,host
 | collect index=alerts sourcetype=Alerts:APM

]

0 Karma
Get Updates on the Splunk Community!

Ready, Set, SOAR: How Utility Apps Can Up Level Your Playbooks!

 WATCH NOW Powering your capabilities has never been so easy with ready-made Splunk® SOAR Utility Apps. Parse ...

DevSecOps: Why You Should Care and How To Get Started

 WATCH NOW In this Tech Talk we will talk about what people mean by DevSecOps and deep dive into the different ...

Introducing Ingest Actions: Filter, Mask, Route, Repeat

WATCH NOW Ingest Actions (IA) is the best new way to easily filter, mask and route your data in Splunk® ...