Splunk Search

Map command maxsearches unexpected behavior

gkapitany
Explorer

I have the search below:

index=stats_summary dest_ip=172.* 
| dedup src_ip dest_ip|  map maxsearches=100 search="| inputlookup networks.csv
| eval dip=$dest_ip$
| eval sip=$src_ip$
| eval dm=if(cidrmatch(cidr,$dest_ip$),1,0) 
| where  dm == 1 
| table * "
| table sip dip

The first search returns about 20K records. The lookup table has about 90 records. If I set the maxsearches to 100 then the search returns zero records. If I set maxsearches to 3500 then I get about 100+. According to the documentation, maxsearches controls how many times the map search iterates over each record from the first search. Any ideas on what I'm doing wrong?

0 Karma
1 Solution

gkapitany
Explorer

I found and alternate solution based on another post. I had to update the transforms.conf file with:

[networks]
default_match = NONE
match_type = CIDR(cidrBlock)
check_permission = true
filename = networks.csv

The query below returns the results I was trying to get with map search:

index=stats_summary dest_ip=172.*
| dedup src_ip dest_ip
| lookup networks cidrBlock as dest_ip OUTPUT cidrBlock as dmatch
| where dmatch != "NONE"
| table src_ip dest_ip

View solution in original post

gkapitany
Explorer

I found and alternate solution based on another post. I had to update the transforms.conf file with:

[networks]
default_match = NONE
match_type = CIDR(cidrBlock)
check_permission = true
filename = networks.csv

The query below returns the results I was trying to get with map search:

index=stats_summary dest_ip=172.*
| dedup src_ip dest_ip
| lookup networks cidrBlock as dest_ip OUTPUT cidrBlock as dmatch
| where dmatch != "NONE"
| table src_ip dest_ip

richgalloway
SplunkTrust
SplunkTrust

@gkapitany If your problem is resolved, please accept the answer to help future readers.

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

richgalloway
SplunkTrust
SplunkTrust

maxsearches does not mean "max results". It's the number of times the map command will run regardless of whether anything is found.
What are you trying to do? Perhaps we can suggest another method.

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

gkapitany
Explorer

I'm trying to get all src_ip for which the dest_ip in in one of the network ranges listed in network.csv. The lookup table consist of about 90 cidr ranges.

0 Karma
Get Updates on the Splunk Community!

Detecting Remote Code Executions With the Splunk Threat Research Team

REGISTER NOWRemote code execution (RCE) vulnerabilities pose a significant risk to organizations. If ...

Observability | Use Synthetic Monitoring for Website Metadata Verification

If you are on Splunk Observability Cloud, you may already have Synthetic Monitoringin your observability ...

More Ways To Control Your Costs With Archived Metrics | Register for Tech Talk

Tuesday, May 14, 2024  |  11AM PT / 2PM ET Register to Attend Join us for this Tech Talk and learn how to ...