Command types - Splunk Documentation (2024)

There are six broad types for all of the search commands: distributable streaming, centralized streaming, transforming, generating, orchestrating and dataset processing. These types are not mutually exclusive. A command might be streaming or transforming, and also generating.

The following tables list the commands that fit into each of these types. For detailed explanations about each of the types, see Types of commands in the Search Manual.

Streaming commands

A streaming command operates on each event as the event is returned by a search.

  • A distributable streaming command runs on the indexer or the search head, depending on where in the search the command is invoked. Distributable streaming commands can be applied to subsets of indexed data in a parallel manner.
  • A centralized streaming command applies a transformation to each event returned by a search. Unlike distributable streaming commands, a centralized streaming command only works on the search head.
CommandNotes
addinfoDistributable streaming
addtotalsDistributable streaming. A transforming command when used to calculate column totals (not row totals).
arulesSome of the work is distributable streaming running on the indexer or the search head. The rest of the work is centralized streaming running on the search head.
autoregressCentralized streaming.
binStreaming if specified with the span argument. Otherwise a dataset processing command.
bucketdirDistributable streaming by default, but centralized streaming if the local setting specified for the command in the commands.conf file is set to true.
clusterStreaming in some modes.
convertDistributable streaming.
dedupDistributable streaming in a prededup phase. Centralized streaming after the individual indexers perform their own dedup and the results are returned to the search head from each indexer.

Using the sortby argument or specifying keepevents=true makes the dedup command a dataset processing command.

evalDistributable streaming.
extractDistributable streaming.
fieldformatDistributable streaming.
fieldsDistributable streaming.
fillnullDistributable streaming when a field-list is specified. A dataset processing command when no field-list is specified.
headCentralized streaming.
highlightDistributable streaming.
iconifyDistributable streaming.
iplocationDistributable streaming.
joinCentralized streaming, if there is a defined set of fields to join to. A dataset processing command when no field-list is specified.
lookupDistributable streaming when specified with local=false, which is the default. An orchestrating command when local=true.
makemvDistributable streaming.
multikvDistributable streaming.
mvexpandDistributable streaming.
nomvDistributable streaming.
rangemapDistributable streaming.
regexDistributable streaming.
reltimeDistributable streaming.
renameDistributable streaming.
replaceDistributable streaming.
rexDistributable streaming.
searchDistributable streaming if used further down the search pipeline. A generating command when it is the first command in the search.
spathDistributable streaming.
strcatDistributable streaming.
streamstatsCentralized streaming.
tagsDistributable streaming.
transactionCentralized streaming.
typerDistributable streaming.
whereDistributable streaming.
untableDistributable streaming.
xmlkvDistributable streaming.
xmlunescapeDistributable streaming by default, but centralized streaming if the local setting specified for the command in the commands.conf file is set to true.
xpathDistributable streaming.
xyseriesDistributable streaming if the argument grouped=false is specified, which is the default. Otherwise a transforming command.

Generating commands

A generating command either returns information or generates results. Some generating commands can return information from an index, a data model, a lookup, or a CSV file without any transformations to the information. Other generating commands generate results, usually for testing purposes.

CommandNotes
datamodelReport-generating
dbinspectReport-generating.
eventcountReport-generating.
fromCan be either report-generating or event-generating depending on the search or knowledge object that is referenced by the command.
gentimesEvent-generating.
inputcsvEvent-generating (centralized).
InputlookupEvent-generating (centralized) when append=false, which is the default.
loadjobEvent-generating (centralized).
makeresultsReport-generating.
metadataReport-generating. Although metadata fetches data from all peers, any command run after it runs only on the search head.
metasearchEvent-generating.
mstatsReport-generating, except when append=true is specified.
multisearchEvent-generating.
pivotReport-generating.
rest
searchEvent-generating (distributable) when the first command in the search, which is the default. A streaming (distributable) command if used later in the search pipeline.
searchtxnEvent-generating.
setEvent-generating.
tstatsReport-generating (distributable), except when prestats=true. When prestats=true, the tstats command is event-generating.

Transforming commands

A transforming command orders the results into a data table. The command "transforms" the specified cell values for each event into numerical values for statistical purposes.

In earlier versions of Splunk software, transforming commands were called reporting commands.

CommandNotes
addtotalsTransforming when used to calculate column totals (not row totals). A distributable streaming command when used to calculate row totals, which is the default.
anomalydetection
append
associate
chart
cofilter
contingency
history
makecontinuous
mvcombine
rare
stats
table
timechart
top
xyseriesTransforming if grouped=true. A streaming (distributable) command when grouped=false, which is the default setting.

Orchestrating commands

Orchestrating commands control some aspect of how a search is processed. They do not directly affect the final result set of the search. For example, you might apply an orchestrating command to a search to enable or disable a search optimization that helps the overall search complete faster.

CommandNotes
localop
lookupOnly becomes an orchestrating command when local=true. This forces the lookup command to run on the search head and not on any remote peers. A streaming (distributable) command when local=false, which is the default setting.
noop
redistribute
require

Dataset processing commands

A dataset processing command is a command that requires the entire dataset before the command can run. Some of these commands fit into other command types in specific situations or when specific arguments are used.

CommandNotes
anomalousvalueSome modes
anomalydetectionSome modes
appendSome modes
appendcols
appendpipe
binSome modes. A streaming command if the span argument is specified.
clusterSome modes
concurrency
datamodel
dedupUsing the sortby argument or specifying keepevents=true makes the dedup command a dataset processing command. Otherwise, dedup is a distributable streaming command in a prededup phase. Centralized streaming after the individual indexers perform their own dedup and the results are returned to the search head from each indexer.
eventstats
fieldsummary
fillnullWhen no field-list is specified, a dataset processing command. If a field-list is specified fillnull is a distributable streaming command.
fromSome modes
joinSome modes. A centralized streaming command when there is a defined set of fields to join to.
map
outlier
reverse
sort
tail
transactionSome modes
unionSome modes
Command types - Splunk Documentation (2024)
Top Articles
Latest Posts
Article information

Author: Twana Towne Ret

Last Updated:

Views: 6283

Rating: 4.3 / 5 (64 voted)

Reviews: 95% of readers found this page helpful

Author information

Name: Twana Towne Ret

Birthday: 1994-03-19

Address: Apt. 990 97439 Corwin Motorway, Port Eliseoburgh, NM 99144-2618

Phone: +5958753152963

Job: National Specialist

Hobby: Kayaking, Photography, Skydiving, Embroidery, Leather crafting, Orienteering, Cooking

Introduction: My name is Twana Towne Ret, I am a famous, talented, joyous, perfect, powerful, inquisitive, lovely person who loves writing and wants to share my knowledge and understanding with you.