Splunk Search

How to filter number from text with regular expression

dabroma5
Explorer

Hi,

I have two types of messages, I would like to receive the numbers from these logs :

2020-03-16 15:12:15,304 services/text123456: Periodic connection check - 1659 active services!
2020-03-16 15:11:56,173 services/textabcdef: NUMBER OF ACTIVE services: 1123

Thanks for help

0 Karma
1 Solution

richgalloway
SplunkTrust
SplunkTrust

This regex works with your examples. (?:check - |services: )(?<services>\d+)

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

View solution in original post

0 Karma

rmmiller
Contributor

As a first cut, add these lines to the end of your current search:

| rex field=_raw "Periodic\sconnection\scheck\s\-\s(?<num_active_svcs_chkd>\d+)\sactive\sservices"
| rex field=_raw "NUMBER\sOF\sACTIVE\sservices\:\s(?<num_active_svcs>\d+)"

This will give you 2 new fields, num_active_svcs_chkd and num_active_svcs. Theses names are completely arbitrary -- you can change them to suit your needs.

Once you're happy with how these extractions are going, work with your Splunk admin to get these added into props.conf.

Hope that helps!
rmmiller

0 Karma

richgalloway
SplunkTrust
SplunkTrust

This regex works with your examples. (?:check - |services: )(?<services>\d+)

---
If this reply helps you, Karma would be appreciated.
0 Karma
Get Updates on the Splunk Community!

SOCin’ it to you at Splunk University

Splunk University is expanding its instructor-led learning portfolio with dedicated Security tracks at .conf25 ...

Credit Card Data Protection & PCI Compliance with Splunk Edge Processor

Organizations handling credit card transactions know that PCI DSS compliance is both critical and complex. The ...

Stay Connected: Your Guide to July Tech Talks, Office Hours, and Webinars!

What are Community Office Hours?Community Office Hours is an interactive 60-minute Zoom series where ...