Splunk Search

How come my rex command doesn't give results as expected?

ananth402
Explorer

I have the following log statement and I would like to retrieve the mac address which is a 12 digit string from it.

msgType=notifications notification={"device":"mac:Ab12Cd34nm67","cam":"{\"mac\":\"Ab:12:Cd:34:nm:67\",\"Number\":\"AAAAAAAAA\",.....}"}

I tried with

 host=host* source="source.log" "msgType=notifications*" | rex "(?<mac:.{12})>"

I'm looking for the string mac:Ab12Cd34nm67. How can change the regex to obtain the expected string?

0 Karma

somesoni2
Revered Legend

Try like this updated

 host=host* source="source.log" "msgType=notifications*" | rex "mac\:(?<mac>.{12})"
0 Karma

ananth402
Explorer

There seems to be an issue with the regex statement because it shows Premature end of data in tag form line 1 when I try to use it

0 Karma

somesoni2
Revered Legend

Yeah.. missed removing a >. Try the updated answer.

0 Karma

ananth402
Explorer

tried using host=host* source="source.log" "msgType=notifications*" | rex "mac:(?<mac_number>)" | stats count by mac_number doesn't give me any results

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