Splunk Search

Using eval to Add Field for top Result?

splunkyphil
Engager

I need to create a new field to assign to the top results of a command using eval

Obviously this syntax doesn't work, so I'm looking for the correct query:

source="tutorialdata.zip*" | eval popular = top limit=5 itemId | stats count(action) by popular, action

Basically I only need the action stats of the top 5 itemId results of the following:

Screen Shot 2022-10-23 at 7.43.46 PM.png

 

Sorry for the n00b question; I am just getting started with Splunk. Thanks for your time!

Labels (1)
0 Karma
1 Solution

bowesmana
SplunkTrust
SplunkTrust

Is this what you're after?

 

source="tutorialdata.zip*"
| eval X_{action}=action
| stats count as total count(X_*) as X_* by itemId
| sort - total
| head 5
| rename X_* as *
| fields - total

 

That will give you 5 rows of the most frequent itemId and then each column is a count of actions

Note the X_ prefix to the new field created is to allow the use of wildcards in the stats command to only collect the fields you're interested in.

You could also replace the eval/stats with 

| eval X_{action}=1
| stats count as total sum(X_*) as X_* by itemId

which may be slightly more efficient

View solution in original post

bowesmana
SplunkTrust
SplunkTrust

Is this what you're after?

 

source="tutorialdata.zip*"
| eval X_{action}=action
| stats count as total count(X_*) as X_* by itemId
| sort - total
| head 5
| rename X_* as *
| fields - total

 

That will give you 5 rows of the most frequent itemId and then each column is a count of actions

Note the X_ prefix to the new field created is to allow the use of wildcards in the stats command to only collect the fields you're interested in.

You could also replace the eval/stats with 

| eval X_{action}=1
| stats count as total sum(X_*) as X_* by itemId

which may be slightly more efficient

splunkyphil
Engager

This works; thank you kindly!

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: Character substitutions with Regular Expressions

This challenge was first posted on Slack #puzzles channelFor BORE at .conf23, we had a puzzle question which ...

Splunk Community Badges!

  Hey everyone! Ready to earn some serious bragging rights in the community? Along with our existing badges ...

[Puzzles] Solve, Learn, Repeat: Matching cron expressions

This puzzle (first published here) is based on matching timestamps to cron expressions.All the timestamps ...