Skip to main content
Version: Next

Ingestion

Set up Observables by creating a Splunk search and Alert Action to ingest data into AME. This page covers how to collect observable data and configure the ingestion process.

Write a Splunk search to gather asset or identity data, including required and optional fields for ingestion into AME Observables. Trigger this search with the Ingest Observables Alert Action.

Required and Optional Fields

FieldRequired?Description
uidYesUnique identifier (e.g., server01, user123) to merge data from multiple searches
criticalityNoCriticality level (e.g., high, low) to influence handling in AME; defaults to medium if unset
observable_stateNoState of the observable: existing (default) or removed (deletes it, bypassing age-out)
Other FieldsNoCustom data fields (e.g., ip, name, fqdn); only use letters, numbers, and underscores
index=assetdata sourcetype=cmdb
| eval uid=coalesce(hostname, fqdn, ip)
| table uid hostname ip fqdn

Set this search to trigger the Ingest Observables Alert Action, targeting a tenant's KV Store collection.

Alert Action

In Splunk, add the Ingest Observables Alert Action to your search and configure it:

FieldDescription
Tenant-UIDChoose the tenant (e.g., Default Tenant) to store data
Observable-TypeSelect Asset or Identity to categorize the data
ConfidenceSet a value (0–100) to prioritize this source; higher values overwrite existing data (see below)

Confidence Levels Explained

Confidence levels allow you to manage conflicts and merge attributes on observables when you have assets or identities appearing in multiple sources. It is not uncommon for an environment to have; CMDB data, LDAP data as well as inventory from vulnerability scanners in Splunk. Using confidence levels you can merge the attributes returned by these lists for an observable, merging the attributes accordingly.

  • Range: 0–100 (e.g., 90 for high-confidence sources).
  • Behavior: Higher confidence overwrites existing fields. If confidence matches, the new value wins if the source name alphabetically follows the existing one (e.g., SourceB beats SourceA).

Example

  • Results for one asset from three different sources:
Search NameUIDHostCountryOSMemoryCPU CoresIPConfidence
Network Scannerserver01server01USA(empty)(empty)(empty)192.168.1.1090
CMDBserver01server01(empty)Windows 1116GB8192.168.1.1170
Hardware Monitorserver01server01CanadaWindows 1032GB4(empty)50
  • Merged Results for Asset uid = "server01":
FieldValueConfidenceSourceOrigin Type
uidserver0190Network Scannersearch
hostserver0190Network Scannersearch
countryUSA90Network Scannersearch
osWindows 1170CMDBsearch
memory16GB70CMDBsearch
cpu_cores870CMDBsearch
ip192.168.1.1090Network Scannersearch
criticalityhigh90Network Scannersearch
observable_stateexisting90Network Scannersearch
note

Avoid identical confidence values across sources to prevent unexpected overwrites.

Next Steps