Splunk Search

Field extraction.

sandeepmakkena
Contributor

I have a raw event like this for each order, if a user buys two products of different units how can I tie each product to a specific quantity.

Items: [ [-]
{ [-]
commitCode: 2

deliveryType:

partNumber: P123
product: 3 Wireless Phone

promos: [ [-]
Auto dependency

]

qty: 10
resolvedDate: 04/04/04
shipMethodCode: A8
}

{ [-]
commitCode: 2

deliveryType: th
partNumber: P345

product: Pen

promos: [ [+]
]

qty: 1

resolvedDate: 04//04/04。

shipMethodCode: A8
}

I want to calculate the quantity of each product, but when I extracted qty and do stats count by PartNumber. It is giving incorrect events. Can someone help me how to work a way around that.
Thanks for your time.

0 Karma

poete
Builder

Hello @sandeepmakkena,

here is the way to go :

| makeresults 
| eval _raw="{\"Items\": [ {\"commitCode\": 2, \"deliveryType\":\"\",\"partNumber\": \"P123\",\"product\": \"3 Wireless Phone\",\"promos\": [ \"Auto dependency\"], \"qty\": 10,\"resolvedDate\": \"04/04/04\", \"shipMethodCode\": \"A8\"},
{ \"commitCode\": 2, \"deliveryType\": \"th\", \"partNumber\": \"P345\",\"product\": \"Pen\",\"promos\": [],\"qty\": 1,\"resolvedDate\": \"04/04/04\",\"shipMethodCode\": \"A8\"}]}"
| spath
| rename Items{}.qty as qty Items{}.product as product
| table qty product
| eval tmp=mvzip(product,qty)
| mvexpand tmp
| eval tmp = split(tmp,",") 
| eval product=mvindex(tmp,0)
| eval qty=mvindex(tmp,1)
| stats sum(qty) as nb by product
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!

Build resilience for the agentic era: Join us at Splunk Go San Jose

AI is changing how organizations build, operate, and secure digital services. As teams adopt AI agents and ...

Manage Edge Processor pipelines end to end with APIs

This guide uses the Data Management APIs to create an Edge Processor, onboard one instance, deploy a pipeline ...

Splunk Brings Proof of Control to Digital Asset Transfers

Digital assets now sit inside the core of financial services. HSBC launched its Tokenized Deposit Service in ...