Your use case might require only a subset of the data exported by Functionbeat, or you might need to enhance the exported data (for example, by adding metadata). Functionbeat provides a couple of options for filtering and enhancing exported data.
You can specify a
filter_pattern to match the
data you want to send. This approach may reduce execution costs because the
function running Functionbeat only executes if there is data that matches the
Another approach (the one described here) is to define processors.
You can define processors in your configuration to process events before they are sent to the configured output. The libbeat library provides processors for:
- reducing the number of exported fields
- enhancing events with additional metadata
- performing additional processing and decoding
Each processor receives an event, applies a defined action to the event, and returns the event. If you define a list of processors, they are executed in the order they are defined in the Functionbeat configuration file.
event -> processor 1 -> event1 -> processor 2 -> event2 ...