Splunk Search

Merge 2 queries base on id

shrogers
Loves-to-Learn Everything

Need some assistance from the experts.

I have two queries below which I would like to merge on id.

Query 1

index=aws sourcetype=aws:cloudtrail eventName=RebootInstances | table _time userName sourceIPAddress requestParameters.instancesSet.items{}.instanceId
| rename requestParameters.instancesSet.items{}.instanceId as id

Query 2

index=aws sourcetype=aws:description source="us-east-2:ec2_instances" | table id private_ip_address

 

I would like the final table fields to be:

time  userName  sourceIPAddress    id   private_ip_address

 

Any assistance given will be appreciated.

Labels (1)
Tags (1)
0 Karma

bowesmana
SplunkTrust
SplunkTrust

Try this

(index=aws sourcetype=aws:cloudtrail eventName=RebootInstances) OR
(index=aws sourcetype=aws:description source="us-east-2:ec2_instances")
| eval id=coalesce(id, 'requestParameters.instancesSet.items{}.instanceId')
| eval _time=if(sourcetype="aws:cloudtrail", _time, null())
| fields _time userName sourceIPAddress private_ip_address id
| stats values(*) as * by id

 It searches both data sets.

  • id is then set as either id OR the instanceId in the coalesce statement.
  • _time is set to null if it is the description sourcetype, forcing _time to come from the cloudtrail event
  • fields are then limited to the ones specified
  • stats takes the values of all fields and effectively merges the data on the id field

Hope this helps

 

0 Karma

kamlesh_vaghela
SplunkTrust
SplunkTrust

@shrogers 

Can you please try this?

index=aws (sourcetype=aws:cloudtrail eventName=RebootInstances) OR (sourcetype=aws:description source="us-east-2:ec2_instances")
| fields _time userName sourceIPAddress requestParameters.instancesSet.items{}.instanceId id private_ip_address 
| rename requestParameters.instancesSet.items{}.instanceId as id
| stats latest(_time) as _time values(userName) as userName values(sourceIPAddress) as sourceIPAddress values(private_ip_address) as private_ip_address by id
| table time  userName  sourceIPAddress    id private_ip_address

 

KV 

0 Karma

shrogers
Loves-to-Learn Everything

Hi Kamlesh,

Thank you for your quick response.

Unfortunately, the time and private_id_address are not being populated.

 

Regards,

Sheldon

0 Karma
Got questions? Get answers!

Join the Splunk Community Slack to learn, troubleshoot, and make connections with fellow Splunk practitioners in real time!

Meet up IRL or virtually!

Join Splunk User Groups to connect and learn in-person by region or remotely by topic or industry.

Get Updates on the Splunk Community!

[Puzzles] Solve, Learn, Repeat: Tiling

This puzzle (first published here) is based on finding groups of tessellated tiles (inspired by floor tiles I ...

SOK it to Me: Top 3 Benefits of Using Splunk Operator on Kubernetes that’ll Make ...

    Thursday, July 9, 2026  |  11:00AM–12:00PM PDT Duration: 1 hour (includes Q&A) Managing can feel like a ...

Upgrade Prep for 10.4, Network Observability Deep Dives, and More from Splunk Lantern

Splunk Lantern is Splunk’s customer success center that provides practical guidance from Splunk experts on key ...