Splunk Search

How to compare two fields from two indexes and display data when there is a match?

ttchorz
Path Finder

Hi,

I want to compare two fields from two indexes and display data when there is a match.

indexA contains fields plugin_id, plugin_name
indexB contains fields id, solution

I am trying to display plugin_id, plugin_name, solution FOR EVERY RECORD that meets plugin_id=id

So far I have tried these searches but no luck:

(index=indexA OR index=indexB) plugin_id="*" id="*" | where like(plugin_id, id) | table plugin_id, plugin_name, solution

and

(index=indexA OR index=indexB) plugin_id="*" id="*" | where plugin_id=id | table plugin_id, plugin_name, solution
0 Karma

Jeremiah
Motivator

This search should combine the events from the two indexes together by their ID fields, then finds only entries where both id fields are present.

 (index=indexA plugin_id=*) OR (index=indexB id=*) | eval match_id=coalesce(id,plugin_id) | stats values(*) AS * by match_id | search plugin_id=* id=*
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!

A Four-Part Event Series: Full Stack Observability For the AI Era

As AI reshapes applications, infrastructure, and the way teams operate, the traditional boundaries of ...

SOC4Kafka - New Kafka Connector Powered by OpenTelemetry

The new SOC4Kafka connector, built on OpenTelemetry, enables the collection of Kafka messages and forwards ...

Event Series: Level up your SOC: Advancing with Splunk Enterprise Security

AI has fundamentally raised the stakes for security operations, and this three-part series is your guide to ...