Splunk Search

How do I extract a string of numbers using rex?

drewabrams
New Member

I am dealing with a SQL log file.
The field I am attempting to extract a string of numbers from is called 'SQL_BIND'. I want to set the extracted string of numbers as field 'numbr'
The data in the SQL_BIND field is in the following form:

#1(8):xxxxxxxx #2(21):...

The xxxxxxxx represents the number I need to extract, the #1(8): exists at the beginning of each, and the #2(21): exists after the number followed by a random set of information (represented by the ellipsis).

I've attempted the following search to get a table of the results, but the table generates completely blankly.

index="main" | rex field=SQL_BIND "\(#1\(8\):()\(\s#2\(21\)" | table numbr

I think I'm using the \ before the parenthesis correctly to treat them as literal characters, but maybe not? I've been at this for hours, scouring the web for an answer or similar issue to figure it out... and so far no luck.

What am I doing wrong? This is driving me bonkers! Can someone please help?

0 Karma
1 Solution

javiergn
Super Champion

Try this instead:

| rex field=SQL_BIND "#1\(8\):(?<numbr>\d+) #2\(21\)"

View solution in original post

0 Karma

sundareshr
Legend

You need to need to escape the parens with a backslash

... | rex field=SQL_BIND "\#1\(8\):(?<numbr>\d+)" | ...
0 Karma

javiergn
Super Champion

Try this instead:

| rex field=SQL_BIND "#1\(8\):(?<numbr>\d+) #2\(21\)"
0 Karma

drewabrams
New Member

Thank you! This worked perfectly! Apparently I was overthinking it 🙂

0 Karma
Get Updates on the Splunk Community!

Building Reliable Asset and Identity Frameworks in Splunk ES

 Accurate asset and identity resolution is the backbone of security operations. Without it, alerts are ...

Cloud Monitoring Console - Unlocking Greater Visibility in SVC Usage Reporting

For Splunk Cloud customers, understanding and optimizing Splunk Virtual Compute (SVC) usage and resource ...

Automatic Discovery Part 3: Practical Use Cases

If you’ve enabled Automatic Discovery in your install of the Splunk Distribution of the OpenTelemetry ...