Function

A function name that references another LogScale function to be used as a parameter within a higher-order function. When a function accepts another function as an argument, it actually accepts an entire pipeline, which can be a single function or a sequence of chained operations.

In simple cases, you can pass just a function name without parentheses or arguments as a parameter. In complex cases, you can pass a complete pipeline with multiple functions chained together. The receiving function will apply the referenced function or pipeline to its data, often repeatedly across array elements or grouped values.

For example, in array:eval(array=hosts, function=lower), the lower function is passed as a parameter to array:eval(), which applies it to each element in the hosts array. For more complex operations, you could pass a pipeline like function={lower() | replace("server", "host")} to apply multiple transformations.

Apply a Simple Function During Array Evaluation

When passing a simple function, you do not need to include parentheses, only the base function name.

logscale
array:eval(array=hosts[], function=lower)
Apply a Pipeline During Array Evaluation

For more complex transformations, pass an entire pipeline with multiple operations enclosed in braces.

logscale
array:eval(array=hosts[], function={lower() 
| replace("server", "host")})
Apply a Function During groupBy()
logscale
groupBy([balance],function=sum)

Functions using this Type: array:reduceRow(), defineTable(), dropEvent(), eval(), fieldset()