Splunk Search

RegEx for the free -m command - Linux

aferone
Builder

I have a script that runs the "free -m" command, and I am only pulling (grepping) the lines like the following:

-/+ buffers/cache:        219       1789
-/+ buffers/cache:       1469      10557

The first value is used memory, and the second value is free memory.

The RegEx for free memory works for all of the logs:

(?i)^[^:]*:\s+\d+\s+(?P<FreeMemory>.+)

However, for used memory, the following RegEx only works for the 2nd log line above, because of the amount of spaces between "cache:" and the value.

(?i)/cache:       (?P<UsedMemory>[^ ]+)

How do I get the RegEx to work, regardless of how many spaces are in between?

Thanks!

Tags (3)
1 Solution

gfuente
Motivator

Hello

Use this regex to extract both values at the same time:

... | rex "\:\s+(?<usedmemory>\d+)\s+(?<freememory>\d+)" | ...

Regards

View solution in original post

gfuente
Motivator

Hello

Use this regex to extract both values at the same time:

... | rex "\:\s+(?<usedmemory>\d+)\s+(?<freememory>\d+)" | ...

Regards

aferone
Builder

Perfect!! Thank you!

0 Karma
Get Updates on the Splunk Community!

Announcing Scheduled Export GA for Dashboard Studio

We're excited to announce the general availability of Scheduled Export for Dashboard Studio. Starting in ...

Extending Observability Content to Splunk Cloud

Watch Now!   In this Extending Observability Content to Splunk Cloud Tech Talk, you'll see how to leverage ...

More Control Over Your Monitoring Costs with Archived Metrics GA in US-AWS!

What if there was a way you could keep all the metrics data you need while saving on storage costs?This is now ...