Splunk Search

How to apply the predict command with group by for multiple column values in one search ?


I want to apply the predict command on multiple column values with one search.

My table values are like this:

alt text

fetching table by applying timechart on a field which contains numeric values.

Tags (2)


If you have your columns in a 'somecategory' field and the values of the columns in a 'somecount' field that would allow you to do something like

... | timechart sum(somecount) BY somecategory | predict 10357 12745 13317


0 Karma


Sorry, you cannot do that. Predict has no "by" clause, like stats, which makes it impossible to make multiple predictions.


If you really need to, and don't really care for performance, you could use the map command to do something like:

 ... your search resulting in a list IDs (your column names) ... | map [search id=$id$ | timechart something | predict]

The map command will loop all of your column names (I guess they are IDs of something?) and execute predict for each of them. Then it will append the results of each run to the final results. Just remember this has quite the performance impact because you'll be starting a new search for each ID.

As an alternative you might consider user the R app, which is currently only available on github: https://github.com/rfsp/r. This app will allow you to run R commands in Splunk, and R is able to make multiple predictions at a time.

Get Updates on the Splunk Community!

Routing Data to Different Splunk Indexes in the OpenTelemetry Collector

This blog post is part of an ongoing series on OpenTelemetry. The OpenTelemetry project is the second largest ...

Getting Started with AIOps: Event Correlation Basics and Alert Storm Detection in ...

Getting Started with AIOps:Event Correlation Basics and Alert Storm Detection in Splunk IT Service ...

Register to Attend BSides SPL 2022 - It's all Happening October 18!

Join like-minded individuals for technical sessions on everything Splunk!  This is a community-led and run ...